BİLİŞİM TEKNOLOJİLERİ KONTROL DEYİMLERİ

  • Published on
    31-Jan-2017

  • View
    216

  • Download
    0

Embed Size (px)

Transcript

  • T.C.MLL ETM BAKANLII

    BLM TEKNOLOJLER

    KONTROL DEYMLER482BK0124

    Ankara, 2011

  • Bu modl, mesleki ve teknik eitim okul/kurumlarnda uygulanan ereveretim Programlarnda yer alan yeterlikleri kazandrmaya ynelik olarakrencilere rehberlik etmek amacyla hazrlanm bireysel renmemateryalidir.

    Mill Eitim Bakanlnca cretsiz olarak verilmitir.

    PARA LE SATILMAZ.

  • i

    AIKLAMALAR ...........................................................................................................................iiGR ..............................................................................................................................................1RENME FAALYET1 ...........................................................................................................31. KARAR KONTROL DEYMLER ............................................................................................3

    1.1. If-Else Deyimi .....................................................................................................................31.2. -e If fadesi ....................................................................................................................71.3. Switch-Case Deyimi ..........................................................................................................12UYGULAMA FAALYET .....................................................................................................19LME VE DEERLENDRME ...........................................................................................20

    RENME FAALYET2 .........................................................................................................212. DNG DEYMLER .............................................................................................................21

    2.1. Dng eitleri ..................................................................................................................212.1.1. For Dngs...............................................................................................................212.1.2. While Dngs...........................................................................................................262.1.3. DoWhile Dngs..................................................................................................282.1.4. Foreach Dngs .......................................................................................................29

    2.2. Jump (Dallanma Atlama) Komutlar ..............................................................................302.2.1. Break Anahtar Szc..............................................................................................302.2.2. Continue Anahtar Szc.........................................................................................322.2.3. Goto Anahtar Szc ...............................................................................................332.2.4. Return Anahtar Szc ............................................................................................33

    UYGULAMA FAALYET .....................................................................................................34LME VE DEERLENDRME ...........................................................................................35

    RENME FAALYET3 .........................................................................................................363. DZLER ...................................................................................................................................36

    3.1. Dizi Oluturma...................................................................................................................363.2. Diziye Deer Girme...........................................................................................................383.3. Diziyi Yazdrma.................................................................................................................433.4. Baz Dizi zellikleri ve Metotlar .....................................................................................44

    3.4.1. Length ........................................................................................................................443.4.2. Clear(dizi,baslangic,adet)...........................................................................................453.4.3. Reverse(Dizi) .............................................................................................................473.4.4. Sort(Dizi) ...................................................................................................................483.4.5. IndexOf(Dizi,arananDeger)........................................................................................49

    3.5. Dinamik Diziler .................................................................................................................513.5.1. Capacity zellii:.......................................................................................................523.5.2. Count zellii: ...........................................................................................................523.5.3. Add Metodu: ..............................................................................................................523.5.4. Insert Metodu: ............................................................................................................533.5.5. Remove Metodu:........................................................................................................553.5.6. RemoveAt Metodu:....................................................................................................563.5.7. Sort Metodu:...............................................................................................................57

    UYGULAMA FAALYET .....................................................................................................58LME VE DEERLENDRME ...........................................................................................59

    MODL DEERLENDRME .....................................................................................................60CEVAP ANAHTARLARI............................................................................................................61KAYNAKA................................................................................................................................62

    NDEKLER

  • ii

    KOD 482BK0124ALAN Biliim TeknolojileriDAL/MESLEK Alan OrtakMODLN ADI Kontrol Deyimleri

    MODLN TANIMIBu modl programlama altyapsn oluturan kontroldeyimleri kavramlarnn renildii bir renmemateryalidir.

    SRE 40/32N KOUL Bu modln n koulu yoktur.YETERLK Kontrol deyimlerini kullanmak.

    MODLN AMACI

    Genel AmaBu modl ile gerekli ortam salandnda; temelprogramlama ilemlerinde kontrol deyimlerinikullanabilecektir.Amalar

    1. Karar kontrol deyimlerini kullanabileceksiniz.2. Dng kontrollerini kullanabileceksiniz.3. Dizilerle alabileceksiniz.

    ETM RETMORTAMLARI VEDONANIMLARI

    Ortam: Bilgisayar laboratuarDonanm: Bilgisayar, Programlama Yazlm

    LME VEDEERLENDRME

    Modl iinde yer alan her renme faaliyetinden sonraverilen lme aralar ile kendinizi deerlendireceksiniz.retmen modl sonunda lme arac (oktan semelitest, doru-yanl testi, boluk doldurma vb.) kullanarakmodl uygulamalar ile kazandnz bilgi ve becerilerilerek sizi deerlendirecektir.

    AIKLAMALAR

  • 1

    Sevgili renci,

    Programlama Temelleri dersinin bu modlnde sizler, programlamann temel yaptalarndan Ak Kontrol Deyimleri ile reneceksiniz.

    Programcla ilk admlarnz bu kontrol deyimleriyle gerekletireceksiniz.

    Kontrol deyimleri programlarmzn ileyiinde eitli kontrol ve ak ilemlerinigerekletirmenizi salar.

    Bu modl ile if, switch, for, while, do-while, foreach ve dizi yaplarn renip, herkonu sonunda bolca rneklerle konular pekitirmeniz salanacaktr.

    GR

  • 2

  • 3

    RENME FAALYET1

    Bu modl ile karar kontrol deyimlerini kullanabilecek ve programlarnzdauygulayabileceksiniz.

    Bu faaliyet ncesinde hazrlk amal aada belirtilen aratrma faaliyetleriniyapmalsnz

    Gnlk hayatta bir olayn gereklemesi iin nceden istenilen/beklenilenkoullara verilebilecek rnekleri dnnz.

    Evden dar kmadan nce havann durumuna gre zerimize alacamzkyafetlere nasl karar veririz? Aratrnz.

    Bir kiinin askere gidebilmesi iin gerekli artlar nelerdir? Aratrnz.

    1. KARAR KONTROL DEYMLERProgram yazarken baz noktalarda belirli koullar altnda gereklemesini istenilen

    durumlar olabilir. Bu blmde anlatlan if-else ve switch deyimleri ile bu tr kapsamlprogramlar gelitirilebilir.

    Genel anlamda programlama dilinde kullanlan koul yaplar iki eittir. Bunlar; if-else deyimi switch deyimidir.

    1.1. If-Else Deyimi

    If deyimi bir programn akn kontrol etmek iin kullanlr. Belirli bir arta greyaplmas istenilen ilemler, If-Else deyimi kullanlarak gerekletirilir.

    If-Else deyiminin kullanm ve ak diyagramlar ile gsterimi ise u ekildedir.

    Kullanm:

    if(koul){Koul doruysa yaplacak ilemler;

    }else{Koul yanlsa yaplacak ilemler;

    }

    RENME FAALYET1

    ARATIRMA

    AMA

  • 4

    ekil 0.1: If-Else Deyimi Ak Diyagram

    Yukardaki diyagramdan da grlecei zere, programn ak If deyiminin olduusatra geldiinde parantezler ierisindeki KOUL ifadesi altrlr. Bu koul ifadesi true(Doru) yada false (Yanl) olmak zere bir deer retmektedir.

    ayet koulumuz doruysa (true) programmzn ak mavi renkle gsterilendoruysa ksmndan devam edecek ve krmzyla gsterilen yanlsa ksmnauramayacaktr. Eer koulumuz yanlsa (false) bu sefer programmz yanlsa ksmndankrmzyla belirtilen yoldan devam edecektir.

    Not 1: Eer programmzn aknda sadece koulun doru olmasna bal ilem yaplmasisteniyor, koulun yanl olduu durumlarda ilem yaplmas istenmiyorsa Else blouprogram ierisinde hi kullanlmaz.

    Kullanm:

    if(koul){

    Koul doruysa yaplacak ilemler;}

    Not 2: Eer If veya Elseden sonra sadece bir komut yazlacak ise kme parantezleri ({})kullanlmayabilir.

    Kullanm:

    if(koul)Koul doruysa yaplacak ilemler;

    elseKoul yanlsa yaplacak ilemler;

  • 5

    rnek 1-1: Klavyeden ya girilen kiinin ehliyet alp alamayacan belirtenprogram yaznz.

    Bu rneimizde saylarn karlatrlmasn inceleyelim.

    Console.Write("Yanz giriniz: ");int yas = Convert.ToInt32(Console.ReadLine());if (yas < 18)

    Console.WriteLine("Yanz 18den kk olduu iin ehliyetalamazsnz");

    elseConsole.WriteLine("Ehliyet alabilecek yatasnz.");

    Yukardaki uygulamay aada verilen deerler iin tek tek deneyiniz ve ekranktlarn yanlarndaki bo ksma yaznz.

    Girilecek Deerler Ekran kts

    16

    25

    18

    17

    Eitlik bakmndan deikenleri karlatrmak iin = = operatrn kullandna,zellikle dikkat edin. Bu ama iin = operatrn kullanmaynz. Tek bir = operatr,deikenleri atamak iin kullanlr.

    rnek 1-2: nl airimiz Mehmet Akifin soyad nedir? sorusunu kullancya sorancevabn isteyen program yaznz.

    Bu rneimizde metinsel ifadelerin karlatrlmasn inceleyelim.

    Console.Write("nl airimiz Mehmet Akif'in soyadnedir?\nCevabnz :");

    string cevap = Console.ReadLine();if(cevap=="Ersoy"){

    Console.Write("Tebrikler bu sorumuza doru cevapverdiniz...");

    }else{

    Console.WriteLine("Malesef yanl cevap");}Console.ReadLine();

    Not 3: Baz programlama dilleri byk/kk harf duyarl bir dil olduu iin Ersoy,ersoy veya ERSOY cevaplarndan yalnzca Ersoy cevabn kabul edecektir.

  • 6

    If koul deyimlerde zaman zaman birden fazla koula bal bir takm ilemleryapmamz gerekebilir.

    Kullanm:

    VE ( && ) balac ile

    if((koul1) && (koul2)){koul1 ve koul2 doruysa yaplacak ilemler;

    }else{koullardan en az birisi veya her ikisi de yanl ise

    yaplacak ilemler;}

    VEYA ( || ) balac ile

    if((koul1) || (koul2)){koul1 veya koul2den en az birisi veya her ikisi de doruysa

    yaplacak ilemler;}else{koullardan her ikisi de yanl ise yaplacak ilemler;

    }

    rnek 1-3: Klavyeden girilen saynn hem 3e hem de 5e kalansz blnpblnemediini ekrana yazan program yaznz.

    Console.Write("Bir say giriniz:");int sayi = Convert.ToInt32(Console.ReadLine());if((sayi % 3 == 0) && (sayi % 5 ==0))

    Console.WriteLine("{0} says hem 3'e hem de 5'e kalanszblnebilir",sayi);

    elseConsole.WriteLine("{0} says hem 3'e hem de 5'e kalansz

    blnemez", sayi);

    Yukardaki uygulamay aada verilen deerler iin tek tek deneyiniz ve ekranktlarn yanlarndaki bo ksma yaznz.

    Girilecek Deerler Ekran kts

    150

    38

    64

    90

  • 7

    rnek 1-4: Klavyeden girilen cinsiyet ve ya bilgilerine gre, kiinin askere gidipgidemeyeceini yazan program yaznz.

    char cinsiyet;int yas;Console.Write("Ltfen cinsiyetinizi giriniz (E/K):");cinsiyet=Convert.ToChar(Console.ReadLine());Console.Write("Ltfen yanz giriniz:");yas =Console.Read();if (((cinsiyet == 'E') || (cinsiyet=='e')) && (yas >= 20)){

    Console.WriteLine("Askere Gidebilir");}else{

    Console.WriteLine("Askere Gidemez");}

    Yukardaki uygulamay aada verilen deerler iin tek tek deneyiniz ve ekranktlarn yanlarndaki bo ksma yaznz.

    Girilecek DeerlerEkran kts

    Cinsiyet Ya

    E 18

    K 21

    E 23

    K 19

    1.2. -e If fadesi

    Birden fazla koula ihtiya duyulan durumlarda i-ie If ifadeleri kullanlrlar. Bir ifkouluna ka tane else if ekleyebileceiniz konusunda hibir snr yoktur.

    -ie If ifadelerinin kullanm ise u ekildedir.

    Kullanm:

    if(koul1){koul1 doruysa yaplacak ilemler;

    }else if(koul2){koul1 yanlsa ve koul2 doruysa yaplacak ilemler;

    }else{her iki koul da yanlsa yaplacak ilemler;

    }

  • 8

    Dilerseniz i-ie If ifadelerini birka rnekle aklamaya alalm.

    rnek 1-5: Klavyeden girilen iki sayy karlatran program yaznz.

    int sayi1, sayi2;Console.Write("1. sayy giriniz: ");sayi1 = Convert.ToInt32(Console.ReadLine());Console.Write("2. sayy giriniz: ");sayi2 = Convert.ToInt32(Console.ReadLine());if(sayi1>sayi2)

    Console.Write("{0} says {1} saysndanbyktr.",sayi1,sayi2);

    else if(sayi1= 0 && puan < 25)

    Console.WriteLine("Puannzn 5'lik sistemdeki karl0'dr");

    else if (puan >= 25 && puan < 45)Console.WriteLine("Puannzn 5'lik sistemdeki karl

    1'dir");else if (puan >= 45 && puan < 55)

    Console.WriteLine("Puannzn 5'lik sistemdeki karl2'dir");

    else if (puan >= 55 && puan < 70)Console.WriteLine("Puannzn 5'lik sistemdeki karl

    3'tr");else if (puan >= 70 && puan < 85)

  • 9

    Console.WriteLine("Puannzn 5'lik sistemdeki karl4'tr");

    else if (puan >= 85 && puan

  • 10

    ekil 0-2. -ie If fadesi

    rnek 1-7: Daha nceden belirlenen kullanc ad ve ifreyi kontrol eden programyaznz.

    string kullaniciAdi, sifre;Console.Write("Ltfen kullanc adnz giriniz:");kullaniciAdi = Console.ReadLine();if (kullaniciAdi == "Admin" || kullaniciAdi=="ADMN" ||

    kullaniciAdi=="admin"){

    Console.Write("Ltfen ifrenizi giriniz:");sifre = Console.ReadLine();if (sifre == "123rty")

    Console.WriteLine("Tebrikler Kullanc ve ifrenizDoru");

    elseConsole.WriteLine("ifrenizi Hatal Girdiniz");

    }else

    Console.WriteLine("Kullanc Adnz Hatal Girdiniz");

  • 11

    Yukardaki uygulamay aada verilen deerler iin tek tek deneyiniz ve ekranktlarn yanlarndaki bo ksma yaznz.

    Girilecek DeerlerEkran kts

    Kullanc Ad ifre

    Admin 123RTY

    Ynetici 123rty

    Admin 123rty

    admin 123rty

    ADMN 123rty

    !!! Uyar: Yukardaki rnekte ifre 123rty eklinde verilmitir.

    rnek 1-8: Basit bir hesap makinesi yapm.

    byte secim;double sayi1,sayi2,sonuc;Console.WriteLine("1.TOPLAMA");Console.WriteLine("2.IKARMA");Console.WriteLine("3.ARPMA");Console.WriteLine("4.BLME");Console.WriteLine("-------");Console.Write("lem tipinizi seiniz (1-4):");secim = Convert.ToByte(Console.ReadLine());if (secim == 1){

    Console.Clear();Console.WriteLine("********************************");Console.WriteLin...