Oppure

Loading
19/04/09 14:30
matteog
/ roman prova.cpp : definisce il punto di ingresso dell'applicazione console.
//




#include "stdafx.h"
#include <iostream>
#include <string.h>
using namespace std;
int main()
{
    int vetto[10]={1,2,3,4,5,6,7,8,9,10};
    char vett[1000],I=0,N=0;
    char A='1',B='2',C='3',D='4';
    cout<<"da quanti valori è composto il numero? ";
    cin>>N;
cout<<"viii";
    for(I=0;I<N;I++)
    {
        cout<<"inserisci: ";
        cin>>vett[I];
    if(strcmp(vett[I],'1')==0)
    {
        cout<<"I";
    }
    else if(strcmp(vett[I],'2')==0)
    {
        cout<<"II";
    }
    else if(strcmp(vett[I],'3')==0)
    {
        cout<<"III";
    }
    else if(strcmp(vett[I],'4')==0)
    {
        cout<<"IV";
    }
else if(strcmp(vett[I],'5')==0)
    {
        cout<<"V";
    }
    else if(strcmp(vett[I],'6')==0)
    {
        cout<<"VI";
    }
else if(strcmp(vett[I],'7')==0)
    {
        cout<<"VII";
    }
else if(strcmp(vett[I],'8')==0)
    {
        cout<<"VIII";
    }
else if(strcmp(vett[I],'9')==0)
    {
        cout<<"IX";
    }
else if(strcmp(vett[I],'10')==0)
    {
        cout<<"X";
    }
    }
    system("pause";);
    return 0;
}
conversione da numeri decimali a romani
non mi fà il controllo con la strcmp mi sapete spiegare il mtivo e come modificarlo???
potete anche dirmi cfome ottimizzarlo e fare la conversione anche per le migliaia e le centinaia grazie mille a chinque mi risponderà!!!!!!!!!!!!!!!
aaa
19/04/09 17:23
lorenzo
senti, te lo ripeto per l'ennesima volta...la strcmp deve ricevere come parametri 2 STRINGHE!!!!!

Se usi l'apice singolo dai in ingresso un carattere.
Ma te le sei studiate le differenze tra stringhe e caratteri oppure hai iniziato a scrivere codice a caso?


EDIT: non avevo visto che anche vett[i] è un char. QUindi è anche più errato. Come ti avevo spiegato in uno dei post precedenti, per uguagliare due char basta usare ==
Ultima modifica effettuata da lorenzo 19/04/09 18:06
aaa