Görev
100 ile 500 arasındaki tüm tam sayıların toplamını bulun.
Formül kullanmadan bu sorunu çözen bir program yazalım. Örneğin
s
değişkenine yapılan toplamanın sonucunu şöyle yazarsak
\(s=100+101+102+103+...+500\),
kaydın kendisine çok zaman harcayacağız çünkü bilgisayar üç noktanın aritmetik bir ifadede nasıl kullanılacağını anlamayacak ve 100'den 500'e kadar tüm sayıları yazmamız gerekecek. ihmal edilebilir Özellikle sayılarımızı değiştirip farklı bir aralık almak istiyorsak.
Ne yapmalıyız?
Yukarıdaki girişe dikkat edersek, sürekli olarak "
+
" ekini kullanırız.
s
değişkenine kademeli olarak sayı eklemeyi deneyebilirsiniz. Örneğin, bu gösterimi kullanarak
s=s+i
.
Burada ne yaptık:
1) sağ tarafa s+i
ifadesini koyuyoruz, yani s
değişkeninin değerini alıyoruz ve değişkenin değeri ona i
;
2) solda s
değişkeninin adını belirledik, yani sağdaki hesaplama sonucunun tamamı aynı değişken s
'de saklanacak, yani s
değişkeninin değerini değiştireceğiz.
Geriye sadece i
değişkeninin değerini istenilen aralıkta değiştirmek kalıyor. Bu bir for
.
döngüsü ile yapılabilir.
Aralığımızdaki 100 ile 500 arasındaki sayılar sırayla
i
değişkenine girmelidir.
Örnek
# ÖNEMLİ! Öncelikle s değişkenini sıfırlamanız gerekir,
# böylece ilk adımda 100 sayısı sıfıra eklenir,
# ve hafızada olana değil!
sn = 0
for i in range(100, 501): # döngü başlığı burada i
s += i # değerini 100'den 500'e 1'er adımla değiştirir,
# s değişkenine kademeli olarak döngü gövdesinde,
# değişen i değişkeninin değerini topla,
# ve sonucu tekrar s değişkenine kaydedin
Bu çözüm, işlemlerin toplamını hesaplamaya çok benzer:
\(s = 0 + 100 = 100, \\ s = 100 + 101 = 201, \\ s = 201 + 102 = 303 \\ ... \) yayılma