Gå til innhold

Hjelp til regning i C++


Anbefalte innlegg

Har laget et script her som skal regne ut Amerikanske Dollar til Norske Kroner... er denne linja; NOK = Am * 7,1442;

#include <iostream.h>



float Convert(float);

int main()

{

float Am;

float NOK;



cout << "Skriv inn antall Amerikanske Dollar: ";

cin >> Am;

NOK = Convert(Am);

cout << "Antall Norske kroner: ";

cout << NOK << endl;

return 0;

}



float Convert(float Am)

{

float NOK;

NOK = Am * 7,1442;

return NOK;

}

 

Der har jeg brukt et komma mellom 7 og 1, altså 7,1442.

Men det ser ikke ut som den godtar dette, for når jeg skriver inn 100 USD får jeg 700 NOK, altså den ganger bare med 7, og hvis jeg bytter ut med punktum får jeg denne feilmld.

 

--------------------Configuration: valutta - Win32 Debug--------------------

Compiling...

1.cpp

C:Program FilesMicrosoft Visual StudioMyProjectsvalutta1.cpp(20) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data

Linking...

 

valutta.exe - 0 error(s), 1 warning(s)

 

Noen som kan hjelpe?

Lenke til kommentar
Videoannonse
Annonse

Du kan jo prøve å skrive følgende

NOK = Am * float(7.1442);

 

Uansett skal programmet fungere med punktum. Den meldingen du får er ikke en direkte feilmelding men bare en warning. Exe fila skal bli laget uansett(dersom du ikke bruker noen spesielle compiler options )

Lenke til kommentar

Ja, takk... så at det funka nå.

 

Et nytt spørsmål;

Når jeg starter dette fantastiske programmet, så stenges det med en gang jeg skriver inn noe. Jeg mistenker at dette har noe med "return 0;" å gjøre? Er det noe som kan forhindre dette? At den står der helt til man stenger vinduet?

 

Eller enda bedre, at når man trykker en tast, så begynner den "om igjen" under, at man må skrive inn nytt tall osv.?

Lenke til kommentar

system("PAUSE"); nederst i koden før return 0; vil gjøre så den venter

 

ellers kan du lage en while som holder programmet gåendes. pakk koden inn i følgende:

 

bool avslutt = false;

do {

 

//kode her

 

} while(avslutt == false);

 

 

da kan du når som helst avslutte ved å endre avslutt variabelen til true.

Lenke til kommentar

system("PAUSE"); gjorde så jeg fikk en error:

--------------------Configuration: valutta - Win32 Debug--------------------

Compiling...

1.cpp

C:Program FilesMicrosoft Visual StudioMyProjectsvalutta1.cpp(23) : error C2065: 'system' : undeclared identifier

C:Program FilesMicrosoft Visual StudioMyProjectsvalutta1.cpp(30) : warning C4244: '=' : conversion from 'double' to 'float', possible loss of data

Error executing cl.exe.

 

valutta.exe - 1 error(s), 1 warning(s)

Lenke til kommentar

Det skal også være mulig å bruke cin.ignore() på slutten av koden. Du må da trykke enter for å komme videre. Noe ala dette...

 

#include <iostream.h>



float Convert(float);

int main()

{

float Am;

float NOK;



cout << "Skriv inn antall Amerikanske Dollar: ";

cin >> Am;

NOK = Convert(Am);

cout << "Antall Norske kroner: ";

cout << NOK << endl;



        cout << "Trykk enter for å fortsette";

        cin.ignore()



return 0;

}



float Convert(float Am)

{

float NOK;

NOK = Am * 7,1442;

return NOK;

}

Lenke til kommentar

Mulig jeg ikke forstod helt:

 

#include <iostream.h>

#include <stdlib.h>



float Convert(float);

int main()

bool avslutt = false; 

do { 



float Am;

float NOK;



cout << "Velkommen til denne fantastiske Valuta-omregnerenn";

cout << "Denne regner om Amerikanske Dollars til Norske kronern";

cout << "Laget av Larsn";

cout << endl;

cout << "Skriv inn antall Amerikanske Dollar (og trykk Enter): ";

cin >> Am;

NOK = Convert(Am);



cout << endl;

cout << "Antall Norske kroner: ";

cout << NOK << endl;

cout << endl;

cout << endl;

cout << endl;

cout << endl;

system("PAUSE");

return 0;

}   while(avslutt == false); 



float Convert(float Am)

{

float NOK;

NOK = Am * 7.1442;

return NOK;

}

 

Fikk 2 errors:

--------------------Configuration: valutta - Win32 Debug--------------------

Compiling...

1.cpp

C:Program FilesMicrosoft Visual StudioMyProjectsvalutta1.cpp(6) : error C2146: syntax error : missing ';' before identifier 'bool'

C:Program FilesMicrosoft Visual StudioMyProjectsvalutta1.cpp(6) : fatal error C1004: unexpected end of file found

Error executing cl.exe.

 

valutta.exe - 2 error(s), 0 warning(s)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...