You are on page 1of 7

Ministerul Educației, Culturii și Cercetării al Republicii Moldova

I.P. Centrul de Excelență în Informatică și Tehnologii Informaționale


 

Catedra: Informatică I
 
 
 

Raport ziua 7

la “Practica de instruire”

 
 Elev: Coșman Stanislav, P 1821
Profesor: Arcan Petru
 
 

Chisinau, 2020
Screenshot-ul agendei:

Listingul programului:
import java.io.BufferedReader;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;

public class Varianta10 {

static void menu() {


System.out.println("I========================Alegeti o
varianta===========================I");
System.out.println("I 1 - Inregistreaza un rand nou I");
System.out.println("I 2 – Exclude din planul tablei n rand/coloana I");
System.out.println("I 3 – Minimul absolut al inalțimilor tablei I");
System.out.println("I 4 – Înalțimea medie I");
System.out.println("I 5 – Afisarea sortată a coloanelor tablei I");
System.out.println("I 6 – Fișierul text OrdSir.txt I");
System.out.println("I 7 – Aria maximală a unui patrat de pe tablă I");
System.out.println("I 8 – Problemă rezolvată I");
System.out.println("I 9 - Exit I");

System.out.println("I===============================================================
======I");

}
//=============================================================================
==========================================
static void fileRead(Scanner filescan, int[][] myArray) throws IOException {

while(filescan.hasNext()) {
for (int i=0; i<myArray.length; i++) {
for (int j=0; j<myArray[i].length; j++) {
if(filescan.hasNextInt()) {
myArray[i][j] = filescan.nextInt();
}
}
}
}
filescan.close();
}
//=============================================================================
==========================================
static void seeMatrix(int[][] myArray){
for (int i=0; i<myArray.length; i++) {
for (int j=0; j<myArray[i].length; j++) {
System.out.print(myArray[i][j]+" ");
}
System.out.println();
}
}
//=============================================================================
==========================================
static void insertRow(int[][] myArray, int n, int m) throws IOException {
Scanner insert = new Scanner(System.in);
FileWriter fw = new FileWriter("Vopsea.txt");
String where=insert.next();
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if(where.equalsIgnoreCase("Sud")) {
int[][] myArray2= new int[n+1][m];
for(int i=0;i<n;i++) {
for(int j=0;j<m;j++) {
myArray2[i][j]=myArray[i][j];
}
}

for(int i=0;i<n;i++) {
for(int j=0;j<m;j++) {
if(i==n-1) {
myArray2[i+1][j]=insert.nextInt();
}
}
}

fw.write((n+1)+" "+m+"\n");
for(int i=0;i<myArray2.length;i++) {
for(int j=0;j<myArray2[i].length;j++) {
fw.write(myArray2[i][j]+" ");
}
fw.write("\n");
}
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if(where.equalsIgnoreCase("Est")) {
int[][] myArray2= new int[n][m+1];
for(int i=0;i<n;i++) {
for(int j=0;j<m;j++) {
myArray2[i][j]=myArray[i][j];
}
}
for(int i=0;i<n;i++) {
for(int j=0;j<m;j++) {
if(j==m-1) {
myArray2[i][j+1]=insert.nextInt();
}
}
}

fw.write(n+" "+(m+1)+"\n");
for(int i=0;i<myArray2.length;i++) {
for(int j=0;j<myArray2[i].length;j++) {
fw.write(myArray2[i][j]+" ");
}
fw.write("\n");
}
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if(where.equalsIgnoreCase("Nord")) {
int[][] myArray2= new int[n+1][m];
for(int i=0;i<n;i++) {
for(int j=0;j<m;j++) {
myArray2[i+1][j]=myArray[i][j];
}
}

for(int i=0;i<n;i++) {
for(int j=0;j<m;j++) {
if(i==0) {
myArray2[i][j]=insert.nextInt();
}
}
}

fw.write((n+1)+" "+m+"\n");
for(int i=0;i<myArray2.length;i++) {
for(int j=0;j<myArray2[i].length;j++) {
fw.write(myArray2[i][j]+" ");
}
fw.write("\n");
}
}
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++
if(where.equalsIgnoreCase("Vest")) {
int[][] myArray2= new int[n][m+1];
for(int i=0;i<n;i++) {
for(int j=0;j<m;j++) {
myArray2[i][j+1]=myArray[i][j];
}
}

for(int i=0;i<n;i++) {
for(int j=0;j<m;j++) {
if(j==0) {
myArray2[i][j]=insert.nextInt();
}
}
}

fw.write(n+" "+(m+1)+"\n");
for(int i=0;i<myArray2.length;i++) {
for(int j=0;j<myArray2[i].length;j++) {
fw.write(myArray2[i][j]+" ");
}
fw.write("\n");
}
}

fw.close();
insert.close();
}
//=============================================================================
==========================================
static void delArr(int[][] myArray, int n, int m) throws IOException {
Scanner cin = new Scanner(System.in);
FileWriter fw = new FileWriter("Vopsea.txt");
System.out.println("Ce doriti sa stergeti?");
String what=cin.next();
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

if(what.equalsIgnoreCase("Rand")) {
int[][] delArr=new int[myArray.length-1][myArray[0].length];
int p=0;
int del=cin.nextInt();
for(int i=0;i<myArray.length;i++) {
if(i!=del) {
for(int j=0;j<myArray[0].length;j++) {
delArr[p][j]=myArray[i][j];
}
p++;
}
}

fw.write((n-1)+" "+m+"\n");
for(int i=0;i<delArr.length;i++) {
for(int j=0;j<delArr[i].length;j++) {
fw.write(delArr[i][j]+" ");
}
fw.write("\n");
}
}
//++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

if(what.equalsIgnoreCase("Coloana")) {
int[][] delArr=new int[myArray.length][myArray[0].length-1];

int del=cin.nextInt();
for(int i=0;i<myArray.length;i++) {
int q=0;
for(int j=0;j<myArray[0].length;j++) {
if(j!=del) {
delArr[i][q]=myArray[i][j];
q++;
}
}
}
fw.write(n+" "+(m-1)+"\n");
for(int i=0;i<delArr.length;i++) {
for(int j=0;j<delArr[i].length;j++) {
fw.write(delArr[i][j]+" ");
}
fw.write("\n");
}
}
cin.close();
fw.close();
}
//=============================================================================
==========================================
static void minAbs(int[][] myArray) {
int min=9999999, x=0, y=0;
for (int i=0; i<myArray.length; i++) {
for (int j=0; j<myArray[i].length; j++) {
if(min>=myArray[i][j]) {
min=myArray[i][j];
x=i;
y=j;
}
}
}
System.out.println("Minimul:"+min+" cu coordoata:"+x+" "+y);
}
//=============================================================================
==========================================
static void avgPer(int[][] myArray, int n, int m) {
int avg=0, count=0;
for (int i=0; i<myArray.length; i++) {
for (int j=0; j<myArray[i].length; j++) {
if(i==0) {
avg=avg+myArray[i][j];count++;}
if(j==0 && i>0 && i<n-1) {
avg=avg+myArray[i][j];count++;}
if(j+1==m && i>0 && i<n-1) {
avg=avg+myArray[i][j];count++;}
if(i==n-1) {
avg=avg+myArray[i][j];count++;}
}
}
System.out.println("Avg:"+avg/count);
}
//=============================================================================
==========================================
public static void main(String [] args) throws IOException {
Scanner input=new Scanner(System.in);
Scanner filescan = new Scanner (new BufferedReader(new FileReader("Vopsea.txt")));
int n = filescan.nextInt();
int m = filescan.nextInt();
int [][] A = new int[n][m];
fileRead(filescan, A);
seeMatrix(A);
menu();
int in=input.nextInt();
switch(in) {
case 1:{insertRow(A, n, m);break;}
case 2:{delArr(A, n, m);break;}
case 3:{minAbs(A);break;}
case 4:{avgPer(A, n, m);break;}
case 5:{maxVec(A, n, m);break;}
}

System.out.println("\n==========================================");

filescan.close();
input.close();
}

You might also like