Professional Documents
Culture Documents
Broj kolona
matrice jednak je broju cifara najveceg unesenog visecifrenog broja.
npr. unesu se brojevi: 123, 22, 4125.Unos brojeva prekinuti onda kada se unese 0.
matrica:
1 2 3 0
2 2 0 0
4 1 2 5 */
#include<stdio.h>
#include<stdlib.h>
#define MAX 50
main()
{
int mat[MAX][MAX],red,kol,i=0,broj,n=0,niz[MAX],max_br_cifara=0, maxIndex,br_red,br_kol;
int brojcifara=0,m,pom[MAX],pom_var[MAX],nova_pomocna[MAX],bonibon,var;
if(broj>9)
{
niz[i]=broj;
i++;
n++;
}
}while(broj!=0);
//Ispis niza
red=0;
for(i=1; i<n; i++)
{
pom[i]=niz[i];
while(pom[i]>0)
{
pom[i]=pom[i]/10;
++brojcifara;
}
if(brojcifara>max_br_cifara)
{
max_br_cifara=brojcifara;
maxIndex=i;
}
brojcifara=0;
}
br_red=n;
br_kol=max_br_cifara;
//Formiranje matrice
kol=br_kol-1;
var=br_kol;
while(var>brojcifara)
{
mat[red][kol]=0;
kol--;
var--;
}
nova_pomocna[i]=niz[i];
while(nova_pomocna[i]>0)
{
m=nova_pomocna[i]%10;
mat[red][kol]=m;
kol--;
nova_pomocna[i]=nova_pomocna[i]/10;
red++;
brojcifara=0;
}
printf("\nMatrica je:\n");
for(red=0; red<br_red; red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf("\t%d",mat[red][kol]);
}
printf("\n\n");
}
system("pause");
}
/*********************************************************************************/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom,temp;
pom=dimenzija-1;
for(kol=0; kol<dimenzija/2; kol++)
{
for(red=0; red<dimenzija; red++)
{
temp=mat[red][kol];
mat[red][kol]=mat[red][pom];
mat[red][pom]=temp;
}
pom--;
}
system("pause");
}
/*********************************************************************************/
/*Pojedine cifre brojeva popunjavaju matricu po redovima(ostatak se popunjavam nulama). Broj kolona
matrice jednak je broju cifara najveceg unesenog visecifrenog broja.
npr. unesu se brojevi: 123, 22, 4125.Unos brojeva prekinuti onda kada se unese 0.
matrica:
1 2 3 0
2 2 0 0
4 1 2 5 */
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int
mat[MAX][MAX],red,kol,max=0,br_cifara=0,n,broj,niz[MAX],k=0,i,brojac=0,ostatak_pri_djeljenju,pom,m,d,p;
if(broj>9)
{
niz[k++]=broj;
n=broj;
while(n>0)
{
br_cifara++;
n=n/10;
}
if(br_cifara>max)
{
max=br_cifara;
}
br_cifara=0;
}
}while(broj!=0);
/*******************************KREIRANJE MATRICE********************************************/
d=max;
for(red=k-1; red>=0; red--)
{
n=niz[red];
while(n>0)
{
brojac++;
n=n/10;
}
if(brojac==max)
{
m=niz[red];
for(kol=max-1; kol>=0; kol--)
{
if(m>0)
{
ostatak_pri_djeljenju=m%10;
mat[red][kol]=ostatak_pri_djeljenju;
m=m/10;
}
}
else if(brojac<max)
{
pom=d-brojac;
kol=max-1;
m=niz[red];
for(kol; kol>=0; kol--)
{
if(m>0)
{
ostatak_pri_djeljenju=m%10;
mat[red][kol]=ostatak_pri_djeljenju;
m=m/10;
}
}
d=max+1;
}
brojac=0;
}
printf("\n\nMatrica:\n\n");
for(red=0; red<k; red++)
{
for(kol=0; kol<max; kol++)
{
printf("%d\t",mat[red][kol]);
}
printf("\n\n");
}
system("pause");
/*********************************************************************************/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom,temp;
pom=dimenzija-1;
for(kol=0; kol<dimenzija/2; kol++)
{
for(red=0; red<dimenzija; red++)
{
temp=mat[red][kol];
mat[red][kol]=mat[red][pom];
mat[red][pom]=temp;
}
pom--;
}
system("pause");
}
/*********************************************************************************/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,niz[MAX],i,brel=0;
system("pause");
}
/*********************************************************************************/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,suma=0,max,maxKol,min,minKol;
//Pronalazenje minimalnog i maksimalnog clana i zamjena tih clanova zbirom elemenata tekuce vrste
if(mat[red][kol]>max)
{
max=mat[red][kol];
maxKol=kol;
}
suma=suma+mat[red][kol];
}
mat[red][maxKol]=suma;
mat[red][minKol]=suma;
suma=0;
}
/*********************************************************************************/
/* Od glavne i sporedne dijagonale matrice napraviti dva niza, potom najveci i najmanji element niza
zamijeniti vrijednoscu sume svih elemenata pojedinih nizova
zatim tako transformisan niz vratiti u matricu*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int
mat[MAX][MAX],dimenzija,red,kol,max,maxIndex,min,minIndex,max1,maxIndex1,min1,minIndex1,suma=0,suma1=0;
int niz_glavna[MAX],niz_sporedna[MAX],i,j,m=0,n=0;
//Pronalazenje najmanjeg i najveceg elementa u nizu glavne dijagonale i njihova zamjena sumom elemenata
tog niza
min=niz_glavna[0];
minIndex=0;
max=niz_glavna[0];
maxIndex=0;
if(niz_glavna[i]<min)
{
min=niz_glavna[i];
minIndex=i;
}
suma=suma+niz_glavna[i];
}
niz_glavna[minIndex]=suma;
niz_glavna[maxIndex]=suma;
//Pronalazenje najmanjeg i najveceg elementa u nizu sporedne dijagonale i njihova zamjena sumom elemenata
tog niza
min1=niz_sporedna[0];
minIndex1=0;
max1=niz_sporedna[0];
maxIndex1=0;
if(niz_sporedna[j]<min1)
{
min1=niz_sporedna[j];
minIndex1=j;
}
suma1=suma1+niz_sporedna[j];
}
niz_sporedna[minIndex1]=suma1;
niz_sporedna[maxIndex1]=suma1;
i=0;
for(red=0; red<dimenzija; red++)
{
for(kol=0; kol<dimenzija; kol++)
{
if(red==kol)
{
mat[red][kol]=niz_glavna[i];
i++;
}
}
}
j=0;
for(red=0; red<dimenzija; red++)
{
for(kol=0; kol<dimenzija; kol++)
{
if(red+kol==dimenzija-1)
{
mat[red][kol]=niz_sporedna[j];
j++;
}
}
}
system("pause");
}
/*********************************************************************************/
/********26.9.2013*********
Napisati program na C-u kojim se unosi matrica M*M
a potom se vrsi njena transformacija tako sto se izvrsi zamjena elemenata unutar dveju vrsta u kojima se
nalaze najmanji i najveci element sporedne dijagonale
matrice.Prikazi na ekran transformisanu matricu
*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,max,min,maxRed=0,minRed=0,pom,dimenzija;
//Unos matrice
printf("\n\nUnesite elemente matrice:");
for(red=0; red<dimenzija; red++)
{
for(kol=0; kol<dimenzija; kol++)
{
printf("\n\nMAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
max=mat[0][dimenzija-1];
min=mat[0][dimenzija-1];
else if(mat[red][kol]>max)
{
max=mat[red][kol];
maxRed=red;
}
}
}
}
system("pause");}
/*********************************************************************************/
/********11.10.2013*********
Napisati program na C-u kojim se sa tastature unose dimenzije M
i elementi MAT1m*m i MAT2m*m,a potom se vrsi njihovo sabiranje
tako sto se sabere pri element MAT1 sa posljednjim elementom MAT2,drugi sa pretposljednjim itd.
Sumirane elemente upisati u novu matricu MAT3.Prikazati na ekran obijenu matricu.
*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int MAT1[MAX][MAX],red,kol,i,j,MAT2[MAX][MAX],suma,M,MAT3[MAX][MAX];
//Ispis MAT1
printf("\n\nMAT1 je:\n\n");
for(red=0; red<M; red++)
{
for(kol=0; kol<M; kol++)
{
printf("%d\t",MAT1[red][kol]);
}
printf("\n\n");
}
//Ispis matrice 2
printf("\n\MAT2:\n\n");
for(i=0; i<M; i++)
{
for(j=0; j<M; j++)
{
printf("%d\t",MAT2[i][j]);
}
printf("\n\n");
}
//Sada vrsimo sabiranje MAT1 i MAT2 i smjetamo njihovu sumu u MAT3
for(red=0,i=M-1; red<M,i>=0; red++,i--)
{
for(kol=0,j=M-1; kol<M,j>=0; kol++,j--)
{
suma=MAT1[red][kol]+MAT2[i][j];
MAT3[red][kol]=suma;
}
}
//Ispis MAT3
printf("\n\nMatrica MAT3:\n\n");
for(red=0; red<M; red++)
{
for(kol=0; kol<M; kol++)
{
printf("%d\t",MAT3[red][kol]);
}
printf("\n\n");
}
system("pause");
}
/*********************************************************************************/
/********12.9.2013*********
Napisati program na C-u kojim se sa tastature unosi matrica An*m,
a potom se vrsi zamjena elemenata unutar dveju kolona sa najmanjom i najvecom vrjednoscu sume
elemenata sa parnim indeksom vrste.Prikazati na ekran
transformisanu matricu
*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,pom,max=0,min=0,maxKol,minKol,suma=0;
maxKol=0;
minKol=0;
if(suma>max)
{
max=suma;
maxKol=kol;
}
else if(suma<min)
{
min=suma;
minKol=kol;
}
suma=0;
//Ispis matrice
/*********************************************************************************/
/*10)Napisati program na C-u kojim se matrica ANxN modifikuje tako da elementi iznad glavne dijagonale
u svakoj vrsti budu ciklično pomjereni za k mjesta udesno
(k se unosi sa tastature), i nalazi maksimalni element za elemente ispod glavne dijagonale. */
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,dimenzija,pom,k,p,j;
mat[red][j]=pom;
}
}
}
}
system("pause");
/***********************************************************************************/
/***********************************************************************************/
/*Sa tastature unijeti dimenziju i elemente kvadratne matrice
zatim pronaci aritmeticku sredinu elemenata na glavnoj dijagonali matrice i potom izvrsiti
promjenu vrijednosti svih elemenata koji se nalaze u vrstama sa parnim indeksom vrste
tako sto se postojeca vrijednost elemenata uveca za vrijednost aritmeticke sredine*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,dimenzija,suma=0,pom,brojac_elemenata=0;
float arS;
scanf("%d",&dimenzija);
for(red=0;red<dimenzija;red++)
{
for(kol=0;kol<dimenzija;kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
arS=(float)suma/brojac_elemenata;
printf("Aritmeticka sredina elemenata na glavnoj dijagonali je %.2f\n",arS);
}
}
}
system("pause");
}
/***********************************************************************************/
/* Napisati program na C-u koji se transformiše matrica A, dimenzija NxM, tako što se vrši ciklicno
pomjeranje elemenata matrice unutar
svake vrste za i mjesta udesno, gdje je i indeks vrste matrice. Štampati transformisanu matricu. */
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,p,pom;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
mat[red][0]=pom;
}
}
/***********************************************************************************/
/*Rok 9.septembar 2016. Elemente desno od glavne dijagonale pomjerimo za i+1 mjesta udesno.I je indeks
vrste.Matrica da bude kvadratna*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom,p,j;
mat[red][red+1]=pom;
}
}
system("pause");
}
/***********************************************************************************/
/*Unijeti elemente matrice A,dimenzije N,
pri tome formirati niz B tako da se prvo popunjava
po sljedecem pravilu:Prvo smjestiti N,zatim elemente
iznad glavne dijagonale,pa onda ispod glavne dijagonale i
na kraju elemente glavne dijagonale*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,B[MAX],k=0;
//U niz B prvo smo smjestili dimenziju matrice kao prvi element
B[k]=dimenzija;
k++;
printf("\nNiz B je:");
for(red=0; red<k; red++)
{
printf("\t%d",B[red]);
}
system("pause");
}
/***********************************************************************************/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom,i;
i=dimenzija-1;
for(red=0; red<dimenzija/2; red++)
{
for(kol=0; kol<dimenzija; kol++)
{
pom=mat[red][kol];
mat[red][kol]=mat[i][kol];
mat[i][kol]=pom;
}
i--;
}
system("pause");
}
/***********************************************************************************/
/*Zamijena elemenata GLAVNE dijagonale prvi sa zadnjim
,drugi sa predzadnjim i sve tako*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom,j;
j=dimenzija-1;
for(red=0; red<dimenzija/2; red++)
{
for(kol=0; kol<dimenzija; kol++)
{
if(red==kol)
{
pom=mat[red][kol];
mat[red][kol]=mat[j][j];
mat[j][j]=pom;
}
}
j--;
}
/***********************************************************************************/
/*Zamijena elemenata GLAVNE dijagonale prvi sa zadnjim
,drugi sa predzadnjim i sve tako*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom,j,i;
pom=mat[red][kol];
mat[red][kol]=mat[i][j];
mat[i][j]=pom;
}
}
}
system("pause");
}
/***********************************************************************************/
/*Zamijena elemenata glavne dijagonale sa sporednom dijagonalom*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom,j,i;
j=dimenzija-1;
for(red=0; red<dimenzija/2; red++)
{
for(kol=0; kol<dimenzija; kol++)
{
if(red==kol)
{
pom=mat[red][kol];
mat[red][kol]=mat[red][j];
mat[red][j]=pom;
}
}
j--;
}
i++;
}
system("pause");
}
/***********************************************************************************/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,pom,i;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
//Transformisana matrica je
system("pause");
}
/***********************************************************************************/
/*Napisati program na C-u kojim se sa tastature unosi matrica MATM*M a potom se vrši njena transformacija
tako što se izvrši
zamena elemenata unutar dveju kolona u kojima se nalaze najmanji i najveći element dijagonale matrice.
Prikazati na ekran transformisanu matricu.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,min,max,minKol,maxKol,pom;
max=mat[0][0];
min=mat[0][0];
maxKol=0;
minKol=0;
else if(mat[red][kol]<min)
{
min=mat[red][kol];
minKol=kol;
}
}
}
}
system("pause");
}
/***********************************************************************************/
/*3)Napisati program na C-u koji vrši rotiranje elemenata matrice A, dimenzija NxM,
po vrstama za jedno mjesto u desno. Pored rotacije elemenata matrice potrebno je izvršiti transfomaciju
matrice tako da prva vrsta
matrice prelazi na mjesto druge, druga na mjesto treće, itd.
Poslednja vrsta matrice, nakon transformacije, se nalazi na mestu prve. Štampati transformisanu matricu.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,pom,temp;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
mat[0][kol]=temp;
}
system("pause");
}
/***********************************************************************************/
/* Napisati program na C-u kojim se sa tastature unose elementi matrice A, dimenzija NxM, a potom se
formira niz B koji se sastoji od
negativnih elemenata matrice A. Pri formiranju niza B popunjavati ga odgovarajućim vrijednostima matrice A
krenuvši od elementa A[N-1][M-1]
i kretati se kroz vrste. */
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,B[MAX],k=0;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
{
if(mat[red][kol]<0)
{
B[k]=mat[red][kol];
k++;
}
}
}
system("pause");
}
/***********************************************************************************/
/* ISPITNI
za matricu
1 2 3
4 5 6
7 8 9
potrebno je dobiti:
1 2 3 6
4 5 6 15
7 8 9 24
12 15 18 45 */
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,suma1=0,suma2=0;
printf("Unesite dimenziju matrice:");
scanf("%d",&dimenzija);
printf("\t%d",mat[red][kol]);
}
printf("\n\n");
}
dimenzija=dimenzija+1;
mat[red][dimenzija-1]=suma1;
suma1=0;
}
mat[dimenzija-1][kol]=suma2;
suma2=0;
}
}
system("pause");
}
/***********************************************************************************/
/*Napisati program na C-u kojim se sa tastature unose elementi celobrojne matrice A, reda M*M, pri čemu je
M paran broj,
a potom se vrši njena transformacija tako što se zamene mesta elementima u dvema susednim kolonama.
Štampati početnu i transformisanu matricu. */
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom;
scanf("%d",&dimenzija);
}while(dimenzija%2!=0);
system("pause");
}
/***********************************************************************************/
/*Napisati program na C-u kojim se sa tastature unose dimenzija M i elementi matrice AM*M.
Izvršiti transformaciju matrice tako da se zamene odgovarajući elementi matrice simetrično u odnosu na
glavnu dijagonalu.
Štampati matricu nakon transfromacije. Nije dozvoljeno koristiti pomoćne strukture podataka. */
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom;
{
for(red=0; red<dimenzija; red++)
{
if(red>kol)
{
pom=kol;
kol=red;
red=pom;
}
}
}
system("pause");
}
/************************************************************************************/
//Napisati program na C-u kojim se sa tastature unosi dimenzija i elementi cjelobrojne kvadratne
matrice.Dimenzija treba da bude paran broj.
//Omoguciti ponovni unos ako ovaj uslov nije ispunjen.Pronaci aritmeticku sredinu elemenata posljednje
vrste matrice
//a zatim u svim kolonama sa neparnim indeksom kolone pronaci elemente koji su manji od nadjene
aritmeticke sredine i izvrsiti
//zamjenu mjesta tih elemenata sa odgovarajucim elementima prethodne susjedne kolone(elementi se nalaze
unutar iste vrste).
//Stampati transformisanu matricu
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,dimenzija,suma=0,pom;
float arS;
}
while(dimenzija%2!=0);
for(red=0;red<dimenzija;red++)
{
for(kol=0;kol<dimenzija;kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
arS=(float)suma/dimenzija;
printf("Izracunata aritmeticka sredina elemenata posljednje vrste je: %.2f",arS);
system("pause");
}
/************************************************************************************/
//1) Napisati program na C-u koji zamenjuje mesta l-toj i s-toj vrsti matrice AMxN.
//Prilikom zamene mesta vrstama sve negativne elemente l-te i s-te vrste matrice zameniti sa 0.
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,pom,l,s;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
else if(mat[s][kol]<0)
{
mat[s][kol]=0;
}
pom=mat[l][kol];
mat[l][kol]=mat[s][kol];
mat[s][kol]=pom;
}
system("pause");
}
//Ili ovako
//1)Napisati program na C-u koji zamenjuje mesta l-toj i s-toj vrsti matrice AMxN.
//Prilikom zamene mesta vrstama sve negativne elemente l-te i s-te vrste matrice zameniti sa 0.
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,pom,l,s;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
scanf("%d",&s);
}while(s<0 || s>=br_red);
if(mat[s][kol]<0)
{
mat[s][kol]=0;
}
pom=mat[l][kol];
mat[l][kol]=mat[s][kol];
mat[s][kol]=pom;
}
system("pause");
}
/***********************************************************************************************/
//2) Napisati program na C-u koji vrši sortiranje elemenata na glavnoj dijagonali matrice ANxN u
nerastući redosled,
//a zatim izračunava proizvod elemenata ispod sporedne dijagonale. Štampati transformisanu matricu i
dobijeni proizvod.
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom,proizvod=1,i,j;
}
printf("\n\n");
}
system("pause");
/*********************************************************************************************/
/*4)Napisati program na C-u koji vrši sortiranje elemenata matrice A, dimenzija NxM u okviru vrsta u
rastući redoslijed.
Matricu A uneti sa tastature. Štampati transformisanu matricu.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,pom,j;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
{ if(mat[red][kol]>mat[red][j])
{
pom=mat[red][kol];
mat[red][kol]=mat[red][j];
mat[red][j]=pom;
}
}
}
}
system("pause");
}
/************************************************************************************/
/*U prvi red unijeti redne brojeve takmicara a zatim redom u sve kolone unijeti po 6 ocjena za svakog
takmicara.Poredati ih tako da na prvom mjestu bude onaj takmcar sa najvecom sumom ocjena kolone,zatim na
drugom malo gori ,itd..pa najgori na zadnjem mjestu.
Sa tastature unosimo broj takmicara.Ocjene su
u opsegu od 1 do 5*/
#include<stdio.h>
#define MAX 100
#include<stdlib.h>
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,br_takmicara,rbr_takmicara,max=0,suma=0,j,pom,maxKol=0;
br_kol=br_takmicara;
br_red=7; //Zato sto imamo sest ocjena i plus jos jedan red u kojem su ispisani redni brojevi
takmicara
if(suma>max)
{
maxKol=j;
for(red=0; red<br_red; red++)
{
pom=mat[red][kol];
mat[red][kol]=mat[red][maxKol];
mat[red][maxKol]=pom;
}
}
max=0; suma=0;
}
}
printf("\n\Transformisana matrica:\n\n");
for(red=0; red<br_red; red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf("%d\t",mat[red][kol]);
}
printf("\n\n");
}
system("pause");
}
/*****************************************************************************************/
/*4.Napisati program na C-u kojim se sa tastature unose elementi matrice A dimenzije M*M,
pri čemu je svaki element matrice višecifreni celi broj, a potom se od tih elemenata formira celobrojni
niz B čiji je svaki element
jednak proizvodu cifara najveće i najmanje težine odgovarajućeg elementa matrice A. Na ekran štampati
kreirani niz B.
*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],dimenzija,red,kol,lsb,msb,B[MAX],k=0;
float aritS;
printf("MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}while(mat[red][kol]<=9);
}
}
while(mat[red][kol]>=10)
{
mat[red][kol]=mat[red][kol]/10;
}
msb=mat[red][kol];
B[k]=lsb*msb;
k++;
}
}
printf("Niz B je:\n");
for(kol=0; kol<k; kol++)
{
printf("\t%d",B[kol]);
}
system("pause");
}
/**************************************************************************************************/
/*5)Napisati program na C-u koji vrši sortiranje elemenata matrice A, dimenzije NxM,
u okviru kolona u opadajući redoslijed. Štampati transformisanu matricu.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,pom,j;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
system("pause");
}
/*********************************************************************************************/
/*6)Napisati program na C-u koji računa i prikazuje proizvod matrice ANxN i njene transponovane matrice
(AT).
Matricu A inicijalizovati prilikom deklaracije.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,dimenzija,pom,proizvod=1,Transponovana[MAX][MAX],i,suma=0;
int A[MAX][MAX];
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<dimenzija;red++)
{
for(kol=0; kol<dimenzija; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
A[red][kol]=suma;
suma=0;
}
}
system("pause");
}
/***************************************************************************/
/*7)Napisati program na C-u koji računa vrednost izraza A=BxC+D, gdje su A, B, C i D kvadratne matrice
reda N. Štampati matricu A.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int red,kol,j,pom=0,dimenzija,A[MAX][MAX],B[MAX][MAX],C[MAX][MAX],D[MAX][MAX],k;
pom=0;
}
}
printf("Matrica A je:\n");
for(red=0; red<dimenzija; red++)
{
for(kol=0; kol<dimenzija; kol++)
{
printf("\t%d",A[red][kol]);
}
printf("\n\n");
}
system("pause");
}
/**************************************************************************************/
/*9)Napisati program na C-u kojim se određuje i prikazuje kolona matrice ANxM čiji je zbir elemenata
najmanji.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,min=0,suma=0,minKol;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
minKol=0;
if(suma<min)
{
min=suma;
minKol=kol;
}
suma=0;
}
system("pause");
}
/***************************************************************************************/
/*9)Napisati program na C-u kojim se određuje i prikazuje kolona matrice ANxM čiji je zbir elemenata
najveci.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,pom,suma=0,suma2=0,max,maxKol;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
max=suma;
maxKol=0;
}
if(suma2>suma)
{
max=suma2;
maxKol=kol;
}
system("pause");
/***********************************************************/
/*Napisati program na C-u kojim se sa tastature unose elementi matrice A, dimenzija M*N,
a potom se formira niz B koji se sastoji od elemenata matrice A koji su parni brojevi.
Pri formiranju niza B popunjavati ga
odgovarajucim elementima matrice A krenuvši pri pretraživanju matrice od elementa A[M-1][0] i kretati se
kroz kolone.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,pom,k=0,B[MAX];
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}
}
//Ispis niza
printf("\n\nNiz B:\n\n");
system("pause");
}
/******************************************************************/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
main()
{
int red,kol,dimenzija=10;
char n= 'A',m='B';
char mat[MAX][MAX];
system("pause");
}
/*******************************************************************/
/*Napisati program na C-u kojim se sa tastature unose elementi matrice A, dimenzija M*N, pri cemu su
njeni elementi višecifreni celi brojevi, a potom se formira niz B koji se sastoji od pojedinacnih cifara
elemenata matrice A.
Pri formiranju niza B krenuti sa pretraživanjem matrice A od elementa A[0][N-1] i kretati se kroz vrste.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
#include<string.h>
main()
{
int mat[MAX][MAX],red,kol,br_red,br_kol,B[MAX],k=0,n,ostatak_pri_djeljenju;
//Unos matrice
printf("\n_Unesite elemente matrice:");
for( red=0; red<br_red;red++)
{
for(kol=0; kol<br_kol; kol++)
{
do{
printf(" MAT[%d][%d]=",red,kol);
scanf("%d",&mat[red][kol]);
}while(mat[red][kol]<=9);
}
}
system("pause");
/***************************************************************************/
/*3.Napisati program na C-u kojim se vrši rotiranje elemenata u pojedinim kolonama matrice A,
MxM, za j pozicija na gore, pri cemu je j indeks kolone.
Matricu A i njenu dimenziju uneti sa tastature. Štampati transformisanu matricu.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
#include<string.h>
main()
{
int mat[MAX][MAX],dimenzija,red,kol,pom,p;
//Mehanizam kojim vrsimo pomijeranje za j (ja cu j oznaciti sa kol) mjesta prema gore u odnosu na
kolonu u kojoj stojimo
for(red=0; red<dimenzija;red++)
{
mat[red][kol]=mat[red+1][kol];
}
mat[dimenzija-1][kol]=pom;
}
}
system("pause");
}
/************************************************************************/
/*Napisati program na C-u kojim se od elemenata celobrojne matrice A, M*M, koji se nalaze iznad glavne
dijagonale formira celobrojni niz B na takav nacin da se u njega upisuju dupli elementi iz matrice A i da
se pri pretraživanju matrice krece od elementa A[0][M-1] i krece se kroz vrste.
Red matrice A i njene elemente uneti sa tastature, a na ekran štampati matricu A i dobijeni niz B.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
#include<string.h>
main()
{
int mat[MAX][MAX],dimenzija,red,kol,B[MAX],k=0,i,j,br_istih=0;
if(br_istih>=2)
{
B[k]=mat[red][kol];
k++;
}
br_istih=0;
}
}
system("pause");
/******************************************************************/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
#include<string.h>
main()
{
int mat[MAX][MAX],dimenzija,red,kol,suma=0,minarSred=0;
float minarS,arS;
minarS=(float)suma/dimenzija;
minarSred=0; //Pretpostavka da je prvi red,red sa najmanjom aritmetickom sr.
suma=0;
arS=(float)suma/dimenzija;
if(arS<minarS)
{
minarS=arS;
minarSred=red;
}
suma=0;
}
system("pause");
/***********************************************************************/
/*Napisati program na C-u kojim se sa tastature unose elementi matrice A, dimenzija N*N, a
potom se formira niz D koji se sastoji od elemenata matrice A koji su manji od vrednosti
aritmeticke sredine svih elemenata kolone kojoj pripadaju. Pri formiranju niza D popunjavati ga
odgovarajucim elementima matrice A krenuvši pri pretraživanju matrice A od elementa
A[N-1][0] i kretati se kroz kolone.*/
#include<stdio.h>
#include<stdlib.h>
#define MAX 100
#include<string.h>
main()
{
int mat[MAX][MAX],dimenzija,red,kol,i,D[MAX],k=0,suma=0;
float arS;
arS=(float)suma/dimenzija;
if(mat[red][kol]<arS)
{
D[k]=mat[red][kol];
k++;
}
suma=0;
}
}
printf("\n\nNiz D:\n\n");
for(kol=0; kol<k; kol++)
{
printf("%d\t",D[kol]);
}
system("pause");
}
/***********************************************************/