Newsgroup: it.comp.lang.c++
Titolo: piccolo aiuto

  Ciao scusate avrei ancora bisogno del vostro aiuto ho completato il
programma per criptare i numeri ma non avendo mai usato tanti if else
assieme mi trovo con un errore in una linea che non riesco a risolvere,
potreste darmi un aiuto a capire dove ho sbagliato?
#include <iostream.h>
int main()
{
int number,n1,n2,n3,n4,c1,c2,c3,c4,reverse;
cout << "immetti un numero di 4 cifre:";
cin >> number;
cout << " conferma se il numero e' crittografato o no(1=si : 0=no): ";
cin >> reverse;
  if (reverse==1) {
  n1=number/1000;
  n2=number%1000/100;
  n3=number%100/10;
  n4=number%10;
  if(n1>=7)
  c1=(n1-7)
  else
  c1=(n1+3)
  if(n2>=7)
  c2=(n2-7)
  else
  c2=(n2+3)
 if(n3>=7)
  c3=(n3-7)
  else
  c3=(n3+3)
 if(n4>=7)
  c4=(n4-7)
  else
  c4=(n4+3)
cout << "numero_immesso: "<< n1 << " " << n2 << " " << n3 << " " << n4
<< endl << endl;
cout << "numero decrittografato: " << c1 << " " << c2 << " " << c3 << " " <<
c4
<<endl << endl;
  }
else if(reverse==0) {
n1=number/1000;
n2=number%1000/100;
n3=number%100/10;
n4=number%10;
c1=(n1+7)%10;
c2=(n2+7)%10;
c3=(n3+7)%10;
c4=(n4+7)%10;
cout << "numero immesso: "<< n1 << " " << n2 << " " << n3 << " " << n4
<<endl << endl;
cout << "numero crittografato: " << c1 << " " << c2 << " " << c3 << " " <<
c4 << endl;
}
return 0;
}
Grazie per la cortese attenzione.
 
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 potreste darmi un aiuto a capire dove ho sbagliato?
Un po di indentazione non sarebbe male....!!!
Che errore ti da su che linea?

 ha
scritto:

  Chiedo scusa ,l'errore che mi da e' : E2379 Statement missing ; in function
main() at line 22 ,credo sia un errore di parentesi graffe ma mi trovo
spiazzato.
Grazie per la cortese attenzione .




Ops che idiota riposto il codice segnando la linea scusatemi:
#include <iostream.h>
int main()
{
int number,n1,n2,n3,n4,c1,c2,c3,c4,reverse;
cout << "immetti un numero di 4 cifre:";
cin >> number;
cout << " conferma se il numero e' crittografato o no(1=si : 0=no): ";
cin >> reverse;
  if (reverse==1) {
  n1=number/1000;
  n2=number%1000/100;
  n3=number%100/10;
  n4=number%10;
  if(n1>=7)
  c1=(n1-7)
  else // E2379 Statement missing ; in function main () at line 22
  c1=(n1+3)





  }

c1=(n1+7)%10;
c2=(n2+7)%10;
c3=(n3+7)%10;
c4=(n4+7)%10;


}
return 0;
}


 main() at line 22
Infatti come ti dice manca qualche " ; "
 #include <iostream.h>
 int main()
 {
 int number,n1,n2,n3,n4,c1,c2,c3,c4,reverse;
 cout << "immetti un numero di 4 cifre:";
 cin >> number;
 cout << " conferma se il numero e' crittografato o no(1=si : 0=no): ";
 cin >> reverse;
   if (reverse==1) {
   n1=number/1000;
   n2=number%1000/100;
   n3=number%100/10;
   n4=number%10;
   if(n1>=7)
   c1=(n1-7);  // eccone uno qui manca il ; e te lo aggiungo
   else // E2379 Statement missing ; in function main () at line 22
   c1=(n1+3);    //stesso errore di prima;
   if(n2>=7)
   c2=(n2-7);      //ancora
   else
   c2=(n2+3);     //ancora
  if(n3>=7)
   c3=(n3-7);     //ancora
   else
   c3=(n3+3);     //ancora
  if(n4>=7)
   c4=(n4-7);     //ancora
   else
   c4=(n4+3);     //ancora
 cout << "numero_immesso: "<< n1 << " " << n2 << " " << n3 << " " << n4
 << endl << endl;
 cout << "numero decrittografato: " << c1 << " " << c2 << " " << c3 << " "
<<
 c4 <<endl << endl;
   }
 else if(reverse==0) {
 n1=number/1000;
 n2=number%1000/100;
 n3=number%100/10;
 n4=number%10;
 c1=(n1+7)%10;
 c2=(n2+7)%10;
 c3=(n3+7)%10;
 c4=(n4+7)%10;
 cout << "numero immesso: "<< n1 << " " << n2 << " " << n3 << " " << n4
 <<endl << endl;
 cout << "numero crittografato: " << c1 << " " << c2 << " " << c3 << " " <<
 c4 << endl;
 }
 return 0;
 }
 Avevi dimenticato una serie di ; , non so che compilatore usi ma in genere
sono abbastanza precisi nel segnalare questo tipo di errori basta solo
imparare a leggere i messaggi del compilatore che magari per chi inizia non
è semplice sopratutto se l'inglese non è il tuo forte, ma piano piano... ci
riesci.
Ciao,
Saluti,
Amtonio.

   c1=(n1+3)
Mancano i ";".
Puoi anche evitare gli if e scrivere
  c1 = (n1 + 3) % 10;
 
        Mauro


     Mii che vergogna come ho fatto a dormire tanto:((
Grazie a tutti per l'aiuto^_^
