Citat: |
Zadatak 1:
Napišite program koji učitava cijeli broj n, te ispisuje sumu svih prostih djelitelja (uvažavajući kratnost) svih cijelih brojeva različitih od nule koji se nalaze između n i 1 (uključivo). |
Citat: |
(uvazavajuci kratnost) |
Kod: |
#include <stdio.h>
int sumad (int n) { int i,test,suma=0,x; x=n; if(x==0) test=0; else test=1; do { for (i=2;i<=x;i++) { if(x%i==0) { suma+=i; test*=i; x/=i; break; } } } while(test!=n); return suma; } int abso(int x) { if (x<0) x*=-1; return x; } int main(void) { int n; scanf("%d",&n); if (n<1) { while (n<=1) { if (n==0) {n++; continue;} printf("%d\n",sumad( abso(n) ) ); n++; } } else { while (n>=1) { printf("%d ",sumad(n)); n--; } } return 0; } |
output generated using printer-friendly topic mod. Vremenska zona: GMT + 01:00.