Operatii cu matrici

Imagine preview
(7/10 din 1 vot)

Acest laborator prezinta Operatii cu matrici.
Mai jos poate fi vizualizat un extras din document (aprox. 2 pagini).

Arhiva contine 2 fisiere pdf, c de 7 pagini (in total).

Profesor: MTK

Iti recomandam sa te uiti bine pe extras si pe imaginile oferite iar daca este ceea ce-ti trebuie pentru documentarea ta, il poti descarca.

Fratele cel mare te iubeste, acest download este gratuit. Yupyy!

Domeniu: Calculatoare

Extras din document

Utilizarea matricelor. Citirea şi afişarea matricelor

1.1 Definirea matricelor

O matrice este o structură de date compusă dintr-un număr finit de componente, fiecare componentă fiind de acelaşi tip: întreg, real, caracter, şir de caractere etc.

Utilizarea unei matrice presupune parcurgerea următorilor paşi:

- definirea matricei, moment în care se precizează tipul indicelui, tipul elementelor şi dimensiunea maximă admisă a matricei;

- iniţializarea sau citirea matricei;

- operaţiile efectuate asupra matricei;

- afişarea matricei.

1.1.1 Matrice în C

Pentru a defini o matrice, în limbajul C, se foloseşte o construcţie de forma:

type nume_tip = array [tip_ordinal] of tip_elemente;

unde:

nume_tip denumirea unui tip de date, creat de utilizator, care defineşte matricele de formatul respectiv;

tip_ordinal cel mai adesea, un interval care indică limita minimă şi maximă a indicelui elementelor matricei (de aici rezultă şi dimensiunea matricei);

tip_elemente denumirea unui tip de date care defineşte elementele matricei.

iar mai apoi, în acelaşi program, se definesc matricele care sunt de tipul indicat mai sus, printr-o construcţie de forma:

var matrice1, [matrice2, …] : nume_tip;

De exemplu: pentru a defini o matrice pătrată de dimensiune maxim 10 x 10 elemente, ale cărei elemente sunt valori întregi, se folosesc instrucţiunile C:

type matrice_intreaga = array [1..10] of integer;

var a : matrice_intreaga;

Observaţie: dacă programul nu include subprograme (proceduri sau funcţii) atunci definirea matricei se poate face prescurtat astfel:

var matrice1, [matrice2, …] = array [tip_ordinal] of tip_elemente;

5

1.2 Algoritmul de citire a matricelor -- presupune parcurgerea următorilor paşi:

1) se citesc dimensiunile matricei

2) se parcurg, pe rând, liniile matricei

3) pe fiecare linie, se parcurg toate elementele (fiecare coloană)

4) se citeşte elementul din matrice

1.3 Algoritmul de afişare a matricelor -- presupune parcurgerea următorilor paşi:

1) se parcurg, pe rând, liniile matricei

2) pe fiecare linie, se parcurg toate elementele (fiecare coloană)

3) se afişează elementul din matrice

4) când s-au afişat toate elementele de pe o linie a matricei, se trece la linia următoare pe ecran

Rezolvarea temei în limbajul C

//Citirea și afișarea matricelor, cu posibilitatea modificării unui element de pe o anumită poziție

#include<stdio.h>

#include<stdlib.h>

#include<conio.h>

#define MAX 15

int main(){

int i,j,matrice[MAX][MAX],n,m,k,l,p, stare;

char car;

printf("n Introducerea elementelor matriceinn");

printf("Tastati nr de linii(n<10): ");scanf("%d",&n);

printf("Tastati nr de coloane(m<10): ");scanf("%d",&m);

printf("nTastati elementele matricei:n");

for(i=0;i<n;i++)

for(j=0;j<m;j++){

printf("Elementul a[%d,%d]: ",i+1,j+1);

scanf("%d",&matrice[i][j]);

}

printf("nnMatricea este:n");

for(i=0;i<n;i++){

for(j=0;j<m;j++)

printf(" %d",matrice[i][j]);

printf("n");

}

stare=0;

do{

printf("nVreti sa modificati valoarea unui anumit element?D/Nn");

car=getche(); //in codeblocks este getche(); in borland C este getchar()

if(car=='D' || car=='d'){

stare=1;

printf("nTastati pozitia de modificat sub forma x,y : ");scanf("%d%*c%d",&k,&l);

printf("Tastati noua valoare :");scanf("%d",&p);

matrice[k][l]=p;

}

}while(car=='D' || car=='d');

if(stare){

printf("nnAfisarea matricii modificate:n");

for(i=0;i<n;i++){

printf("|");

for(j=0;j<m;j++)

printf(" %d",matrice[i][j]);

printf("|n");

6

}

}getche();

return 0;

}

Fisiere in arhiva (2):

  • 1_01.c
  • Operatii cu matrici.pdf