Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* T4 zadatak 6 - Napisati program koji učitava paran prirodan broj n veći
- od 2 a zatim koristeći funkciju prost proverava hipotezu
- Goldbaha za dati broj n. Prema hipotezi, svaki paran
- broj veći od dva može se predstaviti zbirom dva prosta
- broja */
- #include <stdio.h>
- #define MAX 100000
- void prost(int);
- //HAMMER TIME
- int main(){
- int n;
- printf("Unesite N:");
- do{
- scanf("%d",&n);
- }while(n%2!=0 || n<=2); // Unos N
- prost(n);
- return 0;
- }
- void prost(int n){
- int i,brojac,c,a[MAX],m,k,temp1,temp2;
- i=n;
- for (brojac = 0; brojac<n;brojac++)
- {
- a[brojac] = 0; //Inicijalizacija niza na nulu
- }
- for (brojac = 0; brojac<n;brojac++)
- {
- for (c = 2;c <= i - 1;c++) //DAFUCK IS GOING ON HERE?
- {
- if ( i%c == 0 )
- break;
- }
- if ( c == i )
- {
- a[brojac] = i; // ubacivanje svih brojeva koji su prosti i pritom manji od unesenog N
- }
- if(i==0){
- break;
- }
- i--;
- }
- // U SMOKE WEED ?
- for(m=0;m<n;m++){ ////M pokazuje na prvi clan,a K pokazuje na sve ostale clanove
- for(k=0;k<n;k++){
- if(a[k]!=0 && n==a[m]+a[k]){ // posto su neki clanovi 0 (inicijalizacija) eliminisemo ih
- temp1 = a[m]; // i sabiramo clanove i ako su jednaki N uzimamo ih u temp1 i 2
- temp2 = a[k]; // i na kraju ih ispisujemo
- }
- }
- }
- printf("\nBroj %d se moze realizovati kao zbir prostih brojeva %d i %d\n\n\n",n,temp1,temp2); // hooray
- }
Advertisement
Add Comment
Please, Sign In to add comment