Şimdi Ara

Dolu sayıları listelemek

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
8
Cevap
0
Favori
151
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Kendisi hariç tüm çarpanlarının toplamı kendisiden büyük olan sayıya 'dolu sayı' (abundant number) denir

    Örneğin 12 dolu sayıdır cunku kendisi hariç tüm çarpanları 1, 2, 3, 4, ve 6 'nın toplamı 16, 12'den büyüktür.

    1-40 arası (40 dahil) dolu sayıların listesini (her bir sayı yeni satırda olacak şekilde) veren kod yazınız.



    < Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 20 Eylül 2020; 23:52:7 >
    < Bu ileti mini sürüm kullanılarak atıldı >



  • Kod

    Yığını:
    [print(j) if (lambda x: sum([i if x%i==0 else 0 for i in range(1,x)]))(j)>j else 0 for j in range (1,41)]
  • Kod

    Yığını:
    for grep {$_ <[+] grep {$_ %% $^a},1..^$_},1..40 {say $_}

    57 karakterlik tek satırda işlem tamam :)

  • hynx kullanıcısına yanıt
    ifadeyi [ ] içine alınca onu bir array olarak degerlendiriyor ve sorunsuz çıktı veriyor, okey fakat [ ] 'ı kaldırınca hata veriyor, o hatayı neden verdi, bir açıklayabilir misin? akşam yorgunluğu var, ne hata mesajına baktım ne de Google'da arattırdım :)



    < Bu mesaj bu kişi tarafından değiştirildi Tuğkan-0153 -- 21 Eylül 2020; 18:15:15 >
    < Bu ileti mini sürüm kullanılarak atıldı >
  • pythonda duz for looplar en az iki satir tutuyor. list comprehension kullanarak ayni seyi tek satirda yapabiliyoruz. ama syntaxlar farkli, koseli parantezleri silince syntax yapisi bozuluyor.

    Dolu sayıları listelemek

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • let sum;

    for(var a= 0; a <= 40; a ++) {

      for(var i = 0; i <= a/2 ;i++){

        if(a % i == 0) {

          sum += i;

        }

      }

      if(sum > a) {

        console.log(a);

      }

      sum = 0

    }

    Daha yeniyim bu işlerde kod doğru mu onu da bilmiyorum şu sayıları veriyor :12 18 20 24 30 36 40

  • Ec jok E kullanıcısına yanıt
    Dizideki degerleri tek tek inceleyip koşulu (çarpanlar toplamı kendisinden büyük) karşılıyorsa alacak şekilde bir kod yazsan daha kısa ve net olur. Klasik döngü ve if gereksiz.

    < Bu ileti mini sürüm kullanılarak atıldı >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.