terça-feira, 2 de dezembro de 2014

Exercício com Subprogramas - Numeração Romana

Fazer um programa no VisuAlg que dado um número entre 1 e 9 escreva a correspondente representação em numeração romana.

O programa principal deve ler o número, validar se está dentro do intervalo pretendido e em seguida chamar uma função, passando o número lido como parâmetro. A função retorna a cadeia de caracteres correspondente à representação em numeração romana. Se o número lido estiver fora do intervalo, o programa principal apresenta uma mensagem de erro.

Apresentar a resolução num comentário a este post.

25 comentários:

Ronaldo Veloso disse...
Este comentário foi removido pelo autor.
Ronaldo Veloso disse...

algoritmo "Numeros"

var
num: inteiro
num2: caractere

funcao num3( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( num )
num2 <- num3( num )
escreval( num2)
fimalgoritmo

Sérgio Torres disse...

algoritmo "Numeros Romanos"

var
num: inteiro
num2: caractere

funcao num3( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 7" )
leia( num )
num2 <- num3( num )
escreval( num2)
fimalgoritmo

Diogo Matos disse...
Este comentário foi removido pelo autor.
Anónimo disse...

algoritmo "rumanos"
// Função :numeros rumanos
// Autor :nuno sol
// Data : 12/2/2014
// Seção de Declarações

var
num: inteiro
num2: caractere

funcao num3( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 7" )
leia( num )
num2 <- num3( num )
escreval( num2)
fimalgoritmo

Anónimo disse...

algoritmo "numeracaoromana"

var
numeracao: inteiro
num: caractere

funcao num2( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds<-"VIII"

outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( numeracao )
num <- num2( numeracao)
escreval( "Em numeração romana o número é ", num )
fimalgoritmo

RUben Morim nº24

Diogo Matos disse...

algoritmo "semnome"
var
n: inteiro
n2: caractere

funcao n3( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 7" )
leia( n )
n2 <- n3( n )
escreval( n2)
fimalgoritmo

Diogo Matos

Ricardo Lage disse...

algoritmo "semmnome"
// Função :
// Autor :
// Data : 02/12/2014
// Seção de Declarações

var
a: inteiro
b: caractere

funcao c( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( a )
b <- c( a )
escreval( b)
fimalgoritmo


Ricardo Lage n° 21

Carlos Correia disse...
Este comentário foi removido pelo autor.
Rui Monte disse...

algoritmo "semnome"
var
x:inteiro
a:caractere
funcao R(y:inteiro):caractere
var
t:caractere
inicio
escolha y
caso 1
t<-"I"
caso 2
t<-"II"
caso 3
t<-"III"
caso 4
t<-"IV"
caso 5
t<-"V"
caso 6
t<-"VI"
caso 7
t<-"VII"
caso 8
t<-"VIII"
caso 9
t<-"IX"
fimescolha
retorne t
fimfuncao
inicio
Escreva ("Insira um número (entre 1 e 9): ")
leia (x)
a<-R(x)
escreval ("Em numeração romana: ",a)

fimalgoritmo

Carlos Correia disse...

algoritmo "numeraçao romana"

var
nume: inteiro
numero1: caractere

funcao numero2( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 a 9" )
leia( nume )
numero1 <- numero2( nume )
escreval( "O número em numeração romana é: ", numero1 )
fimalgoritmo

Tiago Monteiro disse...

algoritmo "Numeros"
var
a: inteiro
a2: caractere
funcao a3( d: inteiro) : caractere
var
pd: caractere
inicio
escolha d
caso 1
pd <- "I"
caso 2
pd <- "II"
caso 3
pd <- "III"
caso 4
pd <- "IV"
caso 5
pd <- "V"
caso 6
pd <- "VI"
caso 7
pd <- "VII"
caso 8
pd <- "VIII"
caso 9
pd <- "IX"
outrocaso
pd <- "Valor inválido"
fimescolha
retorne pd
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( a )
a2 <- a3( a )
escreval( a2)
fimalgoritmo

Anónimo disse...

var
num: inteiro
num2: caractere

funcao num3( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( num )
num2 <- num3( num )
escreval( num2)
fimalgoritmo

Carlos Lopes disse...

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( num )
num2 <- num3( num )
escreval( num2)
fimalgoritmo

Anónimo disse...

var
num: inteiro
num2: caractere

funcao num3( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( num )
num2 <- num3( num )
escreval( num2)
fimalgoritmo

JOSÉ RICARDO Nº11
PAULO NEVES Nº 18

Anónimo disse...

algoritmo "tabuada"
var
x: inteiro
y: caractere

funcao z( t: inteiro) : caractere


inicio
escolha t
caso 1
t <- "I"
caso 2
t <- "II"
caso 3
t <- "III"
caso 4
t <- "IV"
caso 5
t <- "V"
caso 6
ds <- "VI"
caso 7
t <- "VII"
caso 8
t <- "VIII"
caso 9
t <- "IX"
outrocaso
t <- "Valor inválido"
fimescolha

retorne t
fimfuncao
inicio
escreval( "Insira um número entre 1 e 7" )
leia( n )
y <- z( x )
escreval( y)
fimalgoritmo


fimalgoritmo

Pedro Carreira nº19

Anónimo disse...

var
num: inteiro
num2: caractere

funcao num3( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( num )
num2 <- num3( num )
escreval( num2)
fimalgoritmo

RICARDO NOVA Nº 22

Anónimo disse...

algoritmo "semnome"
// Função :
// Autor :Marcelo Cruz
// Data : 02/12/2014
// Seção de Declarações

var
numero: inteiro
x: caractere

funcao num3( d: inteiro) : caractere)

var
dse: caractere
inicio
escolha d
caso 1
ds<- "I"
caso 2
ds<- "II"
caso 3
ds<- "III"
caso 4
ds<- "IV"
caso 5
ds<- "V"
caso 6
ds<- "VI"
caso 7
ds<- "VII"
caso 8
ds<- "VIII"
caso 9
ds<- "IX"
outrocaso
ds<- "Número inválido"
fimescolha
retorne ds
fimfuncao
inicio
escreval( "Digite um número entre 1 e 7" )
leia( numero )
x <- num3( numero )
escreva( x)
fimalgoritmo

Carlos Escrivães disse...

algoritmo "Numeração"

var
a: inteiro
b: caractere

funcao c( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( a )
b <- c( a )
escreval( b)
fimalgoritmo

Anónimo disse...

algoritmo "Numeros"

var
num: inteiro
num2: caractere

funcao num3( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor desconhecido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( num )
num2 <- num3( num )
escreval( num2)
fimalgoritmo

Luis Quinta nº14

Tiago Parente disse...

algoritmo
var
num: inteiro
num1: caractere
funcao num1( d: inteiro) : caractere
var
ds: caractere
inicio
escolha ds
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
fimescolha

Anónimo disse...

var
ds: caractere
inicio
escolha e
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha


retorne e
inicio
escreval( "Insira um número entre 1 e 7" )
leia( n )
y <- z( x )
escreval( y)
fimalgoritmo

LUIS CARREIRA Nº13

Anónimo disse...

algoritmo "FOR ROME EMPIRE!"
// Autor: Diogo Pereira nº4

var
num: inteiro
num2: caractere

funcao num3(d:inteiro) :caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Numero Invalido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um numero entre 1 e 9 para traduzir para numeracao romana" )
leia( num )
num2 <- num3( num )
escreval( num2)
fimalgoritmo

Carlos Lopes disse...

algoritmo "semnome"
// Função :
// Autor :
// Data : 02/12/2014
// Seção de Declarações
var
num: inteiro
ds: caractere
funcao num3(d:inteiro) :caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( num )
num2 <- num3( num )
escreval( num2)
fimalgoritmo

Anónimo disse...

corrigido

algoritmo "Numeração romana"

var
n1: inteiro
n2: caractere

funcao n3( d: inteiro) : caractere

var
ds: caractere
inicio
escolha d
caso 1
ds <- "I"
caso 2
ds <- "II"
caso 3
ds <- "III"
caso 4
ds <- "IV"
caso 5
ds <- "V"
caso 6
ds <- "VI"
caso 7
ds <- "VII"
caso 8
ds <- "VIII"
caso 9
ds <- "IX"
outrocaso
ds <- "Valor inválido"
fimescolha

retorne ds
fimfuncao
inicio
escreval( "Insira um número entre 1 e 9" )
leia( n1 )
n2 <- n3( n1 )
escreval( n2)
fimalgoritmo
Pedro Carreira nº19