Merhabalar; Matlab'da 2323.sıradaki asal sayıyı bulmak istersek nasıl hazırlarız?
Şimdi dostum ben sana asal sayı bulmayı öğretebilirim zor mu hayır değil hemen python ile asal sayı nasıl bulunur öğreteyim
ALGORİTHMS:
NOT: her sayının 1 e bölümünden kalanı 0 olduğu için ben i yi 2 olarak tanımladım
print("ASAL MI DEĞİLMİ")
i = 2
a = int(input("SAYIYI GİRİNİZ")
if a == 2:
print("SAYI ASALDIR ÇİFT ASAL SAYI")
exit()
while i < a:
if a % i == 0:
print("Sayı asal değildir")
break
i += 1
else:
print("ASAL SAYIDIR")
evet ne aptık anlatalım ilk başta bir i değişkeni oluşturdum bu sayaç şimdi benim amacım sayının i ye bölümünden kalanı 0 ise demekki asal değil çünkü kendisinden farklı ve 1 den farklı sayıya bölünüyor fakat diceksin ki kendisiyle bölünürse de kalan 0 ama ben dedim ki i < a olduğunda döngüden çıksın yani sayı 17 ise 16 ya kadar bölüp elseyi bastıracaktır eğer bölünmüyorsa i yi arttırsın i < a olana kadar dedim bu şekilde asal sayı olup olmadığını çok rahat bir şekilde bulabilirsin
i yi arttırmamın sebebi nedir söyliyim sayaç o şimdi sayı 3 girdin 2 den başladı baktı bölünmedi çıkar elseyi basar fakat sen sayıyı 10 girdin ilk başta 2 ye böler bölünür fakat 5 i girdin 2 ye böler olmadı i yi birdaha arttırır 3 bölünmedi bir daha arttırır 4 taki i < a olana kadar i < a oldu yani 5 yapmaz ve else bloğunu basar :D
aslında ben a == 2 yapmazdım pass metodu ile derdim ki sayı 1 e bölünürse pas geç derdim ama sen anla diye böyle yaptım
Alıntı yapılan: Dagiztanli08 - 16 Temmuz 2018 - 16:28:06
Şimdi dostum ben sana asal sayı bulmayı öğretebilirim zor mu hayır değil hemen python ile asal sayı nasıl bulunur öğreteyim
-------------------------
evet ne aptık anlatalım ilk başta bir i değişkeni oluşturdum bu sayaç şimdi benim amacım sayının i ye bölümünden kalanı 0 ise demekki asal değil çünkü kendisinden farklı ve 1 den farklı sayıya bölünüyor fakat diceksin ki kendisiyle bölünürse de kalan 0 ama ben dedim ki i < a olduğunda döngüden çıksın yani sayı 17 ise 16 ya kadar bölüp elseyi bastıracaktır eğer bölünmüyorsa i yi arttırsın i < a olana kadar dedim bu şekilde asal sayı olup olmadığını çok rahat bir şekilde bulabilirsin
i yi arttırmamın sebebi nedir söyliyim sayaç o şimdi sayı 3 girdin 2 den başladı baktı bölünmedi çıkar elseyi basar fakat sen sayıyı 10 girdin ilk başta 2 ye böler bölünür fakat 5 i girdin 2 ye böler olmadı i yi birdaha arttırır 3 bölünmedi bir daha arttırır 4 taki i < a olana kadar i < a oldu yani 5 yapmaz ve else bloğunu basar :D
aslında ben a == 2 yapmazdım pass metodu ile derdim ki sayı 1 e bölünürse pas geç derdim ama sen anla diye böyle yaptım
Teşekkür ederim hocam. Allah razı olsun. Sayenizde aydınlandım
integer karşılaştırmalarda "==" yerine is, "!=" yerine is not kullanabilirsiniz.
[mention=639875]@Çağrı07[/mention]
anladıysanız ne mutlu bana
yukarıdaki hocamın dediği gibi de olur ama sen == kullan şimdilik :)