Döngüler
static void Main(string[] args)
{ //while döngüsü
int i = 40;
while (i > 10)
{
Console.Write("Ok");
break;
}
// do-while döngüsü
do
{
Console.Write("OOKK");
break;
}
while (true);
// for döngüsü
for (i = 0; i < 10; i++)
{
Console.WriteLine("OK!");
}
Console.Read();
}
// 1 den 100 e kadar olan sayılardan çift olanları ekranda gösteriniz;
for (int i = 0; i < 100; i++)
{
if(i%2==0)
{
Console.WriteLine(i);
}
}
Console.Read();
int sum = 0;
// 1 den 100 e kadar olan sayılardan çift olanların toplamını ekranda gösteriniz;
for (int i = 0; i <=100; i++)
{
if(i%2==0)
{
sum += i;
}
}
Console.WriteLine(sum);
While Döngüsü
Console.Read();
while(koşul){komut1;komut2;} |
---|
While döngüsü öncelikle (koşul) ifadesi kontrol edilir. Eğer ifade True _sonucunu döndürüyorsa döngü blokları içerisindeki komutlar çalıştırılır. Ve son komuttan sonra tekrar _While _koşulu kontrol edilir. Bu koşul False _olana kadar döngü komutları işletilmeye devam eder.
Örnek
1 ile 10 arasındaki tek sayıları ekrana alt alta While döngüsü ile yazdıran programı yazınız.
int say = 1;
while (say <= 10)
{
Console.WriteLine(say);
say++;
}
Console.Read();
Do While Döngüsü
C# do While döngüsü, şimdiye kadar gördüğümüz döngülerde önce koşula bakılıyor, eğer koşul sağlanırsa döngü içindeki komutlar çalıştırılıyordu. Ancak bazen döngüdeki komutların koşul sağlanmasa da en az bir kez çalıştırılmasını isteyebiliriz. Bu gibi durumlar için C#’ta do_while _döngüsü vardır.
do
komut;
while(koşul)
int say = 1;
do
{
Console.WriteLine(say);
say++;
} while (say <= 10);
Console.Read();
Örnek
Vergi tablosuna göre ekrandan okunan gelirin vergisini hesaplayan program
class MainClass
{
public static void Main(string[] args)
{
Console.WriteLine("ifElseBreakLoops");
///vergi tablosu
///
/// 0-5k -> %10
/// 5k-10k -> %30
/// 10k+ -> %75
double vergi = 0.0;
// Console.WriteLine("Lütfen 1. kisinin gelirini giriniz");
//int gelir = 1000;
int sayac = 1;
//for (int i = 0; i < 100; i++)
//while(gelir>0)
while (true)
{
/// string input = Console.ReadLine();
/// int gelir = int.Parse(input);
Console.WriteLine($"Lütfen {sayac} kisinin gelirini giriniz");
int gelir = int.Parse(Console.ReadLine());
if (gelir<=0)
{
Console.WriteLine("hatalı giriş");
break;
}
if (gelir < 5000)
{
vergi = (double)gelir * 0.1;
}
else if ( gelir < 10000)
{
vergi = (double)gelir * 0.3;
}
else if (gelir >= 10000)
{
vergi = (double)gelir * 0.75;
}
/*else
{
Console.Write("hatalı giris");
}*/
Console.WriteLine($"{sayac}. kisinin vergisi: {vergi}");
sayac++;
}
Console.Read();
}
}