Advertisement
jordanov

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

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