Advertisement
simov

[1] СП Испитна Задача

Aug 25th, 2014
785
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.26 KB | None | 0 0
  1. /*
  2. Да се напише програма во која од тастатура се чита димензијата и елементите на низа од природни броеви.Да се испечатат сите елементи од низата што претставуваат силни броеви.Еден број е силен ако збирот од факториелите од секоја негова цифра е еднаков на самиот број.
  3. пр.
  4. 145 = 1! + 4! + 5!
  5. Проверката далие бројот силен да се изврши со посебна функција, а пресметувањето на факториелот со рекурзивна функција
  6. */
  7. #include <stdio.h>
  8. #include <stdlib.h>
  9. int faktoriel(int c){
  10.     if(c==1) return 1;
  11.     if (c==0) return 1;
  12.     return c*faktoriel(c-1);
  13. }
  14. int silenBroj(int n){
  15.    int s=0,cifra;
  16.    while(n>10){
  17.        cifra=n%10;
  18.        s+=faktoriel(cifra);
  19.        n/=10;
  20.    }
  21.    s+=faktoriel(n);
  22.    return s;
  23. }
  24. int main(){
  25.     int a[100],m,i;
  26.     scanf("%d", &m);
  27.     for(i=0;i<m;i++){
  28.             scanf("%d", &a[i]);
  29.         }
  30.     for(i=0;i<m;i++){
  31.       if(a[i]==silenBroj(a[i]))
  32.         printf("%d\n", a[i]);
  33.     }
  34.     return 0;
  35. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement