Moldova
RAPORT
Chişinău – 20XX
LUCRAREA DE LABORATOR Nr. 4
Tema: Tehnicile prelucrării tablourilor bidimensionale
Scopul lucrării: însuşirea tehnicilor de algoritmizare şi programare
cu subprograme în prelucrarea structurilor complexe în TP şi C.
Obiectivele temei:
1. Aprofundarea cunoştinţelor în limbajul şi mediul TurboC şi
perfecţionarea tehnicii de programare în prelucrarea structurilor
complexe, analizând soluţiile stereotipe şi cele eficiente de
introducere, afişare şi rearanjări ale tablourilor bidimensionale etc.
2. Însuşirea tehnicilor eficiente de parcurgere, căutare, schimbare
şi ordonare a matricilor şi calculul conform cunoştinţelor obţinute
din matematică şi în baza ciclurilor încorporate într-un program
complex.
Subiectele temei şi ordinea executării:
1. Studierea principiilor prelucrării (descrierii, declarării, formării,
etc.) tablourilor bidimensionale.
2. Analiza Testelor: intrebări – răspuns cu afisarea rezultatelor.
3. Însuşirea tehnicilor moderne de elaborare a programelor
complexe în C în baza problemelor din anexă.
4. Elaborarea algoritmilor, programelor şi testelor de depanare a
programului prin diverse moduri în mediul integrat C.
int main()
{
int array[100];
int size, i;
return 0;
}
Ex 3
#include<stdio.h>
int main()
{
int m, n, c, d, matrix[10][10], transpose[10][10];
if (m == n)
{
for (c = 0; c < m; c++)
{
for (d = 0; d < m; d++)
{
if (matrix[c][d] != transpose[c][d])
break;
}
if (d != m)
break;
}
if (c == m)
printf("\nMatricea este simetrica.\n");
else
printf("\nMatricea nu este simetrica!\n");
}
else
printf("\nMatricea nu este simetrica!\n");
return 0;
}
Ex 6
#include <stdio.h>
int main() {
int n, i;
float num[100], sum = 0.0, avg;
Ex 8
#include<stdio.h>
int main()
{
int array1[10][10],i,j,m,n,sum = 0;
printf("Introduceti nr. randuri : ");
scanf("%d", &m);
printf("Introduceti nr. de coloane : ");
scanf("%d",&n);
printf("\nIntroduceti datele matricei : ");
for (i = 0; i < m; i++)
{
for (j = 0; j < n; j++)
{
printf("\nIntroduceti datele [%d][%d] : ",i,j);
scanf("%d", &array1[i][j]);
}
}
printf("\nMatricile introduse sunt : \n\n");
for (i = 0; i < m; ++i)
{
for (j = 0; j < n; ++j)
{
printf("\t%d", array1[i][j]);
}
printf("\n\n");
}
for(i=0;i<m;i++)
{
sum = sum + array1[i][m-1-i];
}
printf("\nSuma diagonalei secundare este : %d \n", sum);
return 0;
}
Ex 12
#include <stdio.h>
#include <conio.h>
void main()
{
int a[2][3],b[2][3],c[2][3],i,j;
printf("Introduceti valori pentru Matricea A : \n");
for(i=0;i<2;i++)
for(j=0;j<3;j++)
scanf("%d",&a[i][j]);
printf("\nIntroduceti valori pentru Matricea B :\n");
for(i=0;i<2;i++)
for(j=0;j<3;j++)
scanf("%d",&b[i][j]);
for(i=0;i<2;i++)
for(j=0;j<3;j++)
c[i][j]=a[i][j]+b[i][j];
printf("\nProdul Matricei A si B este : \n");
for(i=0;i<2;i++)
{
for(j=0;j<3;j++)
printf("%5d",c[i][j]);
printf("\n");
}
}
Ex 13
#include<stdio.h>
#include<conio.h>
int main() {
int i, j, a[10][10], sum, rows, columns;
printf("Introduceti nr. de randuri : ");
scanf("%d", &rows);
printf("\nIntroduceti nr. de coloane : ");
scanf("%d", &columns);
int main()
{
int A[MAX_ROWS][MAX_COLS];
int row, col, sum = 0;
printf("Introduceti valorike matricei : %dx%d: \n", MAX_ROWS,
MAX_COLS);
for(row=0; row<MAX_ROWS; row++)
{
for(col=0; col<MAX_COLS; col++)
{
scanf("%d", &A[row][col]);
}
}
for(row=0; row<MAX_ROWS; row++)
{
for(col=0; col<MAX_COLS; col++)
{
if(col<row)
{
sum += A[row][col];
}
}
}
printf("\nSuma elementelor din triunghiul inferior al diagonalei
principale este : %d\n", sum);
return 0;
}