Imaginsystems


Tecniche di Programmazione - Codici Sorgenti - News Informatiche
Archivio Posts
Anno 2014

Anno 2013

Anno 2012
Statistiche
  • Views Home Page: 54.861
  • Views Posts: 418.496
  • Views Gallerie: 0
  • n° Posts: 210
  • n° Commenti: 224

C - Scrivere un programma per calcolare la potenza b di un numero intero a

C - Scrivere un programma per calcolare la potenza b di un numero intero a ( con b >= 0) 

1. Vi è anche il controllo se a è negativo e se b è negativo

#include <stdio.h>

int main(int argc, char *argv[]){

// dato il valore a e b calcolare a^b e che b sia b>=0
// caso particolare se b = 0 otteniamo che a^0 = 1
// per calcolare con i valori negati devo ricordarmi che 1 / a^b , quindi prima mi calcolo a^b e poi faccio 1 / risultato.

       
int a, b, i, p, valore_segno;
       
double risultato;

        printf
("Inserisci il valore di a = ");
        scanf
("%d",&a);

        printf
("Inserisci il valore di b = ");
        scanf
("%d",&b);
       
       
if( b >=0){
               
if(b == 0){
                        risultato
= 1;
               
}else{
                        i
= 1;
                        risultato
= 1* a;
                       
while(b > i){
                                risultato
= risultato * a;
                                i
++;
                       
}
               
}
       
}else{
               
if(a <0) { valore_segno = -1;}else{ valore_segno = 1;}
                        i
= 1;
                        risultato
= 1* a;
                        p
= b * (-1);
                       
while(p > i){
                                risultato
= risultato * a;
                                i
++;
                       
}
         risultato
= 1 / risultato;
        risultato
= risultato * valore_segno;
       
}
        printf
("Stampa %d^%d = %lf \n",a,b,risultato);

return 0;
}
Categoria: C / C++
sabato, 09 giu 2012 Ore. 15.57
Ora e Data
Mappa
Blogs Amici
    Copyright © 2002-2007 - Blogs 2.0
    dotNetHell.it | Home Page Blogs
    ASP.NET 2.0 Windows 2003