Cod sursa(job #3357554)
| Utilizator | Data | 11 iunie 2026 13:24:04 | |
|---|---|---|---|
| Problema | Ridicare la putere in timp logaritmic | Scor | 0 |
| Compilator | c-64 | Status | done |
| Runda | Arhiva educationala | Marime | 0.33 kb |
#include <stdio.h>
float exp_log_rec(float x, int n){
if(n < 0) return exp_log_rec(1.0 / x, -n);
if(n == 0) return 1;
if(n % 2 == 0) return exp_log_rec(x*x, n/2);
if(n % 2 == 1) return x * exp_log_rec(x*x, n/2);
}
int main(void)
{
float p,n;
scanf("%f %f",&n,&p);
printf("%.2f",exp_log_rec(n,p));
return 0;
}