Boa tarde, estou tendo certa dificuldade com um problema que me foi passado pelo meu professor.
Segundo o exercício preciso fazer um programa que calcule (1/2) elevado a n inteiro, com n dado pelo usuário, e não posso usar pow, pois não posso adicionar nenhuma biblioteca a não ser stdlib e stdio.
Escrevi o programa usando if para n=0 e n=1 e partir de n>=2, uso for para fazer o cálculo, mas quando rodo o programa, ele não lê as condições, gostaria de saber o que tem de errado nele. Desde já agradeço.
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n, m=2;
float res=2, resfinal;
printf("Entre com um expoente inteiro: \n");
scanf("%d", &n);
if (n=0)
printf("O resultado e': 1\n");
else if (n=1)
{
resfinal=1/2;
printf("O resultado e': %f\n", resfinal);
}
else if (n>=2)
{
for(m=2;m<=n;m++)
{
res=res*2;
}
resfinal=1/res;
printf("O resultado e': %f\n", resfinal);
}
system("PAUSE");
return 0;
}
Pergunta
Lukas Couto
Boa tarde, estou tendo certa dificuldade com um problema que me foi passado pelo meu professor.
Segundo o exercício preciso fazer um programa que calcule (1/2) elevado a n inteiro, com n dado pelo usuário, e não posso usar pow, pois não posso adicionar nenhuma biblioteca a não ser stdlib e stdio.
Escrevi o programa usando if para n=0 e n=1 e partir de n>=2, uso for para fazer o cálculo, mas quando rodo o programa, ele não lê as condições, gostaria de saber o que tem de errado nele. Desde já agradeço.
Editado por DurubAdicionar tags [Durub]
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.