![]() |
|
||||
Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
Você está aqui: Portugol ::: Desafios e Lista de Exercícios Resolvidos ::: Matemática e Estatística |
Como converter de decimal para números romanos em Portugol - Desafio de Programação Resolvido em PortugolQuantidade de visualizações: 1071 vezes |
|
Pergunta/Tarefa: Escreva um algoritmo Portugol 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 Portugol Webstudio: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
// Converter um número decimal em número romano
programa {
funcao inicio() {
// vamos criar um array com os valores decimais possíveis de
// cada número romano
inteiro valores_numeros_romanos[] = {1000, 900, 500, 400,
100, 90, 50, 40, 10, 9, 5, 4, 1}
// representação dos números romanos
cadeia numeros_romanos[] = {"M", "CM", "D", "CD",
"C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"}
inteiro numero
cadeia resultado
// vamos pedir para o usuário informar um número decimal
escreva("Informe um número decimal: ")
leia(numero)
// para guardar o resultado
resultado = "";
// o número é maior que zero?
se (numero > 0) {
// percorremos o array de valores decimais dos números romanos
para (inteiro i = 0; i <= 12; i++) {
// enquanto o número informado for maior que o valor do
// do número romano atual
enquanto (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
se (resultado == "") {
escreva("O número informado não possui número romano")
}
else {
escreva("O número romano correspondente é: ", resultado)
}
}
}
|
|
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Portugol |
Veja mais Dicas e truques de Portugol |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






