Şimdi Ara

Break ve Continue Deyiminin Alternatifi Var mı?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
11
Cevap
0
Favori
159
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Şimdi diyelim bu iki deyimi kullanmadan program yazmak istiyorum. Bunları kullanmadan nasıl yazarım?



  • Onlar zaten seyrek kullanılan komutlar. Alternatifi pek olmaz. Çöp konu.

    < Bu ileti mini sürüm kullanılarak atıldı >
  • Şimdi hocam ben max. 2 kere cevap verilebilecek bir oyun yapmaya çalışıyorum. Her şey iyi işliyor ama 'continue' ile döngüyü tekrarlatamıyorum hata veriyor.

    print("SORACAĞIM SORUYU BİLMEK İÇİN 2 HAKKIN VAR!")

    i=1

    while i<=2:
    cevap=input("2x2=?")
    if cevap == 4:
    print("DOĞRU")
    break

    i=i+1


    else:
    print("2 HAKKINI DA DOLDURDUN!")
    tekrar =input("TEKRAR OYNAMAK İSTERSEN 'ok' yaz:")
    if tekrar =='ok':
    continue


    Python ile yazdığım kodlarda while şartı sağlandığında else devreye girsin istiyorum. Else devreye giriyor ama else içinde if ile continue yapıp döngüyü tekrarlatamıyorum.
  • döngü yapısını yeniden düzenlemelisin.

    < Bu ileti mini sürüm kullanılarak atıldı >
  • nasıl hocam?
  • ben goto kullanırdım.


    if
    break

    yapmak yerine

    if
    goto label

    yapardım fakat yine de çok mantıksız. neden break kullanmak istemiyorsun ki ?




    döngün for ise bakmadım fakat

    label:

    for
    if
    goto label


    şeklinde tamamlatırsın. yani yeniden for'a döner. tam anlatamadım. goto'yu araştır.



    < Bu mesaj bu kişi tarafından değiştirildi codforc -- 28 Mayıs 2020; 21:32:24 >
  • codforc C kullanıcısına yanıt
    Aslında kullanmamam için özel bir sebep yok ama kullandığım kitap uygulama olarak yap diyor. Dedim biraz araştırayım bulamadım ben de foruma sordum. Rica etsem üstteki diğer soruma da bakabilir misiniz?
  • eski_nesil kullanıcısına yanıt


    print("SORACAĞIM SORUYU BİLMEK İÇİN 2 HAKKIN VAR!")

    i=1

    while i<=2:
    cevap=input("2x2=?")

    if cevap == 4:
    print("DOĞRU")
    break

    elif cevap != 4 and i>=2:
    print("2 HAKKINI DA DOLDURDUN!")
    tekrar =input("TEKRAR OYNAMAK İSTERSEN 'ok' yaz:")
    if tekrar =='ok':
    continue

    i+=1




    Üsste çalışan kodu yazdım. Şimdi hatalarına gelelim.

    Öncelikle else'yi döngü dışına koyman yanlış. Döngünün içine koyarsan döngü içerisinde else'ye işlem yaptırabilirsin. Else'yi döngü dışına koyup döngü içinde işlem yaptırmaya çalışıyorsun :D

    else'yi döngünün içine koyup elif ile değiştirdim, elif ile değiştirmemin sebebi bir takım değişkenleri kontrol etmek istediğimdendi.

    olay elif'te bitiyor. cevap 4'ten farklı ise VE i>=2 ise elif işleme sokuluyor. Yani 2 kez işlem yaptırabiliyorsun. alttada i+=1 var oda count, yani ne kadar cevap verdiğini sayıyor.




  • While'da break yapmak yerine direk i= 2 dersin böylece döngü devam etmez çıkarsın. Continue kısmında da sonraki işlemleri içeren fonksiyonu veya fonksiyonları çağırırsın direk. Ha, sonraki işlemler fonksiyon halinde değilse fonksiyon oluşturup içine atarsın, öyle çağırırsın.

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • return kullanırsın. bu da döngüden cıkar
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.