Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

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