View Full Version : [C++] Primo "Programma" Facilissimo
Ciao a tutti,
Ieri a scuola (faccio 3à supeririore) ho iniziato la prima lezione di programmazione e il prof ci ha scritto alla lavagna questo codice, ma se vado a inserirlo su un compilatore (Dev-C++) e faccio il DEBUG mi dice "File non compilato", voi saprete disicuro dirmi il motivo :)
Ecco il codice:
#include <conio.h>
main ()
{
int NUM1,NUM2,SOM;
cin >> NUM1;
cin >> NUM2;
SOM = NUM1+NUM2;
cont << SOM;
}
Dove sbaglio? Io nel compilatore inserisco esattamente quello sopra...
tomminno
03-11-2010, 10:36
Prova così:
#include <iostream>
int main ()
{
int NUM1,NUM2,SOM;
cin >> NUM1;
cin >> NUM2;
SOM = NUM1+NUM2;
cout << SOM;
return 0;
}
Il return sul main è solo per aderenza agli standard non è obbligatorio, ma auspicabile.
Gli errori nel tuo codice erano l'include sbagliato e il cout scritto male.
E come mai dopo che creo il file .exe
Scrivo un numero tipo 3, poi un altro tipo 2 e dopo mi appare per mezzo secondo il risultato 5 e si chiude subito la schermata nera (quella del programma)
Sbrocca88
03-11-2010, 11:19
prima di return0 scrivi
system("PAUSE");
prima di return0 scrivi
system("PAUSE");
Grazie xD
A cosa è dovuto se mi dice file non compilato con questo codice???
#include <iostream.h>
int main ()
{
int NUM1,NUM2,SOM;
cin >> NUM1;
cin >> NUM2;
SOM = NUM1+NUM2;
cout << SOM;
system("PAUSE");
return 0;
}
Supdario
03-11-2010, 14:05
A cosa è dovuto se mi dice file non compilato con questo codice???
#include <iostream.h>
int main ()
{
int NUM1,NUM2,SOM;
cin >> NUM1;
cin >> NUM2;
SOM = NUM1+NUM2;
cout << SOM;
system("PAUSE");
return 0;
}
La libreria è iostream, non iostream.h, quindi devi fare #include <iostream>
Inoltre devi anche usare il namespace std, quindi il codice diventa così:
#include <iostream>
using namespace std;
int main ()
{
int NUM1,NUM2,SOM;
cin >> NUM1;
cin >> NUM2;
SOM = NUM1+NUM2;
cout << SOM;
system("PAUSE");
return 0;
}
oppure
#include <iostream>
int main ()
{
int NUM1,NUM2,SOM;
std::cin >> NUM1;
std::cin >> NUM2;
SOM = NUM1+NUM2;
std::cout << SOM;
system("PAUSE");
return 0;
}
A te la scelta.
Stessa cosa per entrambi i casi... Quando faccio il debug mi dice File non compilato...
Supdario
03-11-2010, 15:01
Ma scusa, non puoi vedere nel log di generazione qual è l'errore?
Ma scusa, non puoi vedere nel log di generazione qual è l'errore?
Dov'è il log di generazione? Scusa ma non so proprio niente... Ho appena iniziato... Uso Dev-C++...
Ecco l'errore preciso che mi dà:
http://img207.imageshack.us/img207/7929/i11111mmagine.png
l'errore mi sembra abbastanza chiaro: ti dice che cin e cout non sono definite
questo perchè ti sei dimenticato un pezzo:
o scrivi dopo gli include using namespace std; che vuol dire sottindendi il namespace std
oppure scrivi invece di ogni cin e cout
std::cin e std::out
F1r3st0rm
03-11-2010, 15:15
i miei lontani trascorsi con il C++ mi ricordano iostream.h e non iostream ma è ormai tanto tempo che non programmo con il c++.
e in effetti mil log di compilazione sembra dar ragione visto che non riconosce la cout e la cin, poi non saprei mi pare gisuto per il resto.
Supdario
03-11-2010, 16:03
La libreria è iostream, non iostream.h. Se hai degli header che si chiamano "iostream.h", "cstdlib.h", "cstdio.h", ecc... non sono standard ISO C++.
@Loris14: sei veramente sicuro di aver seguito il mio procedimento? Lì non vedo nessun using namespace std o std::
I vostri consigli mi sono serviti e così sono riuscito a fare questo:
#include <iostream>
using namespace std;
int main ()
{
int NUM1,NUM2,SOM;
cout << "SOMMA DI DUE NUMERI";
cout << "\n\n";
cout << "Inserisci Il Primo Numero: ";
cin >> NUM1;
cout << "\n";
cout << "Inserisci Il Secondo Numero: ";
cin >> NUM2;
cout << "\n";
SOM = NUM1+NUM2;
cout << NUM1 << " + " << NUM2 << " = " << SOM;
cout << "\n\n";
system("PAUSE");
return 0;
}
Però ora, sempre a scuola, ho cominciato a fare la funzione IF, e non so perchè ma da quello che ci ha detto il prof. questo codice mi da un errore... Mi dice expected `;' before '}' token
Sapete dirmi come mai?
Il codice è questo:
#include <iostream>
using namespace std;
int main ()
{
int NUM,NPOS;
cin >> NUM;
if (NUM>0)
{
NPOS=NUM;
}
else
{
NPOS=-NUM;
}
cout << NPOS
}
PS: Per ora l'ho fatto senza pause...
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.