Desafio

Galera, teve um desafio na minha na faculdade onde ninguém conseguiu fazer…

Construa um sub-algoritmo que recebe uma base e um expoente, e recursivamente calcula e
retorna o valor de Base Expodencial . OBS: Você não pode utilizar o operador de ‘*’.
Ao final, esses sub-algoritmos devem ser chamados pela função principal.

OBS: Ainda estou no 1 primeiro semestre

Aqui está a ideia.

Uma multiplicação é uma soma recursiva de valores iguais (3x3 = 3+3+3)
Uma exponeciação é um produto recursivo de valores iguais (3³ = 333), que nada mais é também que uma multiplicação de multiplicação (ou uma soma recursiva de uma soma recursiva de valores iguais).

Como não podemos usar multiplicação diretamente, devemos utilizar somente soma para chegar ao resultado final.
Lembrando que esses algoritmos não está em portugol oficial, eu fiz do jeito que eu me lembrava. Faça vc ai do jeito correto.

 funcao multiplicar ( inteiro a, inteiro b) retorna inteiro
     inteiro produto = 0;
     se b <> 0 entao faca
      produto = multiplica ( a , b -1 );
     fimse
     retorna produto;
    fim

funcao exp ( inteiro base, inteiro expoente ) retorna inteiro
 inteiro total  = 1;
 se expoente <> 0 entao faca
  total = multiplica ( expoente( base,expoente -1 ) , base );
 fimse
 retorne total;
fim

Porgrama Principal
inteiro base, inteiro expoente;
escreva ("digite a base");
leia (base);
escreva ("digete o expoente");
leia (expoente);
escreva ("o resultado e : " , expoente ( base, expoente );