Korisnik treba da unese broj matrica i nihove elemente.
Program ispisuje matricu zbira [inlmath]n[/inlmath] matrica.
Može li neko može da pregleda moj kod pošto imam i nekih sintaksnih grešaka, i kodom da pokaže kako sabrati matrice:
- Kôd: Obeleži sve
#include<stdio.h>
#include<stdlib.h>
#define MAX 10
typedef struct
{
int **matrica;
int format;
}MATRICA;
void citaj_matricu(MATRICA *pm)
{
do
{
printf("format=");
scanf("%d",&pm->format);
}
while(pm->format < 1 || pm->format > MAX);
pm->matrica=(int **)calloc(pm->format,sizeof(int *));
int i,j,b=0;
for(i=0;i<pm->format;i++)
{
pm->matrica[i]=(int *)calloc(pm->format,sizeof(int));
for(j=0;j<pm->format;j++,b++)
pm->matrica[i][j]=b;
}
for(i=0;i<pm->format;i++)
for(j=0;j<pm->format;j++)
{
printf("mat[%d][%d]",i,j);
scanf("%d",&pm->matrica[i][j]);
}
}
void zbir(MATRICA *niz,int *n,MATRICA *rez)
{
do
{
printf("broj matrica:");
scanf("%d",n);
}
while(*n < 1);
niz=(MATRICA *)malloc(*n * sizeof(MATRICA));
rez=(MATRICA *)malloc(rez->format *sizeof(MATRICA));
int i;
for(i=0;i<*n;i++)
{
/*SABIRANJE???*/
}
}
void ispis(MATRICA *pm)
{
int i,j;
for(i=0;i<pm->format;i++){
for(j=0;j<pm->format;j++){
printf("%d\t",pm->matrica[i][j]);
}
printf("\n");
}
}
void obrisi(MATRICA *pm)
{
int i;
for(i=0;i<pm->format;i++)
free(pm->matrica[i]);
}
int main()/*problem sa dinamickom alokacijom */
{
MATRICA *niz;
MATRICA *rez;
int i,n;
for(i=0;i<n;i++)
{
printf("%d. matrica:",i+1);
citaj_matricu(niz+i);
}
zbir(niz,&n,rez);
ispis(rez);
for(i=0;i<n;i++)
obrisi(niz+i);
free(niz);
free(rez);
return 0;
}
Hvala.