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

Whistle

Ruhsuz Filozof
Kurucu
Kurumsal Üye
Geliştirici
Yardımsever Üye
Mesaj
11.495
Çözümler
546
Beğeni
12.045
Puan
5.864
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:
#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#:
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();
 
Geri
Üst