Çözüldü C dili sorusu nasıl çözülür?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

Frastoly

Hectopat
Katılım
21 Mayıs 2020
Mesajlar
147
Çözümler
2
While döngüsü kullanarak, kullanıcı negatif sayı girene kadar girilen sayılar içerisinden asal olanların toplamını ve ortalamasını ekrana yazdıran program kodunu yazınız.
 
Çözüm
Kodu aşağıya bırakıyorum ancak zorda kalmadığınız sürece bakmanızı tavsiye etmem. Bu kadar basit bir algoritmayı düşünüp, uygulayabiliyor olmanız gerekiyor. Böyle devam ederseniz bizim ekmeğimize yağ sürmekten başka bir şey yapmazsınız.

C:
#include <stdio.h>

int main()
{
    int input, asalSayiToplam = 0, i, check = 0, asalSayiAdet = 0;
    
    while(input >= 0)
    {
        printf("Sayi giriniz: ");
        scanf("%d", &input);
        
        for(i = 2; i < input; i++)
        {
            if(input %i == 0)
            {
                check = 1;
                break;
            }
        }
        
        if(check == 0)
        {
            asalSayiToplam += input;
            asalSayiAdet++;
        }

        check = 0;

    }
    printf("Girilen tum asal sayilarin toplami: %d\n", asalSayiToplam);
    printf("Girilen asal sayilarin ortalamasi: %d", asalSayiToplam / asalSayiAdet);

    return 0;
}
Burada yapılan şeyin onla ilgisi yok ki. Şu algoritmayı kuramayıp mühendislik okuyan birisinin ileride yapabileceği ne olabilir ki?

Yanlış anlaşılmasın soruyu yapamaması başarısız olduğunu göstermiyor ama hazıra konup derslerde anlatılan şeyleri dinlemeden ödevini buraya sorup tamamen yapmamızı istiyor. Sonra da bu kafayla ilerleyip sürekli copy paste yapıyor, ileride de "neden iş bulamadım?" diyor.

Şurada bu işlere gireli 1 ay olmuş dediklerine bak.
#include <stdio.h>

main()
{
int sayi;
sayi>=0;
int toplam=0;
int ortsayac=0;
float ortalama=0;

int sayac ;
while(sayi>=0){
int i =2;
sayac=0;
printf("Bir sayi giriniz: ");
scanf("%d",&sayi);
if (sayi<0) sayac++;

for(int i = 2; i < sayi; i++)
{
if(sayi % i == 0){
sayac++;
}
}
if(sayac == 0){
printf("%d \n",sayi);
toplam +=sayi;
ortsayac++;


}
}
printf("toplam = %d\n",toplam);
ortalama=toplam/ortsayac;
printf("ortalama = %.2f",ortalama);

}





Yaptım sayılır ödevi ama şimdide ortalamayı yanlış hesaplıyor.
 
Son düzenleyen: Moderatör:
Şurada bu işlere gireli 1 ay olmuş dediklerine bak.
Bu şekilde gidersen 100 ay daha da çalışsan bir şey elde edemeyeceksin onu diyorum. Sen bilirsin dinlemeyip sektörde bolca bulunan "bize niye iş vermiyorlar ya" diyen mühendislere döner gidersin. :)

"Doğru soru nasıl sorulur?" bunu öğrenip konu açarsan kendine katkı sağlarsın. Buradan bir kodu alıp copy paste yapmanın hiçbir katkısı yok. Hazıra konma diyorum sana ama anlamıyorsun. İyiliğini düşünüyoruz ama sen bilirsin.
 
Son düzenleyen: Moderatör:
Richard Stallman'ın felsefesi bu değil ki? Hayır kurduğu Özgür Yazılım vakfınca desteklenen GNU'nun özgür yazılım için tanımını okursak felsefesinin bu olmadığını anlayabiliriz.
Farkındayım, sadece "para istemek" saçma geldi. En azından mantığı gösterilebilirdi gerekli bir mesaj olması için.
 

Technopat Haberler

Yeni konular

Geri
Yukarı