Girilen 20 adet sayıyı alarak; 1. Sayıların ortalamasını. 2. En büyük ve en küçük sayıları bulan. 3. Pozitif sayıların ortalamasını bulan. 4. 100-200 arasındaki sayıların sayısını bulan algoritmayı yazınız.
⛓ Program Kısımları
20 sayı girmek.
İstenenleri hesaplamak.
Sonuçları ekrana yazdırmak.
👓 Çözüm Yöntemi
Bir sayının pozitif olup olmadığını tespit etmek için 0’dan olup olmadığını kontrol etmek gerek.
Bir sayının 100 ile 200 arasında olup olmadığını tespit etmek için, sayı >100 ve aynı anda sayı <200 olup olmadığını kontrol etmek gerek.
👩🔧 Çözüm Adımları
Değişkenlerin tanımlanması.
İlk x değerinin döngüye girmeden girilmesi.
Değişkenlere koşullar kontrol edilerek değer atanması.
adet-1 kere dönen döngünün oluşturulması.
x değerinin döngüde girilmesi.
Pozitif sayıların tespit edilmesi.
100<x<200 koşulunun kontrol edilmesi.
x>buyuk ve x<kucuk koşulunun kontrol edilmesi.
x değerinin orta eklenmesi.
Ortalamaların hesaplanması.
Sonuçların yazdırılması.
🤖 Kod
⚙ C++ Kodu
#include <iostream>
using namespace std;
int main() {
// Değişkenlerin tanımlanması
int i, enBuyuk, enKucuk, pozitifSayılarToplamı = 0, pozitifSayilarAdet = 0, sayilarToplami = 0;
int yuzIkiYuzArasında = 0, sayi;
float ort, pozitifOrt;
cin >> sayi; // İlk değerin döngüye girmeden girilmesi
enBuyuk = sayi;
enKucuk = sayi;
// Değişkenlere koşullar kontrol edilerek değer atanması
if(sayi > 0){
pozitifSayilarAdet++;
pozitifSayılarToplamı += sayi;
}
if(sayi > 100 && sayi < 200)
yuzIkiYuzArasında++;
sayilarToplami += sayi;
for (i = 0; i < adet - 1; ++i) { // “adet-1” kere dönen döngünün oluşturulması
cin >> sayi; // “sayi” değerinin döngüde girilmesi
sayilarToplami += sayi; // “sayi” değerinin “sayilarToplami”a eklenmesi
// “sayi>enBuyuk” ve “sayi<enKucuk” koşulunun kontrol edilmesi
if (sayi > enBuyuk)
enBuyuk = sayi;
else if (sayi < enKucuk)
enKucuk = sayi;
if (sayi > 0) { // Pozitif sayıların tespit edilmesi
pozitifSayılarToplamı += sayi;
pozitifSayilarAdet++;
}
if (sayi > 100 && sayi < 200) // 100<x<200 koşulunun kontrol edilmesi
yuzIkiYuzArasında++;
}
// Ortalamaların hesaplanması
ort = sayilarToplami / adet;
pozitifOrt = pozitifSayılarToplamı / pozitifSayilarAdet
// Sonuçların yazdırılması
cout << "Ortalama = " << ort << '\n';
cout << "En buyuk sayi = " << enBuyuk << '\n';
cout << "En kucuk sayi = " << enKucuk << '\n';
cout << "Pozitif olanlarin ortalamasi = " << pozitifOrt << '\n';
cout << "100-200 arasindaki sayilarin sayisi = " << yuzIkiYuzArasında << '\n';
}
🐍 Python Kodu
# Değişkenlerin tanımlanması.adet =20; x =0; buyuk =0; kucuk =0; i =0p =0; j =0; ort =0; p_ort =0x =int(input())# İlk “x” değerinin döngüye girmeden girilmesibuyuk = xkucuk = x# Değişkenlere koşullar kontrol edilerek değer atanmasıif (x >0): p_ort = p_ort + x p +=1if (x >100and x <200) : j +=1 ort = ort + xfor i inrange(0, adet-1):# “adet-1” kere dönen döngünün oluşturulması x =int(input())# “x” değerinin döngüde girilmesiif(x >0):# Pozitif sayıların tespit edilmesi p_ort = p_ort + x p +=1if(x >100and x >200):# 100<x<200 koşulunun kontrol edilmesi j +=1# “x>buyuk” ve “x<kucuk” koşulunun kontrol edilmesi.if(x > buyuk): buyuk = xif(x < kucuk): kucuk = x ort = ort + x # “x” değerinin “ort”a eklenmesi.# Ortalamaların hesaplanmasıort = ort / adetp_ort = p_ort / p# Sonuçların yazdırılmasıprint("Ortalama= ", ort)print("En buyuk sayi= ", buyuk)print("En kucuk sayi= ", kucuk)print("Pozitif olanlarin ortalamasi= ", p_ort)print("100-200 arasindaki sayilarin sayisi= ", j)
☕ Java Kodu
importjava.util.*;publicclassIstatistik2 {publicstaticvoidmain(String arg[]) {Scanner input =newScanner(System.in);// Değişkenlerin tanımlanmasıint adet =20, x, buyuk, kucuk, i, p =0, j =0;float ort =0, p_ort =0; x =input.nextInt(); // İlk “x” değerinin döngüye girmeden girilmesi buyuk = x; kucuk = x;// Değişkenlere koşullar kontrol edilerek değer atanmasıif (x >0) { p_ort = p_ort + x; p++; }if (x >100&& x <200) j++; ort = ort + x;for (i =0; i < adet -1; i++) { // “adet-1” kere dönen döngünün oluşturulması x =input.nextInt(); // “x” değerinin döngüde girilmesiif (x >0) { // Pozitif sayıların tespit edilmesi p_ort = p_ort + x; p++; }if (x >100&& x <200) // 100<x<200 koşulunun kontrol edilmesi j++;if (x > buyuk) // “x>buyuk” ve “x<kucuk” koşulunun kontrol edilmesi buyuk = x;if (x < kucuk) kucuk = x; ort = ort + x; // “x” değerinin “ort”a eklenmesi. } // Ortalamaların hesaplanması ort = ort / adet; p_ort = p_ort / p; // Sonuçların yazdırılmasıSystem.out.println("Ortalama= "+ ort);System.out.println("En buyuk sayi= "+ buyuk);System.out.println("En kucuk sayi= "+ kucuk);System.out.println("Pozitif olanlarin ortalamasi= "+ p_ort);System.out.println("100-200 arasindaki sayilarin sayisi= "+ j);input.close(); }}
⏹ C# Kodu
usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceIstatistik2{classProgram{staticvoidMain(string[] args){ // Değişkenlerin tanımlanmasıint adet =20, x, buyuk, kucuk, i, p =0, j =0;float ort =0, p_ort =0; x =Convert.ToInt32(Console.ReadLine()); // İlk “x” değerinin döngüye girmeden girilmesi buyuk = x; kucuk = x; // Değişkenlere koşullar kontrol edilerek değer atanmasıif (x >0){ p_ort = p_ort + x; p++; }if (x >100&& x <200) j++; ort = ort + x;for (i = 0; i < adet -1; i++){ // “adet-1” kere dönen döngünün oluşturulması x =Convert.ToInt32(Console.ReadLine()); // “x” değerinin döngüde girilmesiif (x >0){ // Pozitif sayıların tespit edilmesi p_ort = p_ort + x; p++; }if (x >100&& x <200) // 100<x<200 koşulunun kontrol edilmesi j++; // “x>buyuk” ve “x<kucuk” koşulunun kontrol edilmesiif (x > buyuk) buyuk = x;if (x < kucuk) kucuk = x; ort = ort + x; // “x” değerinin “ort”a eklenmesi. } // Ortalamaların hesaplanması ort = ort / adet; p_ort = p_ort / p; // Sonuçların yazdırılmasıConsole.WriteLine(ort);Console.WriteLine(buyuk);Console.WriteLine(kucuk);Console.WriteLine(p_ort);Console.WriteLine(j);Console.ReadLine(); } }}