[ Príspevkov: 3 ] 
AutorSpráva
Offline

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

Registrovaný: 02.12.06
Prihlásený: 17.12.24
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ý: 17.12.24
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

639

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

626

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

1070

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

1356

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

649

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

482

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

519

10.07.2014 20:01

kub4n3c

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

395

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

2895

03.01.2020 16:52

patro16

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

localhost background-image FF nekonečný refreš

v Ostatné

4

490

05.10.2011 19:35

camo

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

VB - cyklus

v Delphi, Visual Basic

3

768

21.05.2009 11:19

Patkoo

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

diagram cyklus

v Ostatné

2

412

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

18447

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

648

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

872

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

570

20.11.2010 16:13

venom2



© 2005 - 2024 PCforum, edited by JanoF