Buscar

Atividade 6 - Algoritmos II

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

ALGORITMOS II
ATIVIDADES DA AULA 06
ALUNO: RHUAN PABLO DA SILVA
Para a construção dos algoritmos sugiro a utilização do programa Visualg, porém não
é obrigatório. Todos os algoritmos desta atividade deverão ser enviados em um arquivo
com um dos seguintes formatos: .doc, .docx ou .pdf.
1. Faça um algoritmo contendo uma função recursiva para calcular a soma de dois
números naturais através de incrementos sucessivos. O módulo principal do algoritmo
deverá fazer a leitura de n e apresentar o resultado.
Exemplo: 5 + 3 = (((5+1)+1)+1).
Algoritmo "soma recursiva"
Var
n1,n2,final: inteiro
funcao soma(x,y: inteiro):inteiro
var
resp: inteiro
inicio
se y = 0 entao
retorne resp
senao
resp <- x + 1 + soma(x-x,y-1)
fimse
retorne resp
fimfuncao
Inicio
repita
escreva ("Digite um número natural para n1: ")
leia(n1)
ate n1 >=0
repita
escreva ("Digite um número natural para n2: ")
leia(n2)
ate n2 >=0
se n2 = 0 entao //Condicaopara retornar o valor de n1 digitado pelo usuario
final <- n1 //Pois se fosse para a funcao como zero, a resposta final
senao //sempre seria zero. independente do valor digitado de n1
final <- soma(n1,n2)
fimse
escreval ("A soma entre ",n1," e ",n2, " é de: ", final)
fimalgoritmo
2. Faça um algoritmo contendo uma função recursiva para fazer a multiplicação de dois
números naturais, através de somas sucessivas. O módulo principal do algoritmo
deverá fazer a leitura de n e apresentar o resultado.
Exemplo 4 * 3 = ((4 + 4) + 4).
Algoritmo "multiplicacao recursiva"
Var
n1,n2,final: inteiro
funcao mult(x,y: inteiro):inteiro
var
resp: inteiro
inicio
se y = 0 entao
retorne resp
senao
resp <- x + mult(x,y-1)
fimse
retorne resp
fimfuncao
Inicio
repita
escreva ("Digite um número natural para n1: ")
leia(n1)
ate n1 >=0
repita
escreva ("Digite um número natural para n2: ")
leia(n2)
ate n2 >=0
final <- mult(n1,n2)
escreval ("A multiplicacao entre ",n1," e ",n2, " é de: ", final)
Fimalgoritmo

Outros materiais