programiranje k2
DESCRIPTION
Zadaci za vjezbe iz ProgramiranjaTRANSCRIPT
- /* 4. Data su dva skupa celih brojeva A od N elemenata i B od M elemenata. Skupovi su predstavljeni celobrojnim nizovima. Napisati program na C-u kojim se odreuje skup C=AUB. */ //*** ! *** //Unija dva skupa A i B definise se kao skup svih elemenata //koji pripadaju barem jednom od skupova A i B. #include main() { int A[100], B[100], C[100], nA, nB, nC=0, i, j; //***** STANDARDNI UNOS NIZOVA ***** printf("Unesite broj elemenata niza A: "); scanf("%d", &nA); printf("Unesite elemente niza A:\n"); for(i=0;i
- u datom nizu (niz ne mora sadrati zadati podniz). tampati broj pojavljivanja podniza. */ //*** ! *** // PROGRAM JE URADJEN ZA CJELOBROJNI NIZ #include 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
- { //UBACIVANJE BROJA NA ODREDJENO MJESTO U NIZU for(j=0;j0) A[k]=A[k-1]; A[j]=broj;//UPISIVANJE BROJA NA PRVO MJESTO (MOGLO JE I A[0]=broj;) } else if(broj>A[j-1]&&brojj;k--) A[k]=A[k-1]; A[j]=broj; } } } } //***** ISPIS ***** printf("Niz sa dodatnih 5 elemenata je:\n"); for(i=0;i
- //***** UNOS BROJA k ***** printf("Unesite broj pomjeranja K: "); scanf("%d", &k); //AKO TREBAMO DA POMJERIMO ZA k MJESTA TO MOZEMO DA URADIMO TAKO STO POMJERIMO //ZA JEDNO MJESTO I TAJ PROCES PONOVIMO k PUTA for(i=0;i0;j--)//DA BI POMJERALI NIZ U !DESNO! MORAMO DA SE KRECEMO OD POZADI (OD n-1) A[j]=A[j-1];//POMJERANJE NIZA ZA 1 MJESTO UDESNO A[0]=0;//UPISIVANJE 0 NA LIJEVU STRANU NIZA } //***** STANDARDNI ISPIS ***** printf("Niz A pomjeren za %d mjesta u desno je:\n", k); for(i=0;i
- for(j=0;j
- 10. Na programskom jeziku C napisati program kojim se odredjuje broj velikih slova, malih slova, cifara i specijalnih karaktera u stringu koji se kao reenica unosi sa tastature. Specijalnim karakterima smatrati sve znakove koji nisu cifra ili slovo. */ #include main() { char string[100]; int i, j, velikih_slova=0, malih_slova=0, cifara=0, specijalnih=0; //***** STANDARDNI UNOS STRINGA ***** printf("Unesite string: "); gets(string); for(i=0;string[i]!='\x0';i++)//KRETANJE KROZ STRING //(string[i]!=0 , 0='\0'=0x0='\x0'-SVEJEDNO JE KAKO PISATI) { if(string[i]>='A' && string[i]='a' && string[i]='0' && string[i]
- //KOJI NE ZADOVOLJAVA POREDAK NIZA ALI SE NE TRAZI U ZADATKU //***** KREIRANJE NIZA C ***** j=0;k=0;//BROJACI ZA PROLAZ KROZ NIZOVE A i B for(nC=0;nC
- p=i+1;//AKO NISMO NA POCETKU RECENICE ONDA JE PRVO SLOVO RIJECI POSLE RAZMAKA if(string[p]==' ')//AKO KORISNIK UNESE 2 ILI VISE RAZMAKA TREBA DA IH PRESKOCIMO break; for(q=j-1;p
- string[j]=string[j+1]; //POMJERAMO CIJELI STRING ZA 1 MJESTO LIJEVO } } //***** ISPIS ***** printf("\n\nRecenica sa zamijenjenim rijecima je:\n%s\n\n", string); system("pause"); } /* 14. Napisati program na C-u kojim se vri izostavljanje svih prostih brojeva iz datog niza prirodnih brojeva NIZ duine N. Prikazati niz pre i posle ureenja. Napomena: broj je prost ako je deljiv samo sa 1 i sa samim sobom. */ //*** ! *** //Prost broj je prirodni broj vei od 1 koji je dijeljiv jedino sa 1 i samim sobom. #include main() { int NIZ[100], N, i, j; //***** STANDARDNI UNOS NIZA ***** printf("Unesite duzinu niza prinrodnih brojeva: "); scanf("%d", &N); printf("Unesite niz prirodnih brojeva:\n"); for(i=0;i
- int mat[10][10], i, j, M, N, l, s, pom; //***** STANDARDNI UNOS MATRICE ***** printf("Unesite broj redova matrice: "); scanf("%d", &M); printf("Unesite broj kolona matrice: "); scanf("%d", &N); printf("Unesite matricu:\n"); for(i=0;i=0 ON SE TAKAV I ZAMJENJUJE else mat[l][j]=0;//AKO JE ELEMENT [s][j]
- //SORTIRANJE GLAVNE DIJAGONALE for(i=0;i
- //*** ! *** //KADA SE VRSI POJERANJE U DESNO KRECE SE OD KRAJA NIZA KA POCETKU NIZA/VRSTE //KADA SE VRSI POMJERANJE U LIJEVO KRECE SE OD POCETKA NIZA KA KRAjU NIZA/VRSTE //KADA SE VRSI POMJERANJE NA DOLE KRECE SE OD KRAJA KOLONE KA POCETKU KOLONE //KADA SE VRSI POMJERANJE NA GORE KRECE SE OD POCETKA KOLONE KA KRAJU KOLONE //***** ROTACIJA PO KOLONAMA ***** for(j=0;j0;i--)//SVI ELEMENTI KOLONE SE POMJERAJU ZA JEDNO MJESTO NA DOLE mat[i][j]=mat[i-1][j];//PREDZADNJI NA MJESTO ZADNJEG ... PRVI NA MJESTO DRUGOG mat[0][j]=pom;//NA MJESTO PRVOG ELEMENTA (INDEX [0][j]) SE UPISUJE POSLEDNJI ELEMENT KOLONE SACUVAN U POMOCNOJ PROMJENJIVOJ } //***** STANDARDNI ISPIS MATRICE ***** printf("\nTransformisana matrica je:\n"); for(i=0;i
- //BROJAC j CE DA SE PROMIJENI TEK KADA SE ZAVRSI SORTIRANJE j-te KOLONE if(mat[i][j]
-
system("pause"); } /* 20. Napisati program na C-u kojim se matrica A(NxN) modifikuje tako da elementi iznad glavne dijagonale u svakoj vrsti budu ciklino pomjereni za k mjesta udesno (k se unosi sa tastature), i nalazi maksimalni element za elemente ispod glavne dijagonale. */ //*** ! *** //ROTIRANJE/POMJERANJE ZA k MJESTA JE ISTO STO I ROTIRANJE/POMJERANJE //k PUTA ZA JEDNO MJESTO U BILO KOJU STRANU //***** ! ***** //CIKLICNO POMJERANJE U DESNO = ROTACIJA U DESNO //*** ! *** //KADA SE VRSI POJERANJE U DESNO KRECE SE OD KRAJA NIZA KA POCETKU NIZA/VRSTE //KADA SE VRSI POMJERANJE U LIJEVO KRECE SE OD POCETKA NIZA KA KRAjU NIZA/VRSTE //KADA SE VRSI POMJERANJE NA DOLE KRECE SE OD KRAJA KOLONE KA POCETKU KOLONE //KADA SE VRSI POMJERANJE NA GORE KRECE SE OD POCETKA KOLONE KA KRAJU KOLONE #include main() { int mat[10][10], N, i, j, k, p, pom, max; //***** STANDARDNI UNOS KVADRATNE MATRICE ***** printf("Unesite broj vrsta matrice: "); scanf("%d", &N); printf("Unesite matricu %dx%d:\n", N, N); for(i=0;ii max=mat[1][0];//PRETPOSTAVIMO DA JE NEKI ELEMENT ISPOD GLAVNE DIJAGONALE MAKSIMALNI //UZIMAMO [1][0] AKO KORISNIK UNESE MATRICU 2x2, MOLGO JE I [N-1][0] for(i=0;imax)//AKO SE TRENUTNI ELEMENT NALAZI ISPOD GLAVNE DIJAGONALE I AKO JE VECI OD MAKSIMALNOG max=mat[i][j]; //ONDA ON POSTAJE MAKSIMALNI }
- //***** ISPIS ***** printf("\nMaksimalni element ispod glavne dijagonale je: %d\n", max); printf("\nTransformisana matrica je:\n"); for(i=0;i