Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- int brojac1=0, brojac2=0,brojac3=0, brojac4=0;
- void crtanjePloce(int *ploca, int sirina, int visina);
- int valjanaPloca(int *ploca, int sirina, int visina);
- int main()
- {
- int ploca[1000],i,visina,sirina,a;
- printf("Unesite sirinu: "); scanf("%d", &sirina);if(sirina<5 || sirina>15) {printf("Neispravan unos"); return 1;}
- printf("Unesite visinu: "); scanf("%d", &visina);if(visina<5 || visina>15) {printf("Neispravan unos"); return 2;}
- printf("Unesite 1 i 0 u matricu: \n");
- for(i=0;i<visina*sirina;i++)
- {
- scanf("%d", &ploca[i]);
- if(ploca[i]!=0 && ploca[i]!=1) {printf("Neispravan unos"); return 3;}
- }
- //printf("-----------------------------");
- crtanjePloce(ploca, sirina, visina);
- a=valjanaPloca(ploca, sirina, visina);
- if(a==1) printf("Ploca je ispravna.");
- else if(a==0) printf("Ploca je neispravna.");
- printf("\n%d %d %d %d\n", brojac1,brojac2,brojac3,brojac4);
- return 0;
- }
- void crtanjePloce(int *ploca, int sirina, int visina)
- {
- int i, j;
- printf("\n");
- for(i=0;i<visina;i++)
- {
- for(j=0;j<sirina;j++)
- {
- if(*ploca==0) printf(" ");
- else if (*ploca==1) printf("X");
- ploca++;
- }
- printf("\n");
- }
- }
- int valjanaPloca(int *ploca, int sirina, int visina)
- {
- //int brojac1=0, brojac2=0,brojac3=0, brojac4=0;
- int *ploca2;
- ploca2=ploca;
- int brojac;
- int i,j;
- /*uslovi (ne)diranja */
- for(i=0;i<visina;i++)
- {
- for(j=0;j<sirina;j++)
- {
- if(
- (ploca[i*sirina+j]==1 && ploca[i*sirina+j+sirina]==1 && ploca[i*sirina+j+1]==1 && j!=sirina-1)
- || (ploca[i*sirina+j]==1 && ploca[i*sirina+j+sirina]==1 && ploca[i*sirina+j-1]==1 && j!=0)
- || (ploca[i*sirina+j]==1 && ploca[i*sirina+j-sirina]==1 && ploca[i*sirina+j+1]==1 && j!=sirina-1)
- || (ploca[i*sirina+j]==1 && ploca[i*sirina+j-sirina]==1 && ploca[i*sirina+j-1]==1 && j!=0)
- )
- return 0;
- }
- }
- /* H O R I Z O N T A L A */
- ploca=ploca2;
- brojac=0;
- for(i=0;i<visina;i++)
- {
- for(j=0;j<sirina;j++)
- {
- if(ploca[i*sirina+j]==1)
- {
- brojac++;
- if(ploca[i*sirina+j]==1 && (ploca[i*sirina+j+sirina]==1 || ploca[i*sirina+j-sirina]==1))
- brojac--;
- if(brojac>5) return 0;
- if(brojac == 1 && ploca[i*sirina+j+1]==0 && j!=sirina-1 && ploca[i*sirina+j+sirina]!=1
- && ploca[i*sirina+j-sirina]!=1 )
- {
- brojac1++; brojac=0;
- }
- else if(brojac == 1 && j==sirina-1 && ploca[i*sirina+j-sirina]!=1 && ploca[i*sirina+j+sirina]!=1) {brojac1++; brojac=0;}
- if(brojac == 2 && ploca[i*sirina+j+1]==0 && j!=sirina-1) {brojac2++; brojac=0;}
- else if(brojac == 2 && j==sirina-1) {brojac2++; brojac=0;}
- if(brojac == 3 && ploca[i*sirina+j+1]==0 && j!=sirina-1) {brojac3++; brojac=0;}
- else if(brojac == 3 && j==sirina-1) {brojac3++; brojac=0;}
- if(brojac == 4 && ploca[i*sirina+j+1]==0 && j!=sirina-1) {brojac4++; brojac=0;}
- else if(brojac == 4 && j==sirina-1) {brojac4++; brojac=0;}
- }
- }
- brojac=0;
- }
- /* V E R T I K A L A */
- ploca=ploca2;
- brojac=0;
- i=0;j=0;
- for(i=0;i<visina;i++)
- {
- for(j=0;j<sirina;j++)
- {
- if(ploca[j*sirina+i]==1)
- {
- brojac++;
- if(brojac>5) return 0;
- if(brojac == 1 && ploca[j*sirina+i+sirina]==0 ) brojac--;
- // else if(brojac == 1 && i==visina-1) {brojac1++; brojac=0;}
- if(brojac == 2 && ploca[j*sirina+i+sirina]==0 && j!=visina-1) {brojac2++; brojac=0;}
- else if(brojac == 2 && j==visina-1) {brojac2++; brojac=0;}
- if(brojac == 3 && ploca[j*sirina+i+sirina]==0 && j!=visina-1) {brojac3++; brojac=0;}
- else if(brojac == 3 && j==visina-1) {brojac3++; brojac=0;}
- if(brojac == 4 && ploca[j*sirina+i+sirina]==0 && j!=visina-1) {brojac4++; brojac=0;}
- else if(brojac == 4 && j==visina-1) {brojac4++; brojac=0;}
- }
- }
- brojac=0;
- }
- if(brojac1==4 && brojac2==3 && brojac3==2 && brojac4==1) return 1;
- else return 0;
- }
- #include <stdio.h>
- #include <stdlib.h>
- int ProstSaN(int a,int n)
- {
- int i=2,brojac=1;
- while(i<=a && i<n)
- {
- if(a%i == 0 && n%i == 0) brojac = 0;
- i++;
- }
- return brojac;
- }
- int f(int n)
- {
- int i,brojac=1;
- for(i=2; i<n; i++)
- {
- if(ProstSaN(i,n)) brojac++;
- }
- return brojac;
- }
- int main()
- {
- int n;
- printf("Unesite broj n: ");
- scanf("%d", &n);
- printf("%d", f(n));
- return 0;
- }
- #include <stdio.h>
- #include <stdlib.h>
- //Ne mozemo izbacivati sve cifre odjednom, pa pravimo funkciju koja izbacuje jednu cifru iz broja, pa pomocu for petlje pozivamo tu funkciju vise puta za razlicite cifre
- int IzbaciCifru(int a, int broj)
- {
- int br=0,i=1;
- if(broj<0)
- {
- broj=-broj;
- while(broj>0)
- {
- if(broj%10 != a)
- {
- br += i*(broj%10);
- i *= 10;
- }
- broj=(int)broj/10;
- }
- return -br;
- }
- else
- {
- while(broj>0)
- {
- if(broj%10 != a)
- {
- br += i*(broj%10);
- i *= 10;
- }
- broj=(int)broj/10;
- }
- return br;
- }
- }
- int izbaci_cifre(int broj, int* niz_cifara, int vel)
- {
- int i;
- int cifre[10];
- for(i=0; i<10; i++) cifre[i]=0;
- for(i=0; i<vel; i++)
- {
- if(niz_cifara[i]>9 || niz_cifara[i]<0)
- return -99999;
- cifre[niz_cifara[i]]++;
- if(cifre[niz_cifara[i]]>1)
- return -99999;
- broj = IzbaciCifru(niz_cifara[i],broj);
- }
- return broj;
- }
- int main()
- {
- int n, nizCif[1000],i=0,cifra;
- printf("Unesite broj n: ");
- scanf("%d", &n);
- printf("\nUnesite niz cifara (-1 za kraj): ");
- do
- {
- scanf("%d", &cifra);
- if(cifra != -1)
- {
- nizCif[i] = cifra;
- i++;
- }
- }
- while(i<1000 && cifra != -1);
- n = izbaci_cifre(n,nizCif,i);
- if(n == -99999)
- printf("\nNeisprevan unos!");
- else
- printf("\nBroj bez cifara glasi: %d", n);
- return 0;
- }
- ZADACA3
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement