Advertisement
Guest User

Untitled

a guest
Jul 27th, 2017
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.82 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. int fattoriale (int num) {
  6. if ( num == 1 ) return 1;
  7. return num*fattoriale(num-1);
  8. }
  9.  
  10. int sumFattoriale (int num) {
  11. char buffer[1024];
  12. int somma = 0;
  13. sprintf(buffer,"%d",num);
  14. int x;
  15. for ( x = 0 ; x < strlen(buffer); x++ )
  16. somma+=(buffer[x]-48);
  17.  
  18. return somma;
  19. }
  20.  
  21. int main (int argc, char *argv[]) {
  22. FILE *fp;
  23. int num;
  24.  
  25. if (argc != 2) {
  26. fprintf(stderr,"Error\n");
  27. return 1;
  28. }
  29.  
  30. if ( (fp = fopen(argv[1],"r")) == NULL) {
  31. fprintf(stderr,"Error\n");
  32. return 1;
  33. }
  34.  
  35. fscanf(fp,"%d",&num);
  36. printf("Numero letto %d\n",num);
  37.  
  38. int fatt = fattoriale (num);
  39. printf("Fattoriale %d\n",fatt);
  40.  
  41. int sumFatt = sumFattoriale (fatt);
  42.  
  43. printf("Somma fattoriale %d\n",sumFatt);
  44.  
  45. return 0;
  46. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement