Kezdőoldal » Közoktatás, tanfolyamok » Házifeladat kérdések » C++-ban hogyan számoljak átlagot?

C++-ban hogyan számoljak átlagot?

Figyelt kérdés

Akárhogy próbálozom, ne irja ki a tizedes számot,csak az egész részt. Igy néz ki a programom:


.....

int a, b,c;

float atlag;

cin>>a;

cin>>b;

cin>>c;

atlag=(a+b+c)/3;

cout<<atlag;

}



úgy is próbáltam, hogy cout<<float(atlag); , de igyse sikerül :(


2017. jún. 10. 11:41
 1/2 anonim ***** válasza:

Az (a+b+c)/3 értéke int lesz. Azért, mert (a+b+c) értéke int, hiszen 3 int összeadása int-et eredményez, és mivel int-tel osztod (int/int), egészosztást alkalmaz, aminek az eredménye int.


Az így kapott int eredmény float-tá konvertálódik, mivel az "atlag" típusa float, de a konverzió során ne is várj tizedesjegyeket, hiszen egy int-nek olyanjai nincsenek.


Több lehetőséged is van:


1. float a, b, c;

Ezzel float típusokat fogsz beolvasni, és a float/int művelet már nem egészosztásként lesz értelmezve, így float eredményt kapsz.


2. atlag=(a+b+c)/3.0;

Így szintén nem egészosztást akar majd végrehajtani, hiszen a int/float művelet lesz végrehajtva, aminek az eredménye float.

2017. jún. 10. 13:46
Hasznos számodra ez a válasz?
 2/2 anonim ***** válasza:
Ja igen, és a float(atlag)-nak semmi értelme, hiszen az "atlag" típusa már eleve float.
2017. jún. 10. 13:49
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!