Tablica 2 wymiarowa suma górnego wiersza

0

Cześć, napisałem funkcje sumującą górny wiersz tylko nie wiem za bardzo jakim cudem ona działa :O możecie mi to wytłumaczyć linijka po linijce?

public static void sumujGore(int tab[][]){
		
		int suma = 0;
		for(int x = 0; x < 1; x++)
		{
			for(int y = 0; y < tab.length; y++){
				suma+=tab[x][y];
			}
		}
		System.out.println(suma);
	}
0

Ta pętla

for(int x = 0; x < 1; x++)

ma tylko 1 iterację i x zawsze jest równe 0

0

napisałem
nie wiem jakim cudem działa

Na pewno.

0

Mam takie zadanie: Pobierz od usera tablice dwuwymiarowa i zwiększ wszystkie elementy tablicy nad przekątną o średnią arytmetyczną elementów pod przekątną.
I stanałem na takim momencie:

public static void main(String[] args) {
		int [][] tab = generujtablice(4, 4);
		wypisztablice(tab);
		sumujGore(tab);
		sumujPrzek(tab);
		
	}

	public static int[][] generujtablice(int ix, int iy) {
		int tablica[][] = new int[ix][iy];
		int liczba = 0;
		for (int i = 0; i < ix; i++)
			for (int j = 0; j < iy; j++){
				liczba++;
				tablica[i][j] = liczba;
			}
		return tablica;
	}
	public static void wypisztablice(int[][] tablica) {
	    for(int i = 0; i < tablica.length; i++) {
	      for(int j = 0; j < tablica[i].length; j++) {
	        System.out.print(tablica[i][j] + "\t");
	      }
	      System.out.println("");
	    }
	    System.out.println("");
	 }
	

I nie wiem co dalej..

0

Średnia może nie być liczbą całkowitą, lepiej zmień deklarację tablicy.

double [][] tab = generujtablice(4, 4);

Aby program nie był monotonny, to losuj elementy tablicy.

    public static double[][] generujtablice(int ix, int iy) {
        double[][] tablica[][] = new double[ix][iy];
        Random r = new Random();
        for (int i = 0; i < ix; i++)
            for (int j = 0; j < iy; j++){
                tablica[i][j] = r.nextInt(21) - 10;
            }
        return tablica;
    }

Po co Ci funkcja sumujGore? Potrzebna jest funkcja sumujDol.

static int sumujDol(double[][] tablica){
    int suma = 0;
    for(int w = 1;w < 4;w++){
       for(int k = 4 - w;k < 4; k++){
           suma += tablica[w][k];
       }
    }
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1