[ Príspevkov: 3 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
nekonečný cyklus v jave

Registrovaný: 02.12.06
Prihlásený: 21.02.25
Príspevky: 690
Témy: 35 | 35
Bydlisko: Rimavská So...
NapísalOffline : 30.12.2009 16:07 | nekonečný cyklus v jave

ahojte nevite náhodou prečo sa toto furt zacyklí a počíta pri ďalšom priebehu cyklom s pôvodnou tojeterazjedno?



Kód:
public class SimplexMethod {
   private static TriangularMatrixAlgorithms<Fraction> tma = new TriangularMatrixAlgorithms<Fraction>();

   public static Fraction Maximize(Vector<Fraction> c,
         NumericMatrix<Fraction> a, Vector<Fraction> b) {
      if ((c == null) || (a == null) || (b == null)) {
         throw new NullPointerException();
      }
      if ((c.getLength() != a.getNoColumns())
            || (b.getLength() != a.getNoRows())) {
         throw new IllegalArgumentException();
      }
      NumericMatrix<Fraction> tojeterazjedno = new NumMatrix<Fraction>(a
            .getNoRows() + 1, a.getNoColumns() + a.getNoRows() + 1);
      Fraction[][] polevtjtj = new Fraction[tojeterazjedno.getNoRows()][tojeterazjedno
            .getNoColumns()];
      for (int i = 0; i < tojeterazjedno.getNoRows() - 1; i++) {
         for (int j = 0; j < tojeterazjedno.getNoColumns() - 1; j++) {
            if ((i < a.getNoRows()) && (j < a.getNoColumns())) {
               polevtjtj[i][j] = a.getElement(i, j);
            } else {
               if (j == (i + a.getNoColumns())) {
                  polevtjtj[i][j] = Fraction.ONE;
               } else {
                  polevtjtj[i][j] = Fraction.ZERO;
               }
            }
         }

      }
      for (int i = 0; i < tojeterazjedno.getNoColumns(); i++) {
         if (i < c.getLength()) {
            polevtjtj[tojeterazjedno.getNoRows() - 1][i] = c.getElement(i)
                  .negate();
         } else {
            polevtjtj[tojeterazjedno.getNoRows() - 1][i] = Fraction.ZERO;
         }
      }
      for (int i = 0; i < tojeterazjedno.getNoRows() - 1; i++) {
         polevtjtj[i][tojeterazjedno.getNoColumns() - 1] = b.getElement(i);
      }
      tojeterazjedno = new NumMatrix<Fraction>(polevtjtj);
      System.out.println(tojeterazjedno);
      boolean optimalne = true;
      for (int i = 0; i < tojeterazjedno.getNoColumns()-1; i++) {
         if (tojeterazjedno.getElement(tojeterazjedno.getNoRows() - 1, i)
               .compareTo(Fraction.ZERO) < 0) {
            optimalne = false;
            
         }

      }
      int stlpec=0;
      int riadok=0;
      boolean cyklus=true;
      ArrayList<Fraction> zoznam = new ArrayList<Fraction>();

      while (!optimalne) {
         for (int i = 1; i < tojeterazjedno.getNoColumns()-1; i++) {
            zoznam.add(tojeterazjedno.getElement(
                  tojeterazjedno.getNoRows() - 1, i));
         }
         Collections.sort(zoznam);
         cyklus=true;
         tu:
            if(cyklus){
         for (int i = 0; i < tojeterazjedno.getNoColumns()-1; i++) {
            if (tojeterazjedno
                  .getElement(tojeterazjedno.getNoRows() - 1, i).equals(
                        zoznam.get(0))) {
               stlpec = i;
               cyklus=false;
                   break tu;
            }
         }}
      
         zoznam.clear();
         for (int i = 0; i < a.getNoRows(); i++) {
            if (tojeterazjedno.getElement(i, stlpec)
                  .equals(Fraction.ZERO)){
               zoznam.add(new Fraction(Integer.MAX_VALUE));
            }else{
               zoznam.add(tojeterazjedno.getElement(i,
                     tojeterazjedno.getNoColumns() - 1).divide(
                     tojeterazjedno.getElement(i, stlpec)));
            }
         }
         Collections.sort(zoznam);
         cyklus=true;
         sem:
            if(cyklus){
         for (int i = 0; i < a.getNoRows(); i++) {
            if(tojeterazjedno.getElement(i, stlpec).equals(Fraction.ZERO)){
               
            }else{
            if (tojeterazjedno.getElement(i,
                  tojeterazjedno.getNoColumns() - 1).divide(
                  tojeterazjedno.getElement(i, stlpec)).equals(
                  zoznam.get(0))) {
               riadok = i;
               cyklus=false;
               break sem;
            
            }}
         }}
         
         zoznam.clear();
         for (int i = 0; i < tojeterazjedno.getNoRows(); i++) {
            if (i != riadok){
               if (!(tojeterazjedno.getElement(i, stlpec)
                     .equals(Fraction.ZERO))&&(!(tojeterazjedno.getElement(riadok, stlpec).equals(Fraction.ZERO)))) {
                  tojeterazjedno = tma.multiplyRowWithScalar(
                        tojeterazjedno, riadok, tojeterazjedno
                              .getElement(i, stlpec).divide(
                                    tojeterazjedno.getElement(
                                          riadok, stlpec))
                              .negate());
                  tojeterazjedno = tma.sumRows(tojeterazjedno, riadok, i);
               }
            }
         }
         tojeterazjedno=tma.multiplyRowWithScalar(tojeterazjedno, riadok, tojeterazjedno.getElement(riadok,stlpec).invert());
         System.out.println(tojeterazjedno);
         cyklus=true;
         optimalne = true;
         tuto:
            if(cyklus){
         for (int i = 0; i < tojeterazjedno.getNoColumns()-1; i++) {
            if (tojeterazjedno
                  .getElement(tojeterazjedno.getNoRows() - 1, i)
                  .compareTo(Fraction.ZERO) < 0) {
               optimalne = false;
               cyklus=false;
               break tuto;
            }

         }
            }
         
      }

      return null;
   }

}


_________________
Math is the best!
Offline

Skúsený užívateľ
Skúsený užívateľ
nekonečný cyklus v jave

Registrovaný: 30.05.06
Prihlásený: 08.10.14
Príspevky: 1756
Témy: 35 | 35
Bydlisko: BA - WESTSIDE
NapísalOffline : 01.01.2010 15:07 | nekonečný cyklus v jave

Skús si to debuggerom krokovať a kontroluj hodnoty premenných v priebehu výpočtu.


_________________
A. S. Tanenbaum píše:
The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.
Offline

Užívateľ
Užívateľ
nekonečný cyklus v jave

Registrovaný: 02.12.06
Prihlásený: 21.02.25
Príspevky: 690
Témy: 35 | 35
Bydlisko: Rimavská So...
Napísal autor témyOffline : 01.01.2010 16:58 | nekonečný cyklus v jave

díky naozaj to pomohlo je v cykle kde sa pridáva do zoznamu som mal int i=1 neviem prečo


_________________
Math is the best!
 [ Príspevkov: 3 ] 


nekonečný cyklus v jave



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Nekonečný cyklus

v JavaScript, VBScript, Ajax

8

646

04.09.2011 9:49

camo

V tomto fóre nie sú ďalšie neprečítané témy.

[pascal] nekonecny cyklus

v Assembler, C, C++, Pascal, Java

3

634

02.04.2010 13:24

vama

V tomto fóre nie sú ďalšie neprečítané témy.

da sa pouzit nekonecny cyklus na spustenie mesacneho cyklu?

v PHP, ASP

16

1076

16.10.2008 15:34

Roko

V tomto fóre nie sú ďalšie neprečítané témy.

Nekonecny virus ...

v Antivíry a antispywary

26

1367

11.07.2012 22:20

MaTT753

V tomto fóre nie sú ďalšie neprečítané témy.

Nekonecny slide obrazkov

v JavaScript, VBScript, Ajax

9

655

27.05.2010 21:02

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

Intel dp67bg - nekonečný boot loop

v Intel čipové sady

5

488

30.06.2014 13:56

4ndY252

V tomto fóre nie sú ďalšie neprečítané témy.

Gigabyte P85-D3 nekonecny restart

v Intel čipové sady

2

529

10.07.2014 20:01

kub4n3c

V tomto fóre nie sú ďalšie neprečítané témy.

localhost background-image FF nekonečný refreš

v Ostatné

4

498

05.10.2011 19:35

camo

V tomto fóre nie sú ďalšie neprečítané témy.

[W10]zamrznutie, bsod a nekonecny loading

v Operačné systémy Microsoft

0

408

27.09.2015 20:59

tntckoo

V tomto fóre nie sú ďalšie neprečítané témy.

Intel a 10 Nm - nekonečný príbeh

[ Choď na stránku:Choď na stránku: 1, 2, 3 ]

v Novinky

63

2922

03.01.2020 16:52

patro16

V tomto fóre nie sú ďalšie neprečítané témy.

VB - cyklus

v Delphi, Visual Basic

3

774

21.05.2009 11:19

Patkoo

V tomto fóre nie sú ďalšie neprečítané témy.

diagram cyklus

v Ostatné

2

417

13.06.2018 17:14

void

V tomto fóre nie sú ďalšie neprečítané témy.

Vesmir nemoze byt nekonecny - taka halucinogenna uvaha

[ Choď na stránku:Choď na stránku: 1 ... 7, 8, 9 ]

v Vesmír, veda a technika

264

18507

12.11.2013 13:01

marian_r

V tomto fóre nie sú ďalšie neprečítané témy.

JAVA, FOREACH CYKLUS

v Assembler, C, C++, Pascal, Java

2

664

25.08.2017 8:20

mitko

V tomto fóre nie sú ďalšie neprečítané témy.

C cyklus for

v Assembler, C, C++, Pascal, Java

10

878

26.11.2011 13:57

Fico

V tomto fóre nie sú ďalšie neprečítané témy.

PHP cyklus for

v PHP, ASP

8

574

20.11.2010 16:13

venom2



© 2005 - 2025 PCforum, edited by JanoF