C Egzersizleri 4: Klavyeden Girilen N Tane Sayının Toplamı

Whistle

Ruhsuz :/
Kurucu
Geliştirici
Yardımsever Üye
Mesaj
12.279
Çözümler
573
Beğeni
15.620
Puan
6.281
Ticaret Puanı
2
Bu konuda uygulayacağımız egzersiz konusu ise klavyeden girilen n tane sayının toplamını veren program olacaktır.
Bir önceki konumuzda 1~1000'e kadar olan sayıların toplamını istemiştim. Bakmak için tıklayın.

Matematiksel örnek;
Sayılarımız: 5, 10, 24, 8, 4;
Z = 5+10+24+8+4;

Aşağıda benim yazdığım kodlar bulunmaktadır. Eğer kendiniz öğrenmek istiyorsanız bu egzersizi kendiniz yapmaya çalışın daha sonra benim kodlarıma bakın. Yazdığınız kodları yorumlarda paylaşmayı unutmayın. :)

C:
Genişlet Daralt Kopyala
#include <stdio.h>
#include <locale.h>
#include <string.h>

/*
* Whistle - 17.04.2021 - 00:15
* Klavyeden Girilen N Tane Sayının Toplamı
*/

int main(int argc, char* argv[])
{
    setlocale(LC_ALL, "Turkish");
    int sayi, toplam = 0;
    unsigned int i = 1;
    char s[2];

    //sonsuz döngü girmesi için.
    while(i > 0)
    {
        printf("%d. sayıyı giriniz: ", i);
        scanf("%d", &sayi);
        toplam += sayi;

        if (i > 1)
        {
            printf("Programı sonlandırmak istiyor musunuz? [Y/n] ");
            scanf("%s", s);
          
            if (s[0] == 'Y' || s[0] == 'y')
            {
                break;
            }
        }
        i++;
    };

    printf("Girdiğiniz %d adet sayının toplamı: %d\n", i, toplam);
    system("pause");
}

Bir sonraki egzersize geçmek için: C Egzersizleri 5: 1'den Klavyeden Girilen N Sayısına Kadar Olan Çift Sayıların Karesini Listeleyen Program
 
Bu şekilde yazanları gördüm. :) Dediğim gibi, tecrübe kazandıkça daha iyisi olur :D :D
 
C# ile çözülmüş hali :
C#:
Genişlet Daralt Kopyala
int veri, toplam = 0;
            string cevap = "";
            Console.WriteLine("Toplama Sihirbazına Hoşgeldiniz \n************************************");
            while (true) {
                veri = Convert.ToInt16(Console.ReadLine());
                toplam += veri;

                Console.WriteLine("İşlemi Sonlandırmak İstiyormusunuz ? [Y/N]");
                cevap = Console.ReadLine();
                if (cevap == "Y" || cevap == "y")
                {
                    break;
                }
                else if (cevap != "Y" && cevap != "y" && cevap != "N" && cevap != "n") {
                    Console.WriteLine("İşleminiz Anlaşılamamıştır. Toplama İşlemine Devam Ediliyor.");
                }
            }

            Console.WriteLine("İşleminizin Sonucu : " + toplam);

            Console.ReadLine();
 
Uyarı: Bu konu açıldığından bu yana baya zaman geçmiş.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.
Geri
Üst