Soru Geçmişi
15.09.20 01:43
Float tipindeki ortalamanın virgülden sonrasını yanlış hesaplıyor
#include<stdio.h> int main() { int i, sayi, toplam = 0, sayac = 0; float ort; for (i = 1; i < 11; i++) { printf("Bir sayi giriniz"); scanf("%d", & sayi); if (sayi % 2 == 0) continue; else if (sayi <= 0) { printf("yalnizca pozitif sayilar!\n"); i--; continue; } else toplam += sayi; sayac++; } ort = toplam / sayac; printf("tek sayilarin ortlamasi: %.2f", ort); return 0; } Ortalama değişkenini float tipinde tanımlamama rağmen virgülden sonrasını yanlış hesaplamıyor. Bir sayi giriniz1 Bir sayi giriniz2 Bir sayi giriniz3 Bir sayi giriniz4 Bir sayi giriniz5 Bir sayi giriniz6 Bir sayi giriniz7 Bir sayi giriniz8 Bir sayi giriniz9 Bir sayi giriniz9 tek sayilarin ortlamasi: 5.00 -------------------------------- Process exited after 120.2 seconds with return value 0 Press any key to continue . . .
Ekleyen: yolda_
Değiştiren: cevapsitesi
14.09.20 12:49
Float tipindeki ortalamanın virgülden sonrasını yanlış hesaplıyor
#include<stdio.h> int main() { int i,sayi,toplam=0,sayac=0; float ort; for(i=1;i<11;i++){ printf("Bir sayi giriniz"); scanf("%d",&sayi); if(sayi%2==0) continue; else if(sayi<=0){ printf("yalnizca pozitif sayilar!\n"); i--; continue;} else toplam+=sayi; sayac++; } ort=toplam/sayac; printf("tek sayilarin ortlamasi: %.2f",ort); return 0; } Ortalama değişkenini float tipinde tanımlamama rağmen virgülden sonrasını yanlış hesaplamıyor. Bir sayi giriniz1 Bir sayi giriniz2 Bir sayi giriniz3 Bir sayi giriniz4 Bir sayi giriniz5 Bir sayi giriniz6 Bir sayi giriniz7 Bir sayi giriniz8 Bir sayi giriniz9 Bir sayi giriniz9 tek sayilarin ortlamasi: 5.00 -------------------------------- Process exited after 120.2 seconds with return value 0 Press any key to continue . . .
Ekleyen: yolda_
En fazla 3 eski durum gösterilir.