Sunteți pe pagina 1din 8

Minsiterul Educației,Culturii si Cercetării al Republicii Moldova

“Universitatea Internațională Libera din Moldova”

Lucrare de laborator Nr.7


Varianta Nr.13

Tema: Tablouri (uni și bidimensionale)

A efectuat elevul gr.TI : Petrenco Ion

A verificat profesorul : Mititelu Vitalii

Data:
Nota:
Semnatura profesorului:
Scopul: utilizarea mai multor clase concomitent pentru scrierea
programelor în limbajul de programare Java.

Sarcina care trebuie îndeplinită sună astfel:” Scrieți un


program care conține o clasă, cu metode care permit prelucrarea
tablourilor așa cum este indicat în variantă, citirea de la tastatură a
elementelor tabloului și afișarea pe ecran a tabloului și a rezultatul final,
apoi din altă clasă creează un obiect al clasei inițiale și apelează metodele
respective:”

În cazul lucrării de laborator nr.7 varianta nr.13 trebuie de creat un


program care să:” determină câte elemente divizibile cu 4 are un tablou”

Pentru a înțelege mai bine cum se va efectua crearea programului


prezit un scurt material teoretic.

O matrice multidimensională în Java este în esență o matrice din matrici.


Un exemplu popular de utilizare a acestui tip de matrice sunt matricele,
pentru reprezentarea cărora se folosesc matrice bidimensionale. Deci, ce
este o matrice și cum să o reprezentați folosind o matrice bidimensională
în Java?

O matrice este o masă dreptunghiulară formată din rânduri și coloane la


intersecția cărora se află elementele sale. Numărul de rânduri și coloane
ale matricei își stabilește dimensiunea. Vederea generală a unei matrice
de dimensiune m x n (m este numărul de rânduri, n este numărul de
coloane) și arată astfel:
În limbajul de programare Java o matrice se crează astfel:
int[][] matrixA;
matrixA = new int[2][3];

Pentru a accesa elementele unei matrice bidimensionale, trebuie să


utilizați 2 indexuri: primul pentru un rând, al doilea pentru o coloană. Ca
și în cazul matricelor unidimensionale, indexurile încep de asemenea de
la zero. Prin urmare, numerotarea rândurilor și coloanelor din tabel
începe de la 0.

matrixA[0][0] = 1;
matrixA[0][1] = -2;
matrixA[0][2] = 3;
matrixA[1][0] = 4;
matrixA[1][1] = 1;
matrixA[1][2] = 7;

Pentru a afișa matricea, trebuie să parcurgem toate elementele


folosind două cicluri. Numărul de cicluri în timpul trecerii elementelor de
matrice este egal cu dimensiunea sa. În cazul nostru, primul ciclu este
realizat pe rânduri, al doilea pe coloane.

for (int i = 0; i < 2; i++) {


for (int j = 0; j < 3; j++) {
System.out.print(matrixA[i][j] + "\t");
}
System.out.println();
}

Rezolvare:
import java.util.Scanner;

public class laborator7 {


   
    public static void main(String[] args){

        Scanner in = new Scanner(System.in);

        int count = 0;    
        int a, b;

        System.out.print("Introduceți numărul de linii din matrice: ");


        a = in.nextInt();
               
        System.out.print("Introduceți numărul de coloane din matrice: ");
        b = in.nextInt();

        int[][] matrixA = new int[a][b];


        for (int i = 0; i < matrixA.length; i++) {
            for (int j = 0; j < matrixA[i].length; j++) {
                System.out.print("Introduceti elementul matrixA[" + i + "][" +
j + "]:");
                matrixA[i][j] = in.nextInt();  
            }  
        }

        in.close();

        for (int i = 0; i < matrixA.length; i++) {


            for (int j = 0; j < matrixA[i].length; j++) {
                System.out.print(matrixA[i][j] + "\t");
                if (matrixA[i][j] %4 ==0) {
                    count++;
            }
        }

        System.out.println();
    }
        System.out.println("Numarul de cifre divizibile cu 4 este = "+count);
    }
}

Explicații:
Programul piermite crearea tablorilor în dependență de valoarea dată
pentru variabilele a și b .

Programul citește valorile pentru a și b introduse de la tastatură în


rândulrile:
System.out.print("Introduceți numărul de linii din matrice: ");
        a = in.nextInt();
               
        System.out.print("Introduceți numărul de coloane din matrice: ");
        b = in.nextInt();

și apoi crează un tablou luând în considerație mărimile acestuia :


int[][] matrixA = new int[a][b];

după care cu ajutorul ciclului for crere să introducem elemetele


tabloului:
for (int i = 0; i < matrixA.length; i++) {
            for (int j = 0; j < matrixA[i].length; j++) {
                System.out.print("Introduceti elementul matrixA[" + i + "][" +
j + "]:");
                matrixA[i][j] = in.nextInt();  
            }  
        }

Apoi urmeaza afișare tabloului:


for (int i = 0; i < matrixA.length; i++) {
            for (int j = 0; j < matrixA[i].length; j++) {
                System.out.print(matrixA[i][j] + "\t");
                if (matrixA[i][j] %4 ==0) {
                    count++;
            }
        }

și răspunul la întrebarea câte elemente divizibile cu 4 sunt în tablou:


System.out.println("Numarul de cifre divizibile cu 4 este = "+count);

Analiza rezultatului

Așadar am creat o matrice cu dimensiunile 2x2 și apoi am introdus


valorile 2, 4, 16, 20 după care programul a afișat tabloul și numărul de
elemente divizibile cu 4 care este = 3 deoarece 4, 16, 20 sunt divizibile cu
4 iar 2 nu.

Un alt exemplu

De data aceasta am creat un tablou cu dimensiuniile de 2x3 și am


introdu elementele 3, 5, 4, 6, 8, 12 dintre care doar 3 sunt divizibile cu 4
și programul afișează un raspuns corect.

Un alt exemplu
De data aceasta am creat un tablou cu dimensiunile 3x3 și am introdus
valorile 2, 5, 6, 8, 4, 20, 40, 13, 11 dintre care doar 4 sunt divizibile cu 4 și
programul din nou afișeaza un raspuns corect ce înseamna ca programul
a fost creat corect și îndeplinește toate cerințele lucrarii de laborator.

Concluzie
Așadar după efectuarea acestei lucrări de laborator am facut cunoștințe
mai profunde în ce ține crearea programelor care să citească de la
tastatură valorile introduse și mai apoi în dependență de valorile
introduse să creeze tablouri în care mai apoi este necesar de introdus
valori pentru a afla care din ele sunt divizible cu o anumită valoare sau
care din ele sunt mai mari sau egale cu o anumită valoare. Pentru a
rezolva această problemă am folosit cunoștințele acumulate anterior și
cyberforum.ru.

S-ar putea să vă placă și