Programa C potencia de un entero

xkaiser88 Mensajes publicados 11 Estado Miembro -  
malek_ Mensajes publicados 2 Estado Miembro -
```c
#include <stdio.h>
void main () {
int i;
int p;
int q;
int a;
printf("saisir l'entier");
scanf("%d", &a);
printf("saisir la puissance");
scanf("%d", &p);
if (p == 0)
q = 1;
else {
q = 1;
for (i = 1; i <= p; i++)
q = q * a;
}
printf("%d\n", q);
system("pause");
}
```</stdio.h>

13 respuestas

  1. fiddy Mensajes publicados 441 Fecha de registro   Estado Colaborador Última intervención   1 847
     
    Buenas noches,
    Puedes simplificar el algoritmo.
    De hecho, solo necesitas poner la variable q en 1 y un simple while. Ni siquiera es necesario considerar el caso en que el exponente es cero.
    Por ejemplo:
     #include <stdio.h> int main(void) { int a; int p; int q; printf("introducir el entero: "); fflush(stdout); scanf("%d",&a); printf("introducir la potencia: "); fflush(stdout); scanf("%d",&p); q=1; while(p--) q*=a; printf("%d\n",res); return 0; } 

    Si tienes preguntas sobre el resto del código, no dudes en preguntar.
    Saludos,
    --

    Google es tu amigo
    12
    1. malek_ Mensajes publicados 2 Estado Miembro 1
       
      ```c
      #include<stdio.h>
      #include<math.h>
      int puiss (int x,int y )
      {
      int q ; int i=0;
      if(y==0)
      q=1;
      else
      {
      q=1;
      while (i<y q="q*x;" i="" return="" int="" main="" a="" p="" waw="" printf="" malek="" cv="" pas="" saisir="" l="" x="" :="" scanf="" la="" puissance="" de="" est="" getch="" /></math.h></stdio.h>
      1