metalni

Хексадецимални цифри

Dec 25th, 2019
234
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.81 KB | None | 0 0
  1. /* Хексадецимални цифри
  2.  
  3. Од стандарден влез се читаат непознат број на хексадецимални цифри се додека не се внесе точка (.). Ваша задача е да го пресметате декадниот збир на внесените хексадецимални цифри. Доколку добиениот декаден збир е делив со 16 се печати Pogodok. Доколку истиот тој збир покрај што е делив со 16 плус завршува на 16 (последните цифри му се 1 и 6), се печати Poln pogodok инаку се печати самиот збир.
  4.  
  5. Пример:
  6.  
  7. влез: A 7 F 2 0 c A 5
  8.  
  9. излез: 61
  10.  
  11. (61 = 10 + 7 + 15 + 2 + 0 + 12 + 10 + 5, бројот не е делив со 16, ниту пак последните цифри му се 1,6)
  12.  */
  13.  
  14. #include <stdio.h>
  15.  
  16. int main() {
  17.     char ch;
  18.     int sum=0;
  19.     while((ch = getchar())!= '.'){
  20.         if(ch=='1') sum+=1;
  21.         if(ch=='2') sum+=2;
  22.         if(ch=='3') sum+=3;
  23.         if(ch=='4') sum+=4;
  24.         if(ch=='5') sum+=5;
  25.         if(ch=='6') sum+=6;
  26.         if(ch=='7') sum+=7;
  27.         if(ch=='8') sum+=8;
  28.         if(ch=='9') sum+=9;
  29.         if(ch=='A') sum+=10;
  30.         if(ch=='B') sum+=11;
  31.         if(ch=='C') sum+=12;
  32.         if(ch=='D') sum+=13;
  33.         if(ch=='E') sum+=14;
  34.         if(ch=='F') sum+=15;
  35.         if(ch=='a') sum+=10;
  36.         if(ch=='b') sum+=11;
  37.         if(ch=='c') sum+=12;
  38.         if(ch=='d') sum+=13;
  39.         if(ch=='e') sum+=14;
  40.         if(ch=='f') sum+=15;
  41.     }
  42.     if(sum%16==0){
  43.         if(sum%100==16){
  44.             printf("Poln pogodok");
  45.         } else printf("Pogodok");
  46.     } else printf("%d", sum);
  47.  
  48.  
  49.  
  50.     return 0;
  51. }
Add Comment
Please, Sign In to add comment