Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

C++ programma calcolatrice!

Linguaggi e sistemi

Moderatori: Foto UtentePaolino, Foto Utentefairyvilje

0
voti

[11] Re: C++ programma calcolatrice!

Messaggioda Foto UtentePioz » 5 dic 2012, 18:37

if (risposta=1)

[-X [-X
==

Poi quando tabuli il programma devi andare un "tab/spazio" più a destra quando le righe di codice sotto sono dentro una funzione
es.
Codice: Seleziona tutto
while(1)
{
     cout...
}

Quando esci dalla funzione devi spostarti di un "tab/spazio" verso sinistra. Così hai una buona formattazione del codice che facilita la lettura.

Codice: Seleziona tutto
int main ()
{
    double a,b,;
    int risposta;
    cout<<"inserisci a"<<endl;
    cin>>a;
    cout<<"inserisci b"<<endl;
    cin>>b;
    cout<< "cosa vuoi fare?(digita un numero)"<<endl<<"1=divisione"<<endl<<"2=moltiplicazione"
    cout<<endl<<"3=addizione"<<endl<<"4=sottrazione"<<endl;
    cin>>risposta;
    if (risposta=1)
    {
      risultato= a/b;
    }
    if (risposta=2)
    {
      risultato= a*b;
    }
    if (risposta=3)
    {
      risultato=a+b;
    }
    if (risposta=4)
    {
      risultato=a-b;
    }
    else
    {
      cout<<"Non hai inserito un numero coerente con le possibilità date";
    }
    cout<<"il risultato e'"<<risultato<<endl;
    system("pause");
    return 0;
}

Intanto prova a correggere queste cose, poi vediamo di aggiungere qualche altra cosa.

PS hai fatto anche il ciclo while, do while o altro?
Avatar utente
Foto UtentePioz
629 4 8
Expert
Expert
 
Messaggi: 568
Iscritto il: 11 ago 2011, 21:56

0
voti

[12] Re: C++ programma calcolatrice!

Messaggioda Foto UtenteTardoFreak » 5 dic 2012, 18:39

Codice: Seleziona tutto
if (risposta = 1)

Sbagliato!
Un' istruzione del genere assegna il valore 1 alla variabile "risposta". Tra l' altro l' istruzione dà come risultato "vero" perché il numero assegnato è maggiore di zero!

Il modo corretto è:
Codice: Seleziona tutto
if (risposta == 1)
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,9k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15754
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

0
voti

[13] Re: C++ programma calcolatrice!

Messaggioda Foto Utenterazielmitico » 5 dic 2012, 18:42

Pioz ha scritto:
PS hai fatto anche il ciclo while, do while o altro?


non le ho ancora fatte in classe ma ho letto le varie stringhe sul libro,e so come funzionano,potrei provare ad applicarle (avevo gia pensato di mettere un ciclo per evitare che il programma termini)

ho aggiustato il codice,che ne dite ora?

Codice: Seleziona tutto
#include <iostream>
using namespace std;
main()
{
    double a,b,risultato;
    int risposta;
    cout<<"inserisci a"<<endl;
    cin>>a;
    cout<<"inserisci b"<<endl;
    cin>>b;
    cout<<"cosa vuoi fare? (inserisci un numero)"<<endl<<"1=divisione"<<endl<<"2=moltiplicazione"<<endl<<"3=addizione"<<endl<<"4=sottrazione"<<endl<<;
    cin>>risposta;
                  if (risposta==1)
                  {
                  risultato= a/b;
                  }
                             if (risposta==2)
                             {
                             risultato= a*b;
                             }
                                         if (risposta==3)
                                         {
                                         risultato=a+b;
                                         }
                                                       if (risposta==4)
                                                       {
                                                       risultato=a-b;
                                                       }
                else
                {
                cout<<"Non hai inserito un numero coerente con le possibilità date";
                }   
   cout<<"il risultato e'"<<risultato<<endl;
   system("pause");
   return 0;
}
Ultima modifica di Foto Utenterazielmitico il 5 dic 2012, 18:52, modificato 1 volta in totale.
Avatar utente
Foto Utenterazielmitico
-10 5
Frequentatore
Frequentatore
 
Messaggi: 153
Iscritto il: 23 ott 2012, 22:59

0
voti

[14] Re: C++ programma calcolatrice!

Messaggioda Foto UtentePioz » 5 dic 2012, 18:44

Sì puoi fare che per esempio se premi un tasto sbagliato ti chieda di ripremerlo e altre cose, metti in moto la fantasia e prova. Poi i problemi si risolvono.
Avatar utente
Foto UtentePioz
629 4 8
Expert
Expert
 
Messaggi: 568
Iscritto il: 11 ago 2011, 21:56

1
voti

[15] Re: C++ programma calcolatrice!

Messaggioda Foto UtenteTardoFreak » 5 dic 2012, 18:45

E' meglio che prima ripassi bene quello che ha studiato.
Ha ancora diverse lacune.
"La follia sta nel fare sempre la stessa cosa aspettandosi risultati diversi".
"Parla soltanto quando sei sicuro che quello che dirai è più bello del silenzio".
Rispondere è cortesia, ma lasciare l'ultima parola ai cretini è arte.
Avatar utente
Foto UtenteTardoFreak
73,9k 8 12 13
-EY Legend-
-EY Legend-
 
Messaggi: 15754
Iscritto il: 16 dic 2009, 11:10
Località: Torino - 3° pianeta del Sistema Solare

0
voti

[16] Re: C++ programma calcolatrice!

Messaggioda Foto UtentePioz » 5 dic 2012, 18:47

Eh qua ti devo dare ragione...
Avatar utente
Foto UtentePioz
629 4 8
Expert
Expert
 
Messaggi: 568
Iscritto il: 11 ago 2011, 21:56

0
voti

[17] Re: C++ programma calcolatrice!

Messaggioda Foto Utenterazielmitico » 5 dic 2012, 18:53

sopra ho ripostato il codice...
Avatar utente
Foto Utenterazielmitico
-10 5
Frequentatore
Frequentatore
 
Messaggi: 153
Iscritto il: 23 ott 2012, 22:59

0
voti

[18] Re: C++ programma calcolatrice!

Messaggioda Foto UtentePioz » 5 dic 2012, 19:02

a parte il fatto della formattazione mi sembra corretto, funziona?
Però ripensandoci forse ho detto una cavolata per quanto riguarda l'ultimo else.
perché forse il messaggio "hai sbagliato..." ti compare anche se premi un numero tipo 1 2 3 vero?
Avatar utente
Foto UtentePioz
629 4 8
Expert
Expert
 
Messaggi: 568
Iscritto il: 11 ago 2011, 21:56

0
voti

[19] Re: C++ programma calcolatrice!

Messaggioda Foto Utenterazielmitico » 5 dic 2012, 19:17

il problema è che non parte proprio...spunta "premere un tasto per continuare" lo guardo da tre ore ma non trovo errori.
errore trovato e corretto,ecco il sorgente finale:

Codice: Seleziona tutto
#include <iostream>
using namespace std;
int main()
{
    double a,b,risultato=0;
    int risposta;
    cout<<"inserisci a"<<endl;
    cin>>a;
    cout<<"inserisci b"<<endl;
    cin>>b;
    cout<<"cosa vuoi fare?(inserisci un numero)"<<endl<<"1=divisione"<<endl<<"2=moltiplicazione"<<endl<<"3=addizione"<<endl<<"4=sottrazione"<<endl;
    cin>>risposta;
                  if (risposta==1)
                  {
                  risultato= a/b;
                  }
                             if (risposta==2)
                             {
                             risultato= a*b;
                             }
                                         if (risposta==3)
                                         {
                                         risultato=a+b;
                                         }
                                                       if (risposta==4)
                                                       {
                                                       risultato=a-b;
                                                       }
                                                                     else
                                                                     {
                                                                     cout<<"Non hai inserito un numero coerente con le possibilità date"<<endl;
                                                                     }   
   cout<<"il risultato e'"<<risultato<<endl;
   system("pause");
   return 0;


il fatto dell'else funziona e come,è l'altrimenti dell'ultima condizione e in tal caso mi dà risultato 0 (ho azzerato all'inizio il "risultato" per evitare che in caso di errore di digitazione del numero dasse risultati stupidi),adesso provo a inserire un ciclo do while per tornare indietro tramite una domanda "se si vuola inserire altri numeri",in teoria il codice dovrebbe essere così:

do
{
istruzioni gia scritte...
...
...
cout<<"vuoi continuare?(premi un numero)"<<endl<<"1:si"<<endl<<"2:no";
cin>>risposta;
while<risposta2==s)
}

EDIT:
ecco il codice:

Codice: Seleziona tutto
#include <iostream>
using namespace std;
int main()
{
    double a,b,risultato=0;
    int risposta,risposta2;
    do
    {
    cout<<"inserisci a"<<endl;
    cin>>a;
    cout<<"inserisci b"<<endl;
    cin>>b;
    cout<<"cosa vuoi fare?(inserisci un numero)"<<endl<<"1=divisione"<<endl<<"2=moltiplicazione"<<endl<<"3=addizione"<<endl<<"4=sottrazione"<<endl;
    cin>>risposta;
                  if (risposta==1)
                  {
                  risultato= a/b;
                  }
                             if (risposta==2)
                             {
                             risultato= a*b;
                             }
                                         if (risposta==3)
                                         {
                                         risultato=a+b;
                                         }
                                                       if (risposta==4)
                                                       {
                                                       risultato=a-b;
                                                       }
                                                                     else
                                                                     {
                                                                     cout<<"Non hai inserito un numero coerente con le possibilità date"<<endl;
                                                                     }   
   cout<<"vuoi inserire altri numeri?(digita un numero)"<<endl<<"1:Si"<<endl<<"2:No"<<endl;
   cin>>risposta2;
   }             
   while (risposta2==1);                                                   
   cout<<"il risultato e'"<<risultato<<endl;
   system("pause");
   return 0;
}
Avatar utente
Foto Utenterazielmitico
-10 5
Frequentatore
Frequentatore
 
Messaggi: 153
Iscritto il: 23 ott 2012, 22:59

0
voti

[20] Re: C++ programma calcolatrice!

Messaggioda Foto UtentePioz » 5 dic 2012, 19:42

Sei sicuro che il compilatore compili il programma? Il compilatore dovrebbe darti la presenza di un errore.
Codice: Seleziona tutto
cout<<"cosa vuoi fare? (inserisci un numero)"<<endl<<"1=divisione"<<endl<<"2=moltiplicazione"<<endl<<"3=addizione"<<endl<<"4=sottrazione"<<endl<<;

In questa riga hai due << di troppo.
Avatar utente
Foto UtentePioz
629 4 8
Expert
Expert
 
Messaggi: 568
Iscritto il: 11 ago 2011, 21:56

PrecedenteProssimo

Torna a PC e informatica

Chi c’è in linea

Visitano il forum: Nessuno e 127 ospiti