Buradasınız

24-C#-19 Döngüler ve For Döngüsü

For Döngüsü

Bir program parçacığının belirlenen kodlarının tekrar ettirilmesi için kullanılan kod yapısındır. Örneğin 10 öğrenci bilgisi girişi yapılması, klavyeden x tuşuna basana kadar devam ettirme gibi. Başlangıç değeri ve bitiş değeri belli olan ya da belirlenen koşul gerçekleştiği sürece devam eden döngüler bulunmaktadır. 4 tip döngü bulunmaktadır.  

Döngü

Açıklama

for

Başlangıcı ve bitişi belli olan döngü yapısındır.

while

Belirli bir koşul gerçekleştiği sürece devam eden döngü türüdür.

do-while

Koşul ne olursa olsun bir kere döngünün işlem gördüğü ve koşula bağlı olarak döngüyü devam ettiren yapıdır.

foreach

Diziler için kullanılan döngüdür.

 

1)  For Döngüsü

Başlangıcı ve bitişi belli olan döngü yapısındır. Başlangıç değeri , koşul ve artım değeri içermektedir. Aşağıdaki gibi kullanılmaktadır.

for (başlangıç ; koşul ; artım)
{

// döngü içinde kullanılacak işlemler.

}

1) Başlangıç: Döngü için kullanılacak olan değişkenin ilk alacağı değerdir.

2) Koşul: Döngünün devam etmesi için gerekli olan koşuldur. Koşul içinde başlangıç içinde kullanılan değişken kullanılmalıdır.

3) Artım: Döngü için kullanılan değişken değerinin artırtılmasını gerçekleştirilen bölümdür.

For Döngüsü Nasıl Çalışır ?

For döngü bloğuna çalışmaya başladığında ilk olarak Başlangıç bölümü, sonra Koşul kısmı bölümüne bakılır koşul doğru ise döngü içindeki işlemler yapılır. İşlemler yapıldıktan sonra döngü başına gelinir ve önce Artım bölümü, sonra Koşul kısmı bölümüne bakılır koşul doğru ise döngü içindeki işlemler yapılır. bu şekilde koşul doğru olmayana kadar devam eder. Yani aşağıdaki sıra izlenerek for döngüsü çalışır.

1) Başlangıç ->Koşul-> İşlemler
2) Artım ->Koşul -> İşlemler
3) Artım ->Koşul ->İşlemler
....
....

 

Örnek-1: 1’den 10’a kadar olan sayıları ekrana yazdırınız.

for (byte i = 1; i <= 10; i++)
{
    Console.WriteLine(i);
}
Console.ReadKey();

for döngüsü örnekleri

Yukarıdaki kodu incelediğimizde;

  • byte i=1; Döngü değişkenimize (i)  başlangıç değerini 1 olarak atandı. Döngü değişkeni üst kısımda tanımlana bilirdi burada değeri verilebilirdi.
  • i<=10; Döngü koşulu belirlendi buradaki koşul doğru olduğu süre içinde döngü devam eder. i değişkeni 10’a eşit ve küçük olduğu sürece devam etmesi belirtildi.
  • i++ ; i değişkenimizi döngümüzün her dönüşünde 1 arttıracağımızı belirttik.

Örnek-2: 0 ile 20 arasında çift sayıları ekrana alt alta yazdırınız.

for (byte i = 0; i <= 20; i+=2)
{
    Console.WriteLine(i);
}
Console.ReadKey();

for ile çift sayı yazdırma

Örnek-3: 1 ile 20 arasındaki tek sayıları ekrana alt alta yazdırınız.

for (byte i = 1; i <= 20; i+=2)
{
    Console.WriteLine(i);
}
Console.ReadKey();

for döngüsü ile tek sayıları yazdırma

Üsteki iki  örneğimizi aşağıdaki gibi de yapabiliriz.

for (byte i = 0; i <= 20; i++)
{
    if (i % 2 == 0)  Console.WriteLine(i); //Çift sayı için bu satır
    if (i % 2 == 1)  Console.WriteLine(i); //Tek sayı için bu satır
}
Console.ReadKey();

Nasıl Döngü Kurmalıyım?

Aşağıdaki örnekleri inceleyerek ne durumlarda nasıl döngü kurmalıyız bunları inceleyelim.

Örnek-4: Klavyeden girilen sayıdan 100'e kadar döngüsünü nasıl kurarım.

Önce klavyeden sayıyı almalıyım ve sonra döngüde başlangıç değerine eşitlemeliyim.

Console.Write("Bir Sayı Giriniz: ");
int sayi = int.Parse(Console.ReadLine());
for (int i = sayi; i < 100; i++)//sayi'dan başlayarak 100'e kadar
{

//İşlemler

}

Örnek-5: Klavyeden girilen birinci sayıdan, ikinci sayıya kadar döngüsünü nasıl kurarım.

Önce birinci sayıyı, sonra ikinci sayıyı almalıyım.birinci sayıyı döngünün başlangıcına eşitlemeli diğer sayıyı koşula yazmalıyım.

Console.Write("Birinci Sayı Giriniz: ");
int sayi1 = int.Parse(Console.ReadLine());
Console.Write("İkinci Sayı Giriniz: ");
int sayi2 = int.Parse(Console.ReadLine());
for (int i = sayi1; i < sayi2; i++)
{

//İşlemler

}

Örnek-6: 10'dan  500'e kadar birer artarak döngüsünü nasıl kurarım.

for (int i = 10; i <=500; i++)
{

//İşlemler

}

 

Örnek-7: 1’den başlayarak klavyeden girilen sayı kadar döngüsünü nasıl kurarım.

int s;
Console.Write("Bir sayı giriniz: ");
s = int.Parse(Console.ReadLine());
for (int i = 1; i <=s; i++)
{

    //İşlemler

}

Örnek-8: 1’den başlayarak klavyeden girilen sayı kadar ekrana bilisimokulu.net yazdıran programı yapınız.

Console.Write("Bir Sayı Giriniz: ");
int s = int.Parse(Console.ReadLine());
for (int i = 1; i <= s; i++)
     Console.WriteLine("{0}. bilisimokulu.net", i);
Console.ReadKey();

c# for döngü örnekleri

Örnek-9: 1'den başlayarak, 1 ile 20 arasında tutulan rastgele sayı kadar ekrana bilisimokulu.net yazdıran programı yapınız.

Random r = new Random();
int sayi = r.Next(1, 21);
for (int i = 1; i <= sayi; i++)
     Console.WriteLine("{0}. bilisimokulu.net", i);
Console.ReadKey();

 c# for döngü örnekleri

For döngüleri ileriye doğru sayabildiği gibi geriye dönük sayma işlemlerinde de kullanılırlar.

//10'dan başlayarak geriye doğru 0 olana kadar
//Dikkat edilirse koşulda döngü değişkeni i>=0 (i değeri 0'dan büyük yada eşit olduğu sürece)
//Artım da i-- kullanılmış yani bir eksiltilir.
for(int i=10; i>=0;i--)
{

 
}

Örnek-10: 10’dan 0’a geriye doğru sayan ve sayıları ekrana yan yana araya – koyarak yazdıran C# programı yapınız.
10-9-8-7-6-5-4-3-2-1-0

for (sbyte i = 10; i >= 0; i--)
{
     if (i!=0)
          Console.Write(i + "-");//bu şekilde yer tutucu ile yazılabilirdi ("{0}-",i);
     else
          Console.Write(i);
}
Console.ReadKey();

c# for örnekleri

 
Ödev1: Klavyeden girilecek olan 2 sayı arasında kalan sayıları arasında kaç tane çift ve tek sayı olduğunu sayan programı yapınız. Not: ilk girilen sayı küçük, ikinci büyük olacak. Bu duruma uymazsa işlem yapılamaz yazdırılacak.
c# For döngüsü örnek soru

Ödev2: Klavyeden girilen 10 sayıdan 25 üstünde olanları toplamını ve kaç adet olduğunu bulup, ekrana yazdıran programı yapınız.


c# for döngüsü örnek soru

 

Örnek-11: 100 ile 500 arasında 3 ve 5’e tam bölünen sayıları yan yana yazdıran programı yapınız.

for (int i = 100; i <=500; i++) 
{     
     if ((i%3==0)&&(i%5==0))     
     {         
         Console.Write("{0}",i);     
     } 
} 
Console.ReadKey();

c# fır döngüsü örnek soru

Örnek-12: Klavyeden iki sayı girilerek birinci sayı küçük ikinci sayı büyük olacak şekilde,  küçük sayıdan başlayarak büyük sayıya kadar olan sayıları sıralayan programı yazınız.

int s1, s2;
Console.Write("Başlangıç sayısını giriniz: ");
s1 = int.Parse(Console.ReadLine());
Console.Write("Bitiş sayısını giriniz: ");
s2 = int.Parse(Console.ReadLine());
for (int i = s1; i <= s2; i++)
{
    Console.WriteLine(i);
}
Console.ReadKey();
c# for döngü örnekleri
 

Örnek-13: Klavyeden bir sayı girilecek girilen sayı TEK ise 1’den girilen sayıya kadar tek sayıları, girilen sayı ÇİFT ise  1’den girilen sayıya kadar çift sayıları ekrana yazdırınız.

int sayi;
Console.Write("Bir sayı gir: ");
sayi = int.Parse(Console.ReadLine());
for (int i = 1; i <= sayi; i++)
{
    //if (sayi % 2 == 0)
    //{
    //    if (i % 2 == 0) Console.WriteLine(i);
    //}
    //else
    //{
    //    if (i % 2 == 1) Console.WriteLine(i);
    //}
    if ((sayi % 2 == 0) && (i % 2 == 0)) Console.WriteLine(i);
    if ((sayi % 2 == 1) && (i % 2 == 1)) Console.WriteLine(i);
}
Console.ReadKey();

c# for örnekleri

Örnek-14: Klavyeden girilen sayıya kadar olan sayıları toplamını ve çarpımlarını ekrana yazdıran C# programını yazınız.

Bir sayı giriniz: 5
Toplam: 15
Çarımları :120

int sayi, toplam = 0, carpim = 1;
Console.Write("Bir sayı giriniz");
sayi = int.Parse(Console.ReadLine());
for (int i = 1; i <= sayi; i++)
{
    toplam += i;
    carpim *= i;
}
Console.WriteLine("Toplam: {0}", toplam);
Console.WriteLine("Çarpımları: {0}", carpim);
Console.ReadKey();

Örnek-15: 1’den 100’e kadar olan sayıları teklerin toplamı ve çiftlerin toplamını ayrı hesaplayıp, toplamları ekrana yazdıran programı yapınız.

int cift = 0, tek = 0;
for (int i = 0; i <= 100; i++)
{
    if (i % 2 == 0)
        cift += i;
    else
        tek += i;
}
Console.WriteLine("Çiftlerin Toplamı: {0}", cift);
Console.WriteLine("Teklerin Toplamı: {0}", tek);
Console.ReadKey();

Örnek-16: 1’den girilen sayıya kadar, arasında kaç tane 5’e bölünebilen sayı olduğunu bulan ekrana yazdıran programı yapınız.

int sayac = 0;
Console.Write("Bir Sayı Giriniz: ");
int sayi = int.Parse(Console.ReadLine());
for (int i = 1; i <= sayi; i++)
{
    if (i % 5 == 0) sayac++;
}
Console.WriteLine("5'e bölünen sayısı: {0}", sayac);
Console.ReadKey();
 

Yorumlar

uygar öztürk  kullanıcısının resmi
uygar öztürk

ÇOK YANLIŞ BİR KODLAMA BİLGİSAYARA HAYKIRI BİR KODLAMA

kader kullanıcısının resmi
kader

arkadaşlar Do-ehile döngüsü ile 1 den 20 ye kadar olan tek sayıları yazar(script kodu ile)

recep kullanıcısının resmi
recep

script kodları dediğinizden javascript kodları anladım

c# kodları aşağıdaki gibi 

int i = 0;
do
  {
      if (i % 2 == 1) 
      Console.WriteLine(i);
      i++;
   } 
while (i<=20);
Console.ReadKey();

javascript kodları aşağıdaki gibi

<script language=javascript type="text/javascript">
	var i = 0;
	do
    {
		if (i % 2 == 1) 
			document.writeln(i);
        i++;
    } 
	while (i<=20);       

</script>

 

Apdullah kullanıcısının resmi
Apdullah

1. Klavyeden Sayı Girişi Yapılmaktadır.Her Sayı Girişinden Sonra "Devam Edecekmisiniz" şeklinde bir soru soran ve verilen cevap "Evet" [E/e] olduğu sürece sayı girişine devam eden değilse girilen sayıların en büyüğünü ekrana yazdıran program c# diliyle visual studioda olacak yardımcı olursanız sevinirim 28'i son gün

yasin cesur kullanıcısının resmi
yasin cesur

Örnek-16: 1’den girilen sayıya kadar, arasında kaç tane 5’e bölünebilen sayı olduğunu bulan ekrana yazdıran programı yapınız. sorusunu c++ da nasıl yazabiliri yardımcı olabilirmisiniz

Berke kullanıcısının resmi
Berke

Klavyeden girilen iki sayı arasındaki çift sayıları ekrana yazdıran program acilen lazım

ANıl kullanıcısının resmi
ANıl

Dışarıdan girilen n adet sayını 5 ile bölünebilenleri toplamı ve adeti , 3 ile bölünebilenleri toplamı ve adeti,                    2 ile bölünebilenleri toplamı ve adeti C# Programında yapılışı ACİLL

Sedat kullanıcısının resmi
Sedat

4 er 4 er 200e kadar sayacak ve saydığı rakamları topayarak sonucu ekrana yazdıran program lütfen çok acil yarın sınav var

Yorum ekle

Konuyla İlgili Yazılar

c# dersleri

38-C# Dizilerde Arama (IndexOf)

Dizilerde Arama Dizilerde arama işlemi dizi içindeki tüm elemanların istenen elemanla karşılaştırılarak olup olmadığını kontrol edilmesidir. Bir örnek ile... devamı...