Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    23

    [C++] Problema con esercizio numeri romani

    == Input ==

    1
    2
    20
    99
    0

    == Output ==
    1: 1 i, 0 v, 0 x, 0 l, 0 c
    2: 3 i, 0 v, 0 x, 0 l, 0 c
    20: 28 i, 10 v, 14 x, 0 l, 0 c
    99: 140 i, 50 v, 150 x, 50 l, 10 c

    codice:
    #include <iostream>
    using namespace std;
    
    
    
    int main() {
    	int cont=0;
    	int numero;
    
    	int dim= 5;
    
    	const int N[5]={1, 5, 10, 50, 100};
    	const char R[5]={'I', 'V', 'X', 'L', 'C'};
    
    
    
    	cout<<"numero"<<endl;
    	cin>>numero;
    
    	while(numero > 0 && numero <= 100)
    	{
    	for(int i=0; i<dim; i++)
    	{
    		cont=0;
    		if(numero / N[dim-1-i] < 1)
    
    			cout<<cont<<R[dim-1-i]<<endl;
    
    		else if(numero / N[dim-1-i] >= 1)
    			{
    			
    			cont=numero / N[dim-1-i];
    		cout<<cont<<R[dim-1-i]<<endl;
    		numero= numero - (cont *  N[dim-1-i]);
    			}
    
    
    	}
    
    	}
    
    
    
    
    	return 0;
    }
    Funziona con tutti i numeri che gli do, tranne per i numeri che cominciano con 4 e 9... 24, 44 , 49, 99.....

    Io non baderei agli input ed output..sono sbagliati di grossissimo o no?

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Non ho capito questo output


    1: 1 i, 0 v, 0 x, 0 l, 0 c
    2: 3 i, 0 v, 0 x, 0 l, 0 c
    20: 28 i, 10 v, 14 x, 0 l, 0 c
    99: 140 i, 50 v, 150 x, 50 l, 10 c

    e mi sembra che funzioni per i numeri che hai indicato ...

    Facci capire ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    23
    Originariamente inviato da oregon
    Non ho capito questo output


    1: 1 i, 0 v, 0 x, 0 l, 0 c
    2: 3 i, 0 v, 0 x, 0 l, 0 c
    20: 28 i, 10 v, 14 x, 0 l, 0 c
    99: 140 i, 50 v, 150 x, 50 l, 10 c
    Nemmeno io...ma stava nel testo dell'esercizio -.-

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Strano testo ...

    Comunque, per i valori che hai indicato (99, 49 ...) mi pare che funzioni ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    23
    Originariamente inviato da oregon
    Strano testo ...

    Comunque, per i valori che hai indicato (99, 49 ...) mi pare che funzioni ...
    No, questo è il risultato:

    numero
    49

    0C
    0L
    4X
    1V
    4I

    Invece dovrebbe essere XLIX

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Sì, il programma calcola correttamente il numero di segni ma non applica la regola ...

    Nel caso tu abbia 4 segni uguali (4 I, 4 X) devi applicare la regola ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    23
    Originariamente inviato da oregon
    Sì, il programma calcola correttamente il numero di segni ma non applica la regola ...

    Nel caso tu abbia 4 segni uguali (4 I, 4 X) devi applicare la regola ...
    Mi scusi, può essere più chiaro?

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Guarda in questo thread

    http://forum.html.it/forum/showthrea...readid=1034323

    la soluzione di

    andbin
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2011
    Messaggi
    23
    Originariamente inviato da oregon
    Guarda in questo thread

    http://forum.html.it/forum/showthrea...readid=1034323

    la soluzione di

    andbin
    Grazie ho visto. Ma il mio è quasi funzionante del tutto. Mancano solo i controlli su quei casi del 4 e del 9.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.