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

[21] Re: C++ programma calcolatrice!

Messaggioda Foto Utentesimo85 » 5 dic 2012, 19:50

razielmitico ha scritto:ecco il codice:

Cominciamo ad intendarlo un po' meglio e renderlo un po' più comprensibile, no?

Codice: Seleziona tutto
#include <iostream>

using namespace std;

int main(void)
{
   double a = 0, b = 0, risultato = 0;
   int risposta = 0, risposta2 = 0;

   do
   {
      cout << "inserisci a" << endl;
      cin >> a;
     
      cout << "inserisci b" << endl;
      cin >> b;

      cout << "cosa vuoi fare? (inserisci un numero)" << endl;
      cout << "1 = divisione" << endl;
      cout << "2 = moltiplicazione" << endl;
      cout << "3 = addizione" << endl;
      cout << "4 = sottrazione" << endl;

      cin >> risposta;

      if (risposta == 1)
         risultato = a / b;
      else if (risposta == 2)
         risultato = a * b;
      else if (risposta == 3)
         risultato = a + b;   
      else 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;
      cout << "1:Si - 2:No" << endl;
     
      cin >> risposta2;
   }       
   while (risposta2 == 1);                                                   
 
   cout << "il risultato e'" << risultato << endl;
   system("pause");
   return 0;
}
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[22] Re: C++ programma calcolatrice!

Messaggioda Foto Utenterazielmitico » 5 dic 2012, 19:57

Pioz ha scritto: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.


avevo gia corretto prima questo errore...


Ho sistemato il codice,in effetti così è molto meglio XD,ma continua a non funzionare ò_ò
Avatar utente
Foto Utenterazielmitico
-10 5
Frequentatore
Frequentatore
 
Messaggi: 153
Iscritto il: 23 ott 2012, 22:59

3
voti

[23] Re: C++ programma calcolatrice!

Messaggioda Foto Utentexyz » 5 dic 2012, 20:00

Faccio presente che la seguente istruzione non è multipiattaforma (oltre a mancare l'include cstdlib):

Codice: Seleziona tutto
system("pause");

rende il codice eseguibile senza errore sui sistemi operativi che derivano dal MS-DOS compreso MS-Windows.

Nei programmi su linea di comando è buona norma non mettere la pausa prima di uscite :evil:
Avatar utente
Foto Utentexyz
6.864 2 4 6
G.Master EY
G.Master EY
 
Messaggi: 1778
Iscritto il: 5 dic 2009, 18:37
Località: Italy Turin

0
voti

[24] Re: C++ programma calcolatrice!

Messaggioda Foto Utenterazielmitico » 5 dic 2012, 20:07

giusto! XD quindi così:

Codice: Seleziona tutto
#include <iostream>

using namespace std;

int main(void)

{
   double a = 0, b = 0, risultato = 0;
   int risposta = 0, risposta2 = 0;

   do
   {
      cout << "inserisci a" << endl;
      cin >> a;
     
      cout << "inserisci b" << endl;
      cin >> b;

      cout << "cosa vuoi fare? (inserisci un numero)" << endl;
      cout << "1 = divisione" << endl;
      cout << "2 = moltiplicazione" << endl;
      cout << "3 = addizione" << endl;
      cout << "4 = sottrazione" << endl;

      cin >> risposta;

      if (risposta == 1)
         risultato = a / b;
      else if (risposta == 2)
         risultato = a * b;
      else if (risposta == 3)
         risultato = a + b;   
      else 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;     

      cout << "vuoi inserire altri numeri?(digita un numero)" << endl;
      cout << "1:Si - 2:No" << endl;
     
      cin >> risposta2;
   }       
   while (risposta2 == 1);                                                   
}


ma in teoria la stringa di comandi "system ("pause"); return 0;" non posso eliminarla? tanto c'è la domanda e il programma non si chiude immediatamente,o sbaglio?
Avatar utente
Foto Utenterazielmitico
-10 5
Frequentatore
Frequentatore
 
Messaggi: 153
Iscritto il: 23 ott 2012, 22:59

1
voti

[25] Re: C++ programma calcolatrice!

Messaggioda Foto Utentesimo85 » 5 dic 2012, 20:18

razielmitico ha scritto:la stringa di comandi "system ("pause"); return 0;" non posso eliminarla?

system("pause") la puoi buttare nel cestino di Wincozza e sostituirla con un input da tastiera.

Il return serve per ritornare un valore al sistema operativo. Un valore uguale a 0 vuol dire che il programma è terminato senza errori, mentre un valore diverso da zero vuol dire che è terminato con qualche errore.
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[26] Re: C++ programma calcolatrice!

Messaggioda Foto Utenterazielmitico » 5 dic 2012, 20:47

so a che servono tutti e due,tenevo system ("pause") per evitare che si chiudesse immediatamente,ma visto che dopo c'è la domanda "vuoi inserire altri numeri?" non si chiude quindi posso eliminarli!
Ma perché non funge lo stesso? XD
Avatar utente
Foto Utenterazielmitico
-10 5
Frequentatore
Frequentatore
 
Messaggi: 153
Iscritto il: 23 ott 2012, 22:59

1
voti

[27] Re: C++ programma calcolatrice!

Messaggioda Foto Utentesimo85 » 5 dic 2012, 21:03

Se sai cosa serve perché metti il return a metà corpo del main?

Funge o non funge, si dice funziona o non funziona.
Avatar utente
Foto Utentesimo85
30,9k 7 12 13
Disattivato su sua richiesta
 
Messaggi: 9927
Iscritto il: 30 ago 2010, 4:59

0
voti

[28] Re: C++ programma calcolatrice!

Messaggioda Foto Utenterazielmitico » 5 dic 2012, 21:21

gohan ha scritto:Se sai cosa serve perché metti il return a metà corpo del main?

Funge o non funge, si dice funziona o non funziona.


ma perché so la teoria ma non molto bene la pratica,la mia proff non è neanche una cima nel far capire certe cose.Andando a rigor di logica il system dovrebbe essere un pretesto per evitare che tutto sparisca immediatamente,così da vedere l'outputi,ma nelle condizioni in cui sono,visto che c'è una domanda dopo la vista a schermo dell'outputo non dovrebbe servirmi,quindi lo elimino:

ecco il codice:

Codice: Seleziona tutto
#include <iostream>

using namespace std;

int main(void)

{
   double a = 0, b = 0, risultato = 0;
   int risposta = 0, risposta2 = 0;

   do
   {
      cout << "inserisci a" << endl;
      cin >> a;
     
      cout << "inserisci b" << endl;
      cin >> b;

      cout << "cosa vuoi fare? (inserisci un numero)" << endl;
      cout << "1 = divisione" << endl;
      cout << "2 = moltiplicazione" << endl;
      cout << "3 = addizione" << endl;
      cout << "4 = sottrazione" << endl;

      cin >> risposta;

      if (risposta == 1)
         risultato = a / b;
      else if (risposta == 2)
         risultato = a * b;
      else if (risposta == 3)
         risultato = a + b;   
      else 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;
   
         

      cout << "vuoi inserire altri numeri?(digita un numero)" << endl;
      cout << "1:Si - 2:No" << endl;
     
      cin >> risposta2;
   }       
   while (risposta2 == 1);
      return 0;                                                 
}


ma perché non funziona lo stesso? non mi si apre nulla (credo perché faccia tutto velocemente),se inserisco il comando "system" e lo apro mi da subito "premere un tasto per continuare..."
Avatar utente
Foto Utenterazielmitico
-10 5
Frequentatore
Frequentatore
 
Messaggi: 153
Iscritto il: 23 ott 2012, 22:59

0
voti

[29] Re: C++ programma calcolatrice!

Messaggioda Foto UtentePioz » 5 dic 2012, 21:42

Boh, prova a fare un nuovo progetto in una cartella a parte, magari stai aprendo o compilando l'exe sbagliato e non te ne accorgi.
perché non saprei cosa dirti
Avatar utente
Foto UtentePioz
629 4 8
Expert
Expert
 
Messaggi: 568
Iscritto il: 11 ago 2011, 21:56

0
voti

[30] Re: C++ programma calcolatrice!

Messaggioda Foto Utenterazielmitico » 5 dic 2012, 22:01

ok grazie,adesso provo

EDIT: può essere che c'è un errore nella scrittura del ciclo do while? non vuole propio partire!
Avatar utente
Foto Utenterazielmitico
-10 5
Frequentatore
Frequentatore
 
Messaggi: 153
Iscritto il: 23 ott 2012, 22:59

PrecedenteProssimo

Torna a PC e informatica

Chi c’è in linea

Visitano il forum: Nessuno e 34 ospiti