Advertisement
deko96

Untitled

Oct 26th, 2015
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.53 KB | None | 0 0
  1. /*
  2. Од стандарден влез се внесува природен број n (n>0), а потоа и низа a составена од n целобројни елементи.
  3. Оваа низа треба да се трансформира во огледална.
  4. Една низа велиме дека е огледална ако се еднакви првиот и последниот, вториот и претпоследниот итн елемент.
  5. Ако елементите на огледалните позиции (на пр. вториот и претпоследниот елемент) не се еднакви, го поставуваме поголемиот од збировите на парните
  6. цифри на овие два елементи.
  7. */
  8. #include <stdio.h>
  9.  
  10. int main() {
  11.     int n, i;
  12.     scanf("%d", &n);
  13.     int a[n];
  14.     int max_zbir = 0;
  15.     for(i = 0; i < n; ++i) {
  16.         scanf("%d", &a[i]);
  17.     }
  18.     for(i = 0; i < n; ++i) {
  19.         if(a[i] != a[n-i-1]) {
  20.             int tmp = a[i];
  21.             int tmp2 = a[n-i-1];
  22.             int zbir1 = 0, zbir2 = 0;
  23.             while(tmp != 0) {
  24.                 int cifra = tmp % 10;
  25.                 if(cifra % 2 == 0)
  26.                     zbir1 += cifra;
  27.                 tmp /= 10;
  28.             }
  29.             while(tmp2 != 0) {
  30.                 int cifra = tmp2 % 10;
  31.                 if(cifra % 2 == 0)
  32.                     zbir2 += cifra;
  33.                 tmp2 /= 10;
  34.             }
  35.             if(zbir1 > zbir2)
  36.                 max_zbir = zbir1;
  37.             else
  38.                 max_zbir = zbir2;
  39.             a[i] = max_zbir;
  40.             a[n-i-1] = max_zbir;
  41.         } else {
  42.             a[i] = a[i];
  43.             a[n-i-1] = a[n-i-1];
  44.         }
  45.     }
  46.     for(i = 0; i < n; ++i)
  47.         printf("%d ", a[i]);
  48.     return 0;
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement