Você está aqui: C++ ::: Desafios e Lista de Exercícios Resolvidos ::: Matemática e Estatística |
Como converter de decimal para números romanos em C++ - Exercícios Resolvidos de C++Quantidade de visualizações: 859 vezes |
|
Pergunta/Tarefa: Escreva um programa C++ que pede para o usuário informar um número inteiro decimal e converta-o para o número romano correspondente. Sua saída deverá ser parecida com: Informe um número decimal: 2023 O número romano correspondente é: MMXXIII Veja a resolução comentada deste exercício usando C++: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
#include <iostream>
#include <string>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
int numero;
string resultado = ""; // para guardar o resultado
// vamos criar um array com os valores decimais possíveis de
// cada número romano
int valores_numeros_romanos[13] = {1000, 900, 500, 400,
100, 90, 50, 40, 10, 9, 5, 4, 1};
// representação dos números romanos
string numeros_romanos[13] = {"M", "CM", "D", "CD",
"C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};
// vamos pedir para o usuário informar um número decimal
cout << "Informe um número decimal: ";
cin >> numero;
// o número é maior que zero?
if (numero > 0) {
// percorremos o array de valores decimais dos números romanos
for(int i = 0; i < 13; i++){
// enquanto o número informado for maior que o valor do
// do número romano atual
while(numero >= valores_numeros_romanos[i]){
// reduz o número informado
numero = numero - valores_numeros_romanos[i];
// concatena o número romano e continua o cálculo
resultado = resultado + numeros_romanos[i];
}
}
}
// mostramos o resultado
if(resultado == ""){
cout << "O número informado não possui número romano" << endl;
}
else{
cout << "O número romano correspondente é: " << resultado << endl;
}
cout << "\n" << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
|
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
|
Java - Estruturas de Dados em Java - Como obter o nó com menor valor em uma árvore binária de busca em Java |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







