Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Problem z działaniem matematycznym

Ostatnio zmodyfikowano 2015-08-14 17:37
Autor Wiadomość
jakubby
Temat założony przez niniejszego użytkownika
Problem z działaniem matematycznym
» 2015-08-14 17:25:02
Witam !
Zacząłem niedawno przygodę z C++ , postanowilem napisac program , który by zmieniał lata świetlne na jednostki astronomiczne.
O to i kod
C/C++
#include <iostream>
double lstoau( double );
int main()
{
    using namespace std;
    double ls;
    double au = lstoau( ls );
    cout << "Podaj liczbę lat świetlnych: ";
    cin >> ls;
    cout << ls << " lat świetlnych = " << au << " jednostek astronomicznych. \n";
    return 0;
}

double lstoau( double n )
{
    double au2 = 63240 * n;
    return au2;
}

Problemem jest to , że po kompilacji nie działa on prawidłowo . O to i przykład:
"Podaj liczbę lat świetlnych: 4
4 lat świetlnych = 4.39719e-305 jednostek astronomicznych."
P-136256
Monika90
» 2015-08-14 17:37:25
W języku takim jak C++ instrukcje są wykonywane w kolejności wynikającej z ich położenia w tekście programu.

U ciebie jest tak:
C/C++
double ls; //jest sobie zmienna ls o nieokreślonej wartości
double au = lstoau( ls ); //teraz wykonujemy obliczenia używając tej nieokreślonej wartości
cout << "Podaj liczbę lat świetlnych: ";
cin >> ls; //dopiero tu pytasz się o wartość jaką ma mieć zmienna ls
}
mówiąc krótko: zła kolejność.
P-136258
« 1 »
  Strona 1 z 1