Problem sa racunanjem sume kolona u dvodimenzionalnom nizu

2

Problem sa racunanjem sume kolona u dvodimenzionalnom nizu

offline
  • Pridružio: 18 Dec 2009
  • Poruke: 14

for (int k = 0; k < kolona; k++).
ako ostavim ovako ne uracuna poslednji red
ako stavim
for (int k = 0; k <= kolona; k++)
uradi sve kako treba ali mi javi onu gresku
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 4
at jeb****.Trabunjanje.main(Trabunjanje.java:38)
medjutim veliki se problem javlja kad stavim npr da broj kolona bude 10 ili bilo sta vece od broja redova



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14623
  • Gde živiš: Niš

To je zbog toga što si permutovao kolone i vrste. Kada računaš zbir kolona, onda spoljna petlja uzima kao graničnu vrednost broj kolona, dok unutrašnja uzima kao graničnu vrednost broj vrsta. Dakle, umesto
for (int r = 0; r < red; r++) {    for (int k = 0; k <= kolona; k++)    ... } treba da imaš sledeće:
for (int k = 0; k < kolona; k++) {    for (int r = 0; r < red; r++)    ... }



offline
  • Pridružio: 18 Dec 2009
  • Poruke: 14

Napisano: 10 Mar 2015 17:06

for (int r = 0; r < tablica[0].length ; r++){              for (int k = 0; k < tablica.length; k++)              kolTotal += tablica[k][r];              kolProsek = kolTotal / red;                     System.out.println("Ukupan zbir u koloni "+ (r+1) +" je: "+ kolTotal + " a prosek kolona je: "+ kolProsek);           kolTotal = 0;           kolProsek = 0;           }
evo ga

Dopuna: 10 Mar 2015 17:08

vidis kako je bzvz bilo
samo sam u prvoj koloni morao da odredim koliko je velika i to je sve
samo je to bio problem naci kako da uradim a i da se setim da mi to treba
vasa.93 ::To je zbog toga što si permutovao kolone i vrste. Kada računaš zbir kolona, onda spoljna petlja uzima kao graničnu vrednost broj kolona, dok unutrašnja uzima kao graničnu vrednost broj vrsta. Dakle, umesto
for (int r = 0; r < red; r++) {    for (int k = 0; k <= kolona; k++)    ... } treba da imaš sledeće:
for (int k = 0; k < kolona; k++) {    for (int r = 0; r < red; r++)    ... }

to je jedna od prvih stvari koje sam probao al nije islo

Dopuna: 10 Mar 2015 17:10

najverovatnije sam dok sam to radio napravio jos neku gresku jer sam bio besan
ili ko zna sta je bilo u pitanju
uglavnom to je to
hvala na pomoci

offline
  • Milan
  • Pridružio: 17 Dec 2007
  • Poruke: 14623
  • Gde živiš: Niš

sadamceizle ::to je jedna od prvih stvari koje sam probao al nije isloDruže, sledeća dva su jedno te isto:
for (int r = 0; r < tablica[0].length ; r++) {       for (int k = 0; k < tablica.length; k++)       kolTotal += tablica[k][r];    ... } for (int k = 0; k < kolona; k++) {    for (int r = 0; r < red; r++)       kolTotal += tablica[r][k];    ... } Very Happy

Ko je trenutno na forumu
 

Ukupno su 657 korisnika na forumu :: 18 registrovanih, 3 sakrivenih i 636 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: 8u47, amaterSRB, Apok, darkangel, djo97, goxin, HrcAk47, Jester, Konda, Miha79, Misirac, Miskohd, mk, ofbeyond, Panter, RJ, Smiljke, vlvl