import matrice.*; import citeste.*; import java.io.*; class meniu_matrice { public static void main(String args[]) { char c1, c; matrice a = new matrice(); matrice b = new matrice(); do { System.out.println("C-Citire matrice 1"); System.out.println("V-Citire matrice 2"); System.out.println("A-Afisare matrice 1"); System.out.println("F-Afisare matrice 2"); System.out.println("G-Adunarea a doua matrice"); System.out.println("H-Scaderea a doua matrice"); System.out.println("L-Inmultirea a doua matrice"); System.out.println("N-Crearea unei matrice unitare"); System.out.println("M-Inmultire matrice cu un numar"); System.out.println("S-Verificare daca matricea este simetrica"); System.out.println("T-Transpusa matricei"); System.out.println("P-Elementele maxime de pe fiecare linie"); System.out.println("B-Suma elementelor de sub diagonala principala"); System.out.println("D-Suma elementelor aflate in triunghiul superior marginit de diagonale"); System.out.println("I-Informatii despre autor"); System.out.println("E-Terminare program\n"); c1 = citeste.car("Introduceti o optiune:"); c = Character.toLowerCase(c1); try { System.in.read(); System.in.read(); }catch(IOException e){ e.printStackTrace();} System.out.println(""); switch(c) { case 'c': a.citire(); break; case 'a': a.afisare(); break; case 'v': b.citire(); break; case 'f': b.afisare(); break; case 'm': double d; d = citeste.real("Introduceti constanta de inmultit:"); a.inmultire_cta(d); break; case 'g': if(a.linii() != b.linii() || a.coloane() != b.coloane()) System.out.println("Matricele nu au aceleasi dimensiuni. Nu se poate face adunare."); else { matrice suma = new matrice(a.linii(), a.coloane()); suma = a.adunare(b); System.out.println("Suma matricelor introduse:"); suma.afisare(); } break; case 'h': if(a.linii() != b.linii() || a.coloane() != b.coloane()) System.out.println("Matricele nu au aceleasi dimensiuni. Nu se poate face scadere."); else { matrice dif = new matrice(a.linii(), a.coloane()); dif = a.scadere(b); System.out.println("Diferenta matricelor introduse:"); dif.afisare(); } break; case 'l': if(a.coloane() != b.linii()) System.out.println("Matricele nu pot fi inmultite. Dimensiuni nevalide."); else { matrice p = new matrice(a.linii(), b.coloane()); p = a.inmultire(b); System.out.println("Produsul matricelor introduse:"); p.afisare(); } break; case 'n': int grad = 0; grad = citeste.intreg("Introduceti gradul matricei unitare n="); matrice io = new matrice(grad, grad); io = matrice.matrice_unitate(grad); io.afisare(); break; case 's': if(a.matrice_simetrica() == 1) System.out.println("Matricea este simetrica."); else System.out.println("Matricea nu este simetrica."); break; case 't': matrice t = new matrice(a.coloane(), a.linii()); t = a.transpusa(); t.afisare(); break; case 'p': a.maxim_linii(); break; case 'b': System.out.println("Suma sub diagonala: " + a.suma_sub_diagonala()); break; case 'd': System.out.println("Suma elementelor deasupra diagonalelor: " + a.suma_deasupra_diagonale()); break; case 'i': System.out.println("Tomas George Bogdan"); break; case 'e': System.exit(0); break; default: System.out.println("Ati apasat o tasta gresita!"); } System.out.println("\n"); }while(true); } }