Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- int prim(int nr)
- {
- int i, ok = 1;
- for(i = 2; i <= nr/2; i++)
- if(nr % i == 0)
- ok = 0;
- if(ok == 1)
- return 1;
- else
- return 0;
- }
- int cautareprim(int nr, int op)
- {
- int i = nr, nrprim = 1;
- for(;;)
- {
- if(i >= 1)
- {
- if(prim(i) == 0 && op == 1)
- i++;
- else if(prim(i) == 0 && op == 0)
- i--;
- else
- break;
- }
- else
- break;
- }
- return i;
- }
- int main()
- {
- int i, nr, dist, prs, prd;
- scanf("%d", &nr);
- while(nr >= 0)
- {
- if(prim(nr))
- scanf("%d", &nr);
- else
- {
- prs = cautareprim(nr, 0);
- prd = cautareprim(nr, 1);
- if(prs == 1 && prd != 1)
- printf("%d\n", prd);
- else if(prs != 1 && prd == 1)
- printf("%d\n", prs);
- else
- {
- if((nr - prs) == (prd - nr))
- printf("%d %d\n", prs, prd);
- else if((nr - prs) > (prd - nr))
- printf("%d\n", prd);
- else if((nr - prs) < (prd - nr))
- printf("%d\n", prs);
- }
- scanf("%d", &nr);
- }
- }
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement