Aviseringar
Rensa alla

Problem med C++


Ämnesstartare

Har en uppgift som låter som följande:
"Gör ett program som låter dig mata in tre flyttal och som beräknar summan och medelvärdet av dessa tre tal. Dessa ska presenteras i decimalform med två decimalers noggrannhet.

Så här ser min kod ut:

//Variabler och inmatning
#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
int tal1, tal2, tal3, a, b;
double tal = 'a';
cout << "Mata in ett decimaltal: ";
cin >> tal1;
cout << "Mata in ett till: ";
cin >> tal2;
cout << "Mata in ett tredje: ";
cin >> tal3;
a = tal1+tal2+tal3;
cout << "Summa = " << setprecision(3) << a << endl;
b = a/3;
cout << "Medelvärde = " << b << endl;
return 0;
}

När jag kör programmet och ska skriva in en siffra med decimaler funkar det inte. Det funkar utan decimaler dock.

Vad är fel? [sad]


   
Citera
Ämnesstartare

int står för integer, heltal. Fel alltså.


   
SvaraCitera
Ämnesstartare

Vad ska jag skriva istället för int då?


   
SvaraCitera
Ämnesstartare

Har ni inte gått igenom det innan uppgiften eller fått nån litteratur? [surprised]

i java är det double iallafall. [smile]


   
SvaraCitera
Ämnesstartare

Jag fixade det, skulle vara double istället för int.
Tack 🙂


   
SvaraCitera
Ämnesstartare

Funkar även med float. [y]


   
SvaraCitera
Ämnesstartare

Robbin:

Jag fixade det, skulle vara double istället för int.
Tack 🙂

Jag skulle rekommendera float istället för double i det här fallet, för två decimalers noggrannhet är double väldigt överdrivet.


   
SvaraCitera
Ämnesstartare

Redrum:

Funkar även med float. [y]

Holger Meins:

Jag skulle rekommendera float istället för double i det här fallet, för två decimalers noggrannhet är double väldigt överdrivet.

Okej, tack för info 🙂
Verkligen uppskattat!


   
SvaraCitera

Tråden låst på grund av inaktivitet


   
SvaraCitera