Çözüldü C dilinde 20 sayının tek ve çift olanlarını ayıran program nasıl yazılır?

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

HAYAL!ET

Hectopat
Katılım
23 Eylül 2018
Mesajlar
38
Girilen 20 sayının tek olanlarını ayrı çift olanlarını ayrı toplatıp yazdırma işlemi.

1681061106612.png


Ekteki gibi yaptım ama gerisini getiremedim.
 
Çözüm
Kod:
#include <stdio.h>

#define N 20

int main() {
    int num = 0;
    int odds = 0;
    int evens = 0;
    
    for (int i = 0; i < N; ++i) {
        printf("sayi gir: ");
        scanf("%d", &num);
        
        if (num % 2 == 0) {
            evens += num;
        }
        else {
            odds += num;
        }
    }
    
    printf("tekler toplami: %d, ciftler toplami: %d\n", odds, evens);

    return 0;
}
C:
#include <stdio.h>

int main() {
 int sayilar[20];
 int tek_sayilar[20], cift_sayilar[20];
 int tek_sayi_sayisi = 0, cift_sayi_sayisi = 0;

 printf("Lutfen 20 tamsayi giriniz:\n");
 for (int i = 0; i < 20; i++) {
 scanf("%d", &sayilar[i]);
 if (sayilar[i] % 2 == 0) {
 cift_sayilar[cift_sayi_sayisi] = sayilar[i];
 cift_sayi_sayisi++;
 }
 else {
 tek_sayilar[tek_sayi_sayisi] = sayilar[i];
 tek_sayi_sayisi++;
 }
 }

 printf("Cift Sayilar:\n");
 for (int i = 0; i < cift_sayi_sayisi; i++) {
 printf("%d ", cift_sayilar[i]);
 }

 printf("\n\nTek Sayilar:\n");
 for (int i = 0; i < tek_sayi_sayisi; i++) {
 printf("%d ", tek_sayilar[i]);
 }

 return 0;
}

Dener misiniz hocam?
 
C:
#include <stdio.h>

int main() {
 int sayilar[20];
 int tek_sayilar[20], cift_sayilar[20];
 int tek_sayi_sayisi = 0, cift_sayi_sayisi = 0;

 printf("Lutfen 20 tamsayi giriniz:\n");
 for (int i = 0; i < 20; i++) {
 scanf("%d", &sayilar[i]);
 if (sayilar[i] % 2 == 0) {
 cift_sayilar[cift_sayi_sayisi] = sayilar[i];
 cift_sayi_sayisi++;
 }
 else {
 tek_sayilar[tek_sayi_sayisi] = sayilar[i];
 tek_sayi_sayisi++;
 }
 }

 printf("Cift Sayilar:\n");
 for (int i = 0; i < cift_sayi_sayisi; i++) {
 printf("%d ", cift_sayilar[i]);
 }

 printf("\n\nTek Sayilar:\n");
 for (int i = 0; i < tek_sayi_sayisi; i++) {
 printf("%d ", tek_sayilar[i]);
 }

 return 0;
}

Dener misiniz hocam?

Hocam sadece girilen sayıları ayırıp ekrana yazdırıyor toplatmıyor.
 
Kod:
#include <stdio.h>

#define N 20

int main() {
    int num = 0;
    int odds = 0;
    int evens = 0;
    
    for (int i = 0; i < N; ++i) {
        printf("sayi gir: ");
        scanf("%d", &num);
        
        if (num % 2 == 0) {
            evens += num;
        }
        else {
            odds += num;
        }
    }
    
    printf("tekler toplami: %d, ciftler toplami: %d\n", odds, evens);

    return 0;
}
 
Çözüm
Kod:
#include <stdio.h>

#define N 20

int main() {
    int num = 0;
    int odds = 0;
    int evens = 0;
   
    for (int i = 0; i < N; ++i) {
        printf("sayi gir: ");
        scanf("%d", &num);
       
        if (num % 2 == 0) {
            evens += num;
        }
        else {
            odds += num;
        }
    }
   
    printf("tekler toplami: %d, ciftler toplami: %d\n", odds, evens);

    return 0;
}
Çok teşekkür ederim.
 

Yeni konular

Geri
Yukarı