C++ 99 sayısı girilene kadar tekrar sayı alıp ortalama hesaplama

Tunahan Arık

Hectopat
Katılım
22 Ağustos 2020
Mesajlar
610
Çözümler
4
Write a program that keep read numbers until user enter 99 and then print numbers average.
Böyle bir ödev verildi ama ders içerisinde continue-break kısmını işlemedi. Onları kullanmadan bu işlevi yapacak program konusunda yardımcı olabilir misiniz? For veya while loop kullanılması gerekiyor. Ben tekrar sayı alma kısmını bir türlü çalıştıramadım.
 
Sonsuz bir döngü olacak bu döngünün içinde önce sayı alacaksınız sonra bu sayıyı bir diziye ekleyeceksiniz ve en son aldığınız sayıyı bir de kontrol edeceksiniz 99 mu diye bu kontrol etme sırasında sayı 99 ise döngüden çıkacaksınız ve elinizdeki dizideki tüm sayıları toplayıp ekrana yazdıracaksınız.
Do While bunun için en iyisi ama while ile de for ile de yapabilirsiniz. İf ile 99 mu girildiğini kontrol edin, break ile döngüden ayrılın.

Not: For veya While için kontrol işlemini sayıyı aldıktan hemen sonra yapın, 99 değilse diziye ekleyin veya direk döngü içinde toplam = toplam + girilensayi; yapın ki '99' çıkma sayısını da toplamış olmayın.
 
Son düzenleme:
Daha basit bir şekilde de yapabilirsiniz. Int i ve j tanımlayıp 0'a eşitleyin.
Bir döngü içerisinde kullanıcıdan bir sayı girmesini isteyin. Biz buna a diyelim.
Eğer a 99'a eşit değilse, i ile a yı toplayıp j'yi bir arttırın ve döngüyü tekrarlatın.
Bu sayede i her girilen sayı kadar artar ve j de kaç sayı girildiyse o miktarda artar.
En sonunda 99 girildiği zaman döngüden çıkın ve çıktı olarak i/j işlemini verin.
 
C++:
int n, count = 0;

while(n != 99) {
    cout << "Please enter number " << count + 1 << "(Enter '99' for stop entering process): ";
    cin >> n;
    count++;
}

Girdi döngüsünü bu şekilde yaparsın. if-else ile de toplamayı yaparsın. Bir tane temp tanımla, sonrasında verilenleri if(n != 99) içerisinde topla. Else yazmana gerek yok bu şekilde. Program n = 99 olduğunda çıkış yapacak. 99 değilse de ifin içerisinde toplanacak. En sonda count - 1 ile bölmeyi yaparsın. Eğer count++;'yı if(n != 99) içine koyarsan count - 1 yapmaya gerek kalmaz. Direkt temp / count yaptığında ortalamayı verir.
 

Technopat Haberler

Yeni konular

Geri
Yukarı