// matrice sortiranje
#include <stdio.h>
#include <conio.h>
int matrica[3][3];
int niz[9];
// funkcije unos matrice
void _unosMatrice(){
for (int i=0;i<3;i++){
for (int j=0;j<3;j++){
printf("m[%d][%d]=",i,j); scanf("%d",&matrica[i][j]);
}
}
}
void _ispisMatrice(){
for (int i=0;i<3;i++){
for (int j=0;j<3;j++){
printf("%d ",matrica[i][j]);
}
printf("\n");
}
}
void _matricaUniz(){
int k=0;
for (int i=0;i<3;i++){
for (int j=0;j<3;j++){
niz[k]=matrica[i][j];
k++;
}
}
}
void _nizuMatricu(){
int k=0;
for (int i=0;i<3;i++){
for (int j=0;j<3;j++){
matrica[i][j]=niz[k];
k++;
}
}
}
void _ispisNiza(){
for (int i=0;i<9;i++){
printf("%d ",niz[i]);
}
}
void _nizMaliKaVelikom(){
int burence=0;
for (int i=0;i<9;i++){
for (int j=i+1;j<9;j++){
if (niz[i]>niz[j]){
burence=niz[i];
niz[i]=niz[j];
niz[j]=burence;
}
}
}
}
main(){
// unesi matricu
_unosMatrice();
// novi red
printf("\n");
//ispis matrice
_ispisMatrice();
_matricaUniz();
// novi red
printf("ispis niza \n");
_ispisNiza();
printf("sortiranje i ispis \n");
_nizMaliKaVelikom();
printf("ispis sort niza \n");
_ispisNiza();
_nizuMatricu();
printf("ispis sort matrice \n");
_ispisMatrice();
getch();
}
#include <stdio.h>
#include <conio.h>
int matrica[3][3];
int niz[9];
// funkcije unos matrice
void _unosMatrice(){
for (int i=0;i<3;i++){
for (int j=0;j<3;j++){
printf("m[%d][%d]=",i,j); scanf("%d",&matrica[i][j]);
}
}
}
void _ispisMatrice(){
for (int i=0;i<3;i++){
for (int j=0;j<3;j++){
printf("%d ",matrica[i][j]);
}
printf("\n");
}
}
void _matricaUniz(){
int k=0;
for (int i=0;i<3;i++){
for (int j=0;j<3;j++){
niz[k]=matrica[i][j];
k++;
}
}
}
void _nizuMatricu(){
int k=0;
for (int i=0;i<3;i++){
for (int j=0;j<3;j++){
matrica[i][j]=niz[k];
k++;
}
}
}
void _ispisNiza(){
for (int i=0;i<9;i++){
printf("%d ",niz[i]);
}
}
void _nizMaliKaVelikom(){
int burence=0;
for (int i=0;i<9;i++){
for (int j=i+1;j<9;j++){
if (niz[i]>niz[j]){
burence=niz[i];
niz[i]=niz[j];
niz[j]=burence;
}
}
}
}
main(){
// unesi matricu
_unosMatrice();
// novi red
printf("\n");
//ispis matrice
_ispisMatrice();
_matricaUniz();
// novi red
printf("ispis niza \n");
_ispisNiza();
printf("sortiranje i ispis \n");
_nizMaliKaVelikom();
printf("ispis sort niza \n");
_ispisNiza();
_nizuMatricu();
printf("ispis sort matrice \n");
_ispisMatrice();
getch();
}
Može mala pomoć?
ReplyDeleteTrebala bi mi funkcija sortkol koja sortira kolone matrice A, u rastućem ili opadajućem redosledu. Ako je srednja vrednost j kolone veća od srednje vrednosti matrice A, kolona se sortira po rastućem redosledu a ako je manja ili jednaka onda se sortira po opadajućem redosledu. Za pronalaženje srednje vrednosti koristi se funckija srednja, ili u mom slučaju dve funkcije:
int srednjakolona(int x[][kolone],int n, int m) //racunanje srednje vrednosti kolone
{ int i,j;
float sr[10],s=0,br=0;
for(i=0;i<10;i++) sr[i]=0;
for(j=0;j<m;j++)
{
for(i=0;i<n;i++)
{
s+=x[i][j];
br++;
}
sr[j]=s/br;
br=0;
s=0;
printf(" %.2f ",sr[j]);
}
return sr[j];
}
int srednjamatrica(int x[vrste][kolone],int n, int m) //racunanje srednje vrednosti matrice
{ int i,j;
float sr=0,s=0,br=0;
for(j=0;j<m;j++)
{
for(i=0;i<n;i++)
{
s+=x[i][j];
br++;
}
sr=s/br;
br=0;
s=0;
printf(" %.2f ",sr);
}
return sr;
}
Hvala unapred.