Miejsca po przecinku, ale nie taki problem jak zawsze, lecz odwrotnie.
Ostatnio zmodyfikowano 2011-02-06 18:52
Krump Temat założony przez niniejszego użytkownika |
Miejsca po przecinku, ale nie taki problem jak zawsze, lecz odwrotnie. » 2011-02-06 15:18:43 Znowu tępy problem xD
mam zmienne typu double i podaje ich wartości całkowite, po czym daje takie dzielenie:
e = c / d
po czym wynik z: 14 / 3 wychodzi: 4.5 a powinien: 4.666666666666666666666666666666666+E12 czy jakoś tak końcówka.
Pytanie, jak zrobić żeby mi pokazywało to co powinno a nie zaokrąglenie do połówek? |
|
pekfos |
» 2011-02-06 15:24:44 podaj typy tych zmiennych. |
|
Krump Temat założony przez niniejszego użytkownika |
» 2011-02-06 15:27:43 no pisze wyżej, wszystkie są double
PS. Jak zmienne są typu float, czyli zmienne przecinkowe to mi zaokrągla do całkowitych ;/ |
|
pekfos |
» 2011-02-06 15:32:16 no to daj kod. gdzieś musi być błąd. |
|
Krump Temat założony przez niniejszego użytkownika |
» 2011-02-06 15:35:00
#include "stdafx.h" #include <iostream>
using namespace std;
int main() { int a, d; double b, c, e; setlocale( LC_ALL, "" ); do { system( "cls" ); d++; cout << "Aktualnie program policzy średnią z " << d - 1 << " liczb." << endl << endl << "Jeśli chcesz dodać liczbę wpisz 1." << endl << "Jeśli chcesz zakończyć wpisz 2." << endl; cin >> a; if( a == 1 ) { cout << "Podaj liczbe do wyliczenia średniej: "; cin >> b; } else { cout << endl << "Teraz program podliczy średnią z " << d - 1 << " liczb." << endl; } c = c + b; } while( a == 1 ); e = c / d; cout << endl << "\Średnia z tych liczb wynosi: " << e << endl << endl; system( "pause" ); return 0; }
PS. Co błędu nie ma xD |
|
pekfos |
» 2011-02-06 15:50:38 a gdzie inicjalizacja d? |
|
Krump Temat założony przez niniejszego użytkownika |
» 2011-02-06 15:53:01 dobrze jest, ma być int, żeby liczył 1, 2, 3...
Chyba ze programowi różnica jak dzieli double przez int, czekaj naniosę poprawken i sprawdzę.
Ale robiłem wcześniej wszystkie double i było to samo ;/ |
|
pekfos |
» 2011-02-06 15:53:55 wiesz co to inicjalizacja? spróbuj cout.precision( 10 ); |
|
« 1 » 2 3 4 |