Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - help
Forum - C/C++ - help

Avatar
totipianurese (Member)
Pro


Messaggi: 168
Iscritto: 24/06/2008

Segnala al moderatore
Postato alle 19:57
Venerdì, 10/10/2008
Ciao raga, con questo programma, acquisisco un numero e converto tale numero in lettere.
Vorrei però che il numero non sia aquistito come faccio io (cioè un numero alla volta), ma tutto insieme, ad esempio se vorrei inserire quaranta cinque:
scrivo direttamente 45,
invece di scrivere:
4 e poi
5.
questo è il mio codice:
Codice sorgente - presumibilmente C#

  1. #include <iostream>
  2. #include <string.h>
  3. int z,N,I,num,conta,k;
  4. char risp;
  5. int vet[8],numeri[8];
  6. void Unita(void);
  7. void Decine(void);
  8. using namespace std;
  9. string car[9];
  10. string car1[10];
  11. string primi[8];
  12. string meta[8];
  13.  
  14. int main()
  15. {
  16.    conta=0;  
  17.    car[0]="uno";
  18.    car[1]="due";
  19.    car[2]="tre";
  20.    car[3]="quattro";
  21.    car[4]="cinque";
  22.    car[5]="sei";
  23.    car[6]="sette";
  24.    car[7]="otto";
  25.    car[8]="nove";
  26.    car1[0]="dieci";
  27.    car1[1]="undici";
  28.    car1[2]="dodici";
  29.    car1[3]="tredici";
  30.    car1[4]="quattordici";
  31.    car1[5]="quindici";
  32.    car1[6]="sedici";
  33.    car1[7]="diciasette";
  34.    car1[8]="diciotto";
  35.    car1[9]="diciannove";
  36.    numeri[0]=2;
  37.    numeri[1]=3;
  38.    numeri[2]=4;
  39.    numeri[3]=5;
  40.    numeri[4]=6;
  41.    numeri[5]=7;
  42.    numeri[6]=8;
  43.    numeri[7]=9;
  44.    meta[0]="vent";
  45.    meta[1]="trent";
  46.    meta[2]="quarant";
  47.    meta[3]="cinquant";
  48.    meta[4]="sessant";
  49.    meta[5]="settant";
  50.    meta[6]="ottant";
  51.    meta[7]="novant";
  52.    primi[0]="venti";
  53.    primi[1]="trenta";
  54.    primi[2]="quaranta";
  55.    primi[3]="cinquanta";
  56.    primi[4]="sessanta";
  57.    primi[5]="settanta";
  58.    primi[6]="ottanta";
  59.    primi[7]="novanta";
  60.    cout<<"Inserisci il numero di numeri da inserire = ";
  61.    cin>>num;
  62.    for (I=0;I<num;I++)
  63.                         {
  64.                         cout<<"Inserisci "<<I+1<<" numero = ";
  65.                         cin>>vet[I];
  66.                         conta++;
  67.                         }                        
  68.    if (conta==1)
  69.                {
  70.                 I=0;                                              
  71.                 Unita();
  72.                }
  73.    if (conta==2)
  74.                {
  75.                I=0;
  76.                Decine();        
  77.                }
  78.    getchar();
  79.    getchar();
  80. }
  81.  
  82.  void Unita(void)
  83.  {
  84.    switch (vet[I])
  85.                   {
  86.                    case 1:    
  87.                    cout<<car[0];
  88.                    break;
  89.                    case 2:    
  90.                    cout<<car[1];
  91.                    break;
  92.                    case 3:    
  93.                    cout<<car[2];
  94.                    break;
  95.                    case 4:    
  96.                    cout<<car[3];
  97.                    break;
  98.                    case 5:    
  99.                    cout<<car[4];
  100.                    break;
  101.                    case 6:    
  102.                    cout<<car[5];
  103.                    break;
  104.                    case 7:    
  105.                    cout<<car[6];
  106.                    break;
  107.                    case 8:    
  108.                    cout<<car[7];
  109.                    break;
  110.                    case 9:    
  111.                    cout<<car[8];
  112.                    break;
  113.                   }
  114.  }                
  115.   void Decine(void)
  116.   {
  117.    k=0;
  118.    risp=true;    
  119.    if (vet[I]==1)
  120.                 {                      
  121.                  switch (vet[I+1])
  122.                                      {
  123.                                       case 0:
  124.                                       cout<<car1[0];
  125.                                       break;                            
  126.                                       case 1:
  127.                                       cout<<car1[1];
  128.                                       break;
  129.                                       case 2:
  130.                                       cout<<car1[2];
  131.                                       break;
  132.                                       case 3:
  133.                                       cout<<car1[3];
  134.                                       break;
  135.                                       case 4:
  136.                                       cout<<car1[4];
  137.                                       break;
  138.                                       case 5:
  139.                                       cout<<car1[5];
  140.                                       break;
  141.                                       case 6:
  142.                                       cout<<car1[6];
  143.                                       break;
  144.                                       case 7:
  145.                                       cout<<car1[7];
  146.                                       break;
  147.                                       case 8:
  148.                                       cout<<car1[8];
  149.                                       break;
  150.                                       case 9:
  151.                                       cout<<car1[9];
  152.                                       break;                                
  153.                                      }  
  154.                 }
  155.                 else
  156.                  {                  
  157.                   do            
  158.                    if (vet[I]==numeri[k])
  159.                                          {
  160.                                           if (vet[I+1]==1 || vet[I+1]==8)
  161.                                                              {
  162.                                                               cout<<meta[k];
  163.                                                               I=1;
  164.                                                               Unita();
  165.                                                               risp=false;          
  166.                                                              }
  167.                                                              else
  168.                                                              {
  169.                                                               cout<<primi[k];
  170.                                                               I=1;
  171.                                                               Unita();
  172.                                                               risp=false;
  173.                                                              }                  
  174.                                          }
  175.                                          else
  176.                                          k++;                      
  177.                   while(risp);                        
  178.                  }
  179.   }


PM Quote
Avatar
totipianurese (Member)
Pro


Messaggi: 168
Iscritto: 24/06/2008

Segnala al moderatore
Postato alle 21:36
Venerdì, 10/10/2008
grz lo stesso, gia ho risolto. :):)

PM Quote
Avatar
WARRIOR (Ex-Member)
Guru


Messaggi: 627
Iscritto: 30/03/2007

Segnala al moderatore
Postato alle 21:39
Venerdì, 10/10/2008
Come? :k:

PM Quote
Avatar
totipianurese (Member)
Pro


Messaggi: 168
Iscritto: 24/06/2008

Segnala al moderatore
Postato alle 8:22
Sabato, 11/10/2008
no, mi sn imbrogliato, volevo fare riferimento al post "errore riferimento memoria".
questo problema di questo post qui, non so risolverlo per ora.

PM Quote