<< Chapter < Page | Chapter >> Page > |
Матрица или двоиндексно поле е правоаголна шема од елементи со заедничко име и два индекса кои го определуваат местото на секој елемент во матрицата преку позицијта на редот и колоната во матрицата. На пример, ознака за матрица е , каде е името на матрицата, i - е бројот на редици, j - е бројот на колони. Оваа матрица ќе има вкупно i x j елементи. Секој елемент од матрицата А во програмскиот јазик C се означува со .
При користење на матрица во програма се врши нејзина декларација, а во декларацијата на матрица прво се определува имато, потоа редиците, па потоа колоните во формат:
tip Ime [ Redovi ] [ Koloni ];
Матриците може да се иницијализираат со декларацијата:
int mat[2][2]= {{1,2},{3,4}};
или
int mat [3][4]= {
{100, 101, 102, 103},{104, 105, 106, 107},
{108, 109, 110, 111}};
До елемент од матрица се пристапува преку неговото име и по него се задава редот, а потоа колоната во која припаѓа елементот.
Форматот е:
imePole[IndeksRED][IndeksKOLONA]
Со наредбата
printf( "%d", b[0][1]);
се печати елементот b[0][1]
Да се прочита и отпечати квадратна матрица (бројот на редови и колони е ист) со вредности на елементите кои ќе се внесат преку тастатура.
#include<stdio.h>#define RED 10
#define KOLONA 3int main()
{int n,a[MAX][MAX], i, j;
printf("Dimenzija: ");scanf("%d",&n);
printf("Vnesi gi elementite\n");for (i=0; i<n; i++)
for (j=0; j<n; j++)
scanf("%d",&a[i][j]);
printf("Pecatenje\n");for (i=0; i<n; i++)
{for (j=0; j<n; j++)
{printf("%d\t",a[i][j]);
}printf("\n");
}return 0;
}
Да се формира матрица со елементи чии вредности се формираат преку сумата на индексите на елементот од дадената позиција.
#include<stdio.h>#define MAX 10
int main(){
int red, kol, pole[RED][KOLONA];for(red=0; red<RED; red++)
for(kol=0; kol<KOLONA; kol++)
pole[red][kol]=red+kol;for(red=0; red<RED; red++)
for(kol=0; kol<KOLONA; kol++)
printf(“Vektor[%d][%d] = %d”, red, kol, vek[red][kol]);return 0;
}
Да се прочита една квадратна матрица, а потоа да се помножат сите парни елементи со 2, а сите непарни со 3 и да се отпечати резултантната матрица.
#include<stdio.h>#define RED 10
#define KOLONA 3int main()
{int n,a[MAX][MAX], i, j;printf("Dimenzija: ");
scanf("%d",&n);
printf("Vnesi gi elementite\n");for (i=0; i<n; i++)
for (j=0; j<n; j++)
scanf("%d",&a[i][j]);
for (i=0; i<n; i++)
for (j=0; j<n; j++)
{if (a[i][j]%2==1)
a[i][j]*=3;else
a[i][j]*=2;}
printf("Pecatenje\n");for (i=0; i<n; i++)
{for (j=0; j<n; j++)
{printf("%d\t",a[i][j]);
}printf("\n");
}return 0;
}
Да се прочита една квадратна матрица, да се помножат сите елементи од главната дијагонала со 10, а сите елементи од споредната дијагонал да се поделат со 5 и да се отпечати резултантната матрица.
#include<stdio.h>#define RED 10
#define KOLONA 3int main()
{int n, a[MAX][MAX], i, j;
printf("Dimenzija: ");scanf("%d",&n);
printf("Vnesi gi elementite\n");for (i=0; i<n; i++)
for (j=0; j<n; j++)
scanf("%d",&a[i][j]);
for (i=0; i<n; i++)
for (j=0; j<n; j++)
{if (i==j)
a[i][j]*=10;else if (i+j==n-1)
a[i][j]/=5;}printf("Pecatenje\n");
for (i=0; i<n; i++)
{for (j=0; j<n; j++)
{printf("%d\t",a[i][j]);
}printf("\n");
}return 0;
}
Notification Switch
Would you like to follow the 'Вовед во програмирање' conversation and receive update notifications?