You are on page 1of 1

/*

5. Napisati program na C-u kojim se određuje koliko puta se zadati podniz


pojavljuje
u datom nizu (niz ne mora sadržati zadati podniz). Štampati broj pojavljivanja
podniza.
*/

//*** ! ***
// PROGRAM JE URADJEN ZA CJELOBROJNI NIZ

#include<stdio.h>
main()
{
int A[100], B[100], M, N, i, j, b=0;

//***** STANDARDNI UNOS NIZOVA *****


printf("Unesite dimenziju niza A: ");
scanf("%d", &M);
printf("Unesite elemente niza A:\n");
for(i=0;i<M;i++)
scanf("%d", &A[i]);

printf("Unesite dimenziju niza B: ");


scanf("%d", &N);
for(i=0;i<N;i++)
scanf("%d", &B[i]);

//***** PREBROJAVANJE *****


for(i=0;i<M;i++)
if(A[i]==B[0])//SAMO UKOLIKO JE PRVI ELEMENT PODNIZA JEDNAK PRVOM ELEMENTU NIZA
//U KOME TRAZIMO PODNIZ ONDA ISPITUJEMO ZA OSTALE ELEMENTE!
{
for(j=1;j<N;j++)
if(A[i+j]!=B[j])
break;//AKO BILO KOJI ELEMENT PODNIZA NIJE JEDNAK "ODREDJENOM" ELEMNTU NIZA
//BREAK PREKIDA DALJE PROVJERAVANJE

if(j==N)//AKO BREAK NIJE PREKINU PETLJU ZNACI DA JE j STIGAO DO KRAJA(TJ. DA


SE SVI ELEMENTI POKLAPAJU)
b++;//AKO JE PODNIZ PRONADJEN U CJELINI ONDA BROJAC UVECAVAMO ZA 1
}

//***** ISPIS *****


printf("\nNiz B se pojavljuje u nizu A %d puta.\n", b);
printf("\n\n");
system("pause");
}

You might also like