1-1000 arası tam kare sayıları yazan algoritma nasıl yapılır?

sugoma

Hectopat
Katılım
22 Mayıs 2022
Mesajlar
793
Çözümler
12
Daha fazla  
Cinsiyet
Erkek
Hocamız algoritmadan 5 soru ödev verdi. 4 tanesini yaptım fakat bir tanesini anlayamadım. Soru 1 ile 1000 arasındaki tam kare sayıları ekrana yazan programın algoritmasını yapmak. For döngüsü kullanmam gerektiğini anladım fakat ifade 2 ve ifade 3 için ne yazacağım anlamadım. Bilen biri nasıl yapıldığını açıklayabilir mi?
 
Python:
for i range(1,32): """32'nin karesi 1000'i aştığı için 32'ye kadar olan sayıları aldım"""
 i= i**2
 if(i<=1000):
 print(i)

En basitinden böyle yaptım.
 
Son düzenleme:
C#:
class Program
{
    static void Main()
    {
        for (int i = 1; i <= 1000; i++)
        {
            int square = i * i;

            if (square == i)
            {
                Console.WriteLine(i);
            }
        }
    }
}
 
Python:
for i range(1,32): """32'nin karesi 1000'i aştığı için 32'ye kadar olan sayıları aldım"""
 i= i**2
 if(i<=1000):
 print(i)

En basitinden böyle yaptım.
Hem 32'nin karesi 1000'i aştığı için oraya kadar aldım demişsiniz hem de altta 1000'den küçük mü diye kontrol ettirmişsiniz. 1 milyon altındaki tam kareleri yazdırın deseydi ezbere yazabilecek miydiniz?

Bu zaten direkt çalışmıyor. ChatGPT filan sanırım. Bu problemde bir sayının kendisinin karesine eşit olup olmadığını normal bir insan kontrol ettirmez bence.

C++:
#include <iostream>

int main() {
    int i = 1;
    while (i * i < 1000) {
        std::cout << i * i << "\n";
        i++;
    }

    return 0;
}
Konu sahibi dil söylemediği için C++ ile yazdım.
 
Hem 32'nin karesi 1000'i aştığı için oraya kadar aldım demişsiniz hem de altta 1000'den küçük mü diye kontrol ettirmişsiniz. 1 milyon altındaki tam kareleri yazdırın deseydi ezbere yazabilecek miydiniz?

Sonra ben de fark ettim.
 
Son düzenleyen: Moderatör:
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…