Şimdi Ara

For döngüsü ile ilgili bir sorum var.

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
2
Cevap
0
Favori
769
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba, kullanıcıdan 3 sayı girmesini ve bunları büyükten küçüğe sıralamak isteyen bir program gördük derste. Kodda if(i==0) kısmıyla başlayan yeri anlayamadım. Bunun mantığı nedir, min değerin 0 çıkmasını nasıl düzeltiyor?

    quote:

    import acm.program.*;
    public class example extends ConsoleProgram{
    public void run(){
    int max=0;
    int min=0;
    for(int i=0;i<3;i++){
    int n = readInt("? ");
    if(i == 0){
    min = n;
    max = n;
    }

    if(max < n){
    max = n;
    }
    if(n < min){
    min = n;
    }
    }
    println("max is "+max);
    println("min is "+min);
    }
    }



    < Bu mesaj bu kişi tarafından değiştirildi Leskodjer -- 17 Mart 2015; 1:07:43 >



  • Anladığım kadarıyla şöyle çalışıyor hocam . for 3 defa dönecek . Mesela degerlerimiz 2 3 4 olsun . i=0 durumu için n=2 olacak . i==0 oldugu için ilk başta , elindede başka n degeri olmadıgı için max ve mini n'ye atıyor . yani min = 2 max=2 . Aşağıdaki max<n ve min>n saglamadıgı için dönüyoruz . i=1 durumu için n=3 giriyorsun . i==0 durumu artık yok bunu en başta min max ı ilk girilen degere atamak için kullandık . neyse n=3 için i=1 durumunda max(2)<3 oluyor ve yenı max'ın 3 oluyor altındakı if sağlamadıgı için donuyorsun i=2 durumu için n=4 oluyor max<n durumu saglanıyor yenı max degeri 4 alttakı if'e girmiyordun min degerin ise ilk başta setlenen min degeri oluyor.


    Birde ilk goruste çıkarım yapamıyorsan eline kagıt kalem alıp oyle gidersen daha iyi olur ve break pointler ile ilerleyerek program nasıl işliyor gorebilirsin .



    Sana önemli bir uyarıda bulunayım , muhtemel haklısın falan diyip geçiştireceksin ama anlamadıgın yeri kesinlikle hocaya sor , asla çekinme



    < Bu mesaj bu kişi tarafından değiştirildi senatorts -- 17 Mart 2015; 11:45:49 >




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.