Matematické Fórum


1. 8. 2026 (L) Fórum bude brzy uzavřeno 😿

Nejste přihlášen(a). Přihlásit

#1 13. 11. 2010 12:34 — Editoval Joerex (13. 11. 2010 15:33)

Joerex
Příspěvky: 168
Reputace:   
 

Java - nalezení řádku s nejvetšim součtem prvků v matici

Zdravim,potřeboval bych udělat metodu na zjištění  řádku, který má největší součet svých prvků.
Měli sme vytvořit matici s dvourozměrnym polem a napsat metody na její výpis,naplnění,nalezení maximálního čísla a ten součet řádku.
Všechno mam,ale s tim součtem si nějak neumim poradit.Nemohl by mi ho prosim někdo napsat?

Zde je to co jsem prozatim vytvořil.

Code:

public class Matice {

    private int[][] matice;


    public void inicializaceMatice() {
     matice = new int[6][5];
    }

    public void naplMatici() {
      for (int radek = 0; radek < matice.length; radek++) {
        for (int sloupec = 0; sloupec < matice[0].length; sloupec++) {
          matice[radek][sloupec] = (int) (Math.random() *10 + 1);
        }

    }
    }

    public void vypisMatici() {
      for (int radek = 0; radek < matice.length; radek++) {
        for (int sloupec = 0; sloupec < matice[radek].length; sloupec++) {
         System.out.print(matice[radek][sloupec]+ " ");
      }
      System.out.println();
    }
  }

    public void soucetRadku() {
      int sou = 0;
      int n;
      n = matice.length;
      for(int radek = 0; radek < n; radek++) {
         for(int sloupec = 0+1; sloupec < n; radek++) {
          sou = sou + matice[radek][sloupec];
        }
      System.out.println("soucet nejvetsiho radku je: " +sou);


        }
    }

    public void najdiMax() {
       int max = 0;
       for(int radek = 0; radek < matice.length; radek++) {
           for(int sloupec = 0; sloupec < matice[0].length; sloupec++) {
               if(matice[radek][sloupec] >= max) {
                   max = matice[radek][sloupec];

               }
           }
       }
       System.out.println("maximum je: " +max);
   }


   public static void main(String[] args) {
        Matice test = new Matice();
        test.inicializaceMatice();
        test.naplMatici();
        test.vypisMatici();
        test.soucetRadku();
        test.najdiMax();



    }
}

Offline

  • (téma jako vyřešené označil(a) Joerex)

#2 13. 11. 2010 15:45 — Editoval VojtechSejkora (13. 11. 2010 15:47)

VojtechSejkora
Příspěvky: 176
Reputace:   
 

Re: Java - nalezení řádku s nejvetšim součtem prvků v matici

↑ Joerex:
bodejť by ti to našlo nejvyšší řádek, když to nikde neporovnáváš:D a při vstupu na další řádek proměnou sou nenuluješ:D

podle mého názoru by jsi měl napsat tu metodu cca takto

Code:

public void soucetRadku() {
      int sou = 0;
      int nejvyssiSou=0;

      for(int radek = 0; radek <matice.length; radek++) {
         sou=0;

           for(int sloupec = 0+1; sloupec < matice[radek].length; radek++) {
            sou += matice[radek][sloupec];
          }

          if(nejvyssiSou<sou){
             nejvyssiSou=sou;
          }
     }

 System.out.println("soucet nejvetsiho radku je: " +nejvyssiSou);
    }

tak asi tak:D

jo mimochodem ty fory ti nefungujou a fungovat nebudou, ale já je opravovat nebudu, příjď si na to sám proč takto napsané fory nefungují:D(takto jsi to napsal ty)
+ docela zajímavá identifikace  int sloupec = 0+1     proč tam rovnou nedáš int sloupec = 1    nebo int sloupec = 0


pokud nebudeš moc přijít na to proč ti nefungují zkus se kouknout na poslední parametr for

Offline

 

#3 13. 11. 2010 21:26

Joerex
Příspěvky: 168
Reputace:   
 

Re: Java - nalezení řádku s nejvetšim součtem prvků v matici

↑ VojtechSejkora:

vejram na to už hodinu,ale stále se nemůřu dopracovat do zdárného konce

Offline

 

#4 13. 11. 2010 22:15 — Editoval VojtechSejkora (13. 11. 2010 22:20)

VojtechSejkora
Příspěvky: 176
Reputace:   
 

Re: Java - nalezení řádku s nejvetšim součtem prvků v matici

↑ Joerex:
sry že až teď, ale nevšiml sjem si toho dříve...jaksi tkay něco řeším a nemohu přijít na to proč mi to nefunguje:(

zkus toto přepsat
for(int sloupec = 0+1; sloupec < matice[radek].length; radek++) {

na toto
for(int sloupec = 0; sloupec < matice[radek].length; sloupec++) {

Offline

 

#5 13. 11. 2010 23:21 — Editoval Joerex (14. 11. 2010 10:48)

Joerex
Příspěvky: 168
Reputace:   
 

Re: Java - nalezení řádku s nejvetšim součtem prvků v matici

↑ VojtechSejkora:
to jsem zkoušel a pořád to háže chybu na tomhle řádku

edit: Já sem jantar! už to jede :D...špatně sem to opsal :D. Díky za pomoc.

Offline

 

#6 14. 11. 2010 14:31

VojtechSejkora
Příspěvky: 176
Reputace:   
 

Re: Java - nalezení řádku s nejvetšim součtem prvků v matici

↑ Joerex:
není zač.... neboj já to taky nejdříve testoval jestli to poběží, abych sem nedal něco co by neběželo.....

hodně úspěchů v programování:)

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson