400 likes | 648 Views
Görsel C # ile Windows Programlama Güz 200 9 ( 4 . Hafta). Kontrol Y apıları – Seçim Deyimleri. if Deyimi Tek seçim if…else Deyimi Çift seçim switch Deyimi Birden fazla seçim. Kontrol Y apıları – Tekrarlama Deyimleri.
E N D
Görsel C# ile Windows Programlama Güz 2009 (4. Hafta)
Kontrol Yapıları – Seçim Deyimleri • ifDeyimi • Tek seçim • if…elseDeyimi • Çift seçim • switchDeyimi • Birden fazla seçim
Kontrol Yapıları – Tekrarlama Deyimleri • Döngüye-devam-koşulu doğru olduğu müddetçe belirli işlemleri tekrar eden yapılardır. • whileDeyimi • forDeyimi • foreachDeyimi
GradeBook.cs (1 of 3)
GradeBook.cs (2 of 3)
GradeBook.cs (3 of 3)
GradeBookTest.cs int veri tipli bir değişken içinde saklananortalama !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
GradeBook.cs (1 of 3)
GradeBook.cs (2 of 3)
GradeBook.cs (3 of 3) Calculate average grade using (double) to perform explicit conversion Display average grade Display “No grades were entered” message
Ondalıklı Sayıları Formatlı Yazdırma • double number = 3.1234; • System.Console.WriteLine(“OUTPUT: {0:F3}”, number); • OUTPUT: 3.123
Artırma ve Azaltma Operatörleri ++ Artırma Operatörü (increment) -- Azaltma Operatörü (decrement) ++aÖnce artır (Pre-increment) Operatörü (a değişkenini bir artır ve a değişkeninin yeni değerini kullan.) y=++x; ise x=x+1 ve sonra y=x a++Sonra artır (Post-increment) Operatörü (a değiskeninin mevcut değerini kullan ve sonra değerinibir artır.) y=x++; ise y=x ve sonra x=x+1 --bÖnce azalt (Pre-decrement) Operatörü b--Sonra azalt (Post-decrement) Operatörü
4 Değişik 1 Artırma Deyimi a=a+1; ya da a+=1; ya da a++; ya da ++a;
forTekrarlama Deyimi for (initialization; loopContinuationCondition; increment ) statement; initialization;while (loopContinuationCondition ) {statement;increment;}
ForCounter.cs Increment for counter Control-variable name is counter Control-variable initial value is 1 Condition tests for counter’s final value
For Döngüsü Örnekleri • Vary control variable from 1 to 100 in increments of 1 • for ( int i = 1; i <= 100; i++ ) • Vary control variable from 100 to 1 in increments of –1 • for( int i = 100; i >= 1; i-- ) • Vary control variable from 7 to 77 in increments of 7 • for( int i = 7; i <= 77; i += 7 ) • Vary control variable from 20 to 2 in decrements of -2 • for( int i = 20; i >= 2; i -= 2 ) • Vary control variable over the sequence: 2, 5, 8, 11, 14, 17, 20 • for( int i = 2; i <= 20; i += 3 ) • Vary control variable over the sequence: 99, 88, 77, 66, 55, 44, 33, 22, 11, 0 • for( int i = 99; i >= 0; i -= 11 )
Sum.cs increment number by 2 each iteration
Second string is right justified and displayed with a field width of 20 Interest.cs (1 of 2)
amountis displayed right justified in currency format Calculate amount with for statement Interest.cs (2 of 2)
Çıktıyı Formatlama • {1, 20} • Alan genişliği virgülden sonra yazılır. • Varsayılan (default) olarak sağa dayalıdır. • Sola dayalı yapmak için - kullanılır.
breakvecontinueDeyimleri • Döngü içlerinde programın akış kontrolünü değiştirmek için bu deyimleri kullanırız. • “break” deyimi while, for veya switch yapılarının içinde kullanıldığında bu yapılar ani bir şekilde sonlandırılır. • “continue” deyimi sadece fordöngüsü içerisinde kullanıldığında bu deyimden sonra gelen komutlar atlanır ve döngü bir sonraki iterasyona başlar.
Loop 10 times BreakTest.cs Exit for statement (break) when count equals 5
Loop 10 times ContinueTest.cs Skip line 14 and proceed to line 9 when count equals 5
switchÇoklu Seçim Deyimi • Hercase mutlaka birbreakdeyimi ile sonlanmalıdır. • case lerden hiçbirinin işletilmediği durumları karşılamak üzere bir defaultdurumu olmalıdır.
GradeBook.cs (1 of 5) Variables to be incremented determined by the switch statement
GradeBook.cs (2 of 5)
Display prompt GradeBook.cs (3 of 5) Loop condition: if there is more data input
GradeBook.cs (4 of 5) (grade/10 ) is the controlling expression switch statement determines which case label to execute, depending on controlling expression defaultcase for grade less than 60
GradeBook.cs (5 of 5) Prints out results
Call GradeBookpublic methods to count grades GradeBookTest.cs (1 of 2)
GradeBookTest.cs (2 of 2)
Sonsuz Döngü publicstaticvoid Main( string[ ] args ) { while(true) //sonsuz dongu { ………. if(…….) //kullanici dogru tahminde bulunduysa break; } }
Sonsuz Döngü publicstaticvoid Main( string[ ] args ) { bool oyunaDevam=true; while(oyunaDevam) //sonsuz dongu { ………. if(…….) //kullanici dogru tahminde bulunduysa oyunaDevam=false; } }
SINAV HAZIRLIK SORULARI Kullanıcıdan klavye yoluyla aldığı bir sayının bölenlerini veya çarpanlarını bularak ekrana basan bir C# programı yazınız. Kullanıcıdan klavye yoluyla aldığı bir sayının ASAL sayı olup olmadığını belirleyen ve eğer ASAL sayı ise ASAL çarpanlarını ekrana basan bir C# programı yazınız. Kullanıcıdan klavye yoluyla aldığı belirli bir aralık içerisindeki bütün ASAL sayıları ve bu ASAL sayıların sayısını ekrana basab bir C# programı yazınız. Kullanıcıdan klavye yoluyla aldığı iki sayının aralarında ASAL olup olmadığını bulan bir C# programı yazınız. (4 ve 15 aralarında asaldır örneğin.) Kullanıcıdan klavye yoluyla aldığı 3 sayının En Büyük Ortak Bölenini (EBOB) bulacak bir C# programı yazınız. Kullanıcıdan klavye yoluyla aldığı 3 sayının En Küçük Ortak Katını (EKOK) bulacak bir C# programı yazınız. (15 sayısının katları: 15 30 45 60 75 ve 20 sayısının katları: 20 40 60tır. Dolayısıyla EKOK(15,20)=60 tır.) Kullanıcıdan klavye yoluyla aldığı 2 rasyonel sayıyı toplayıp en sade haliyle ekrana basacak birC# programı yazınız.