Algoritimo Lote 1
algoritmo "soma"
var n:inteiro funcao f_soma(num:inteiro):inteiro var total:inteiro
inicio se (num = 100) entao retorne(100) senao total := num + f_soma(num + 1) retorne(total) fimse fimfuncao
inicio n := 1 escreval(f_soma(n)) fimalgoritmo
Teste de Mesa n 1
num
1
2
3
4
5
...
100
total
1
3
6
10
15
...
5050
Massa de dados
2, 8 e 9
Saída
O maior e múltiplo do menor
O maior não e múltiplo do menor
2) Coletar um número no programa principal e envia-lo a partir de uma função. Calcule, retorne e mostre a soma da série: 1 + 1/2 + 1/3 + ... 1/n.
algoritmo "serie"
var num, num1, num2:real
funcao f_serie(n, n1, n2:real):real var res:real
inicio
se n2 = n entao retorne(n) senao res := n1/n2 + f_serie(n,n1,n2 + 1) retorne(res) fimse fimfuncao
inicio num1 := 1 num2 := 1 escreva("Entre com um n·mero: ") leia(num) escreval(f_serie(num,num1,num2)) fimalgoritmo Teste de Mesa num 5
num1
1
num2
1
n
5
5
5
5
5
n1
1
1
1
1
1
n2
1
2
3
4
5
Res = 1/1 + ( 1/2 + (1/3 + (1/4 + (1/5))))
Massa de dados
2, 8 e 9
Saída
2,38
3) Coletar a base e o exponencial no programa principal e passa-lo como parâmetro em uma função recursiva. Calcule, retorne e mostre a potencia deste valor.
algoritmo "expoente"
var base, expoente: real
funcao f_calc(bse, expte: real): real var n, r: real inicio se (n = expte) entao retorne(expte) senao r := bse * (f_calc(bse, n+1)) retorne r fimse fimfuncao
inicio escreva("Entre com a base: ") leia(base) escreva("Entre com o expoente: ") leia(expoente) escreval(f_calc(base,expoente)) fimalgoritmo Teste de Mesa
Base
2
Expoente
5
Bse
2