

![]() |
![]() |
|
|||||||
![]() |
![]() |
| programowanie języki, projekty, pomoc, oprócz html, php, js |
|
|
|
LinkBack | Narzędzia wątku | Przeszukaj ten temat | Wygląd |
![]() |
![]() |
|
|||
|
Witam.
Ściągnąłem sobie książkę Thinking in Java Edycja Polska z tego forum.I mam problem i doszedłem do strony 104 gdzie jest przykład użycia operatorów matematycznych który zamieszczę poniżej. Kod:
//: c03:MathOps.java
// Demonstracja operatorów matematycznych.
// Z książki 'Thinking in Java, 3rd ed.' (c) Bruce Eckel 2002
// www.BruceEckel.com. Patrz uwagi w pliku CopyRight.txt.
import com.bruceeckel.simpletest.*;
import java.util.*;
public class MathOps {
static Test monitor = new Test();
// skrót wypisujący łańcuch i liczbę całkowitą:
static void printInt(String s, int i) {
System.out.println(s + " = " + i);
}
// skrót wypisujący łańcuch i liczbę rzeczywistą:
static void printFloat(String s, float f) {
System.out.println(s + " = " + f);
}
public static void main(String[] args) {
// Stwórz generator liczb losowych,
// domyślnie inicjowany przez aktualny czas:
Random rand = new Random();
int i, j, k;
// Wybierz wartość do 1 do 100:
j = rand.nextInt(100) + 1;
k = rand.nextInt(100) + 1;
printInt("j", j); printInt("k", k);
i = j + k; printInt("j + k", i);
i = j - k; printInt("j - k", i);
i = k / j; printInt("k / j", i);
i = k * j; printInt("k * j", i);
i = k % j; printInt("k % j", i);
j %= k; printInt("j %= k", j);
// Testy na liczbach zmiennoprzecinkowych:
float u,v,w; // stosuje się również do typu double
v = rand.nextFloat();
w = rand.nextFloat();
printFloat("v", v); printFloat("w", w);
u = v + w; printFloat("v + w", u);
u = v - w; printFloat("v - w", u);
u = v * w; printFloat("v * w", u);
u = v / w; printFloat("v / w", u);
// poniższy kod działa również dla typów
// char, byte, short, int, long,
// oraz double:
u += v; printFloat("u += v", u);
u -= v; printFloat("u -= v", u);
u *= v; printFloat("u *= v", u);
u /= v; printFloat("u /= v", u);
monitor.expect(new String[] {
"%% j = -?\\d+",
"%% k = -?\\d+",
"%% j \\+ k = -?\\d+",
"%% j - k = -?\\d+",
"%% k / j = -?\\d+",
"%% k \\* j = -?\\d+",
"%% k % j = -?\\d+",
"%% j %= k = -?\\d+",
"%% v = -?\\d+\\.\\d+(E-?\\d)?",
"%% w = -?\\d+\\.\\d+(E-?\\d)?",
"%% v \\+ w = -?\\d+\\.\\d+(E-?\\d)??",
"%% v - w = -?\\d+\\.\\d+(E-?\\d)??",
"%% v \\* w = -?\\d+\\.\\d+(E-?\\d)??",
"%% v / w = -?\\d+\\.\\d+(E-?\\d)??",
"%% u \\+= v = -?\\d+\\.\\d+(E-?\\d)??",
"%% u -= v = -?\\d+\\.\\d+(E-?\\d)??",
"%% u \\*= v = -?\\d+\\.\\d+(E-?\\d)??",
"%% u /= v = -?\\d+\\.\\d+(E-?\\d)??"
});
}
} ///:~
http://www.fotosik.pl/pokaz_obrazek/...272b1f660.html więc problem chyba lezy w import com.bruceeckel.simpletest.*; ?? Jak myślicie o co tu chodzi? W netbeansie przykładowy program przepisany z tej książki również nie działa: http://www.fotosik.pl/pokaz_obrazek/...a7db4b724.html |
![]() |
![]() |
![]() |
![]() |
|
|||
|
O to chodzi:
Kod:
import com.bruceeckel.simpletest.*; |
![]() |
![]() |
![]() |
![]() |
|
|||
|
Mógłbyś krok po kroku bo googlowałem trochę w poszukiwaniu jak ustawić ten classpath czyli że trzeba mniej więcej to jakos tak uruchamiać
java -classpath D:\myprogram org.mypackage.HelloWorld Jednak nie wiem jak to przekombinować w moim przypadku jeżeli ten pakiet u mnie jest w katalogu C:\Documents and Settings\Dj Danto\Pulpit\thija3\com\bruceeckel\simpletest a plik Assignment.class który chcę uruchomić ma ścieżkę C:\Documents and Settings\Dj Danto\Pulpit\thija3\c03\Assignment.class |
![]() |
![]() |
![]() |
![]() |
|
|||
|
Classpath'y możesz łączyć. W Windows średnik, w systemach unixowych dwukropek. Wystrzegaj się*w ścieżkach spacji, bo to ci tylko utrudni zbudowanie ścieżki. To powinno pomóc.
Kod:
java -cp "C:\Documents and Settings\Dj Danto\Pulpit\thija3;C:\Documents and Settings\Dj Danto\Pulpit\thija3\c03" Assigment Kod:
<project name="" default="run" basedir=".">
<target name="run">
<java fork="true" classname="Assignment">
<classpath>
<pathelement location="C:/Documents and Settings/Dj Danto/Pulpit/thija3/c03"/>
<pathelement location="C:/Documents and Settings/Dj Danto/Pulpit/thija3"/>
</classpath>
</java>
</target>
</project>
Kod:
ant -f run.xml |
![]() |
![]() |
![]() |
![]() |
|
|||
|
Problem jest w tym, że jest błąd w pliku OutputVerifier.java:
jest: Kod:
((String) out[i]).compareTo(expected[i]) < 0 Kod:
((String) out[i]).compareTo((String)expected[i]) < 0 |
![]() |
![]() |
![]() |
![]() |
|
|||
|
Wg mnie wystarczy usunąć z podanego przez ciebie listningu
linie: Kod:
import com.bruceeckel.simpletest.*; Kod:
monitor.expect(new String[] {
"%% j = -?\\d+",
"%% k = -?\\d+",
"%% j \\+ k = -?\\d+",
"%% j - k = -?\\d+",
"%% k / j = -?\\d+",
"%% k \\* j = -?\\d+",
"%% k % j = -?\\d+",
"%% j %= k = -?\\d+",
"%% v = -?\\d+\\.\\d+(E-?\\d)?",
"%% w = -?\\d+\\.\\d+(E-?\\d)?",
"%% v \\+ w = -?\\d+\\.\\d+(E-?\\d)??",
"%% v - w = -?\\d+\\.\\d+(E-?\\d)??",
"%% v \\* w = -?\\d+\\.\\d+(E-?\\d)??",
"%% v / w = -?\\d+\\.\\d+(E-?\\d)??",
"%% u \\+= v = -?\\d+\\.\\d+(E-?\\d)??",
"%% u -= v = -?\\d+\\.\\d+(E-?\\d)??",
"%% u \\*= v = -?\\d+\\.\\d+(E-?\\d)??",
"%% u /= v = -?\\d+\\.\\d+(E-?\\d)??"
});
Z każdego listningu z tej książki można to usunąć i nic złego to nie zrobi. A jeśli kod przepisujesz z książki to tylko zyskasz na czasie nie bawiąc się tym 'monitor.expect()'. |
![]() |
![]() |
|
| Tagi |
| problem z przykladami |
| Narzędzia wątku | Przeszukaj ten temat |
| Wygląd | |
|
|
Podobne wątki
|
||||
| Temat | Autor wątku | Forum | Odpowiedzi | Ostatni post/autor |
| Thinking in Java - wydanie 3 | doomboy | informatyka | 8 | 03.03.2011 23:59 |
| [RS] Thinking In JAVA | rudy211 | informatyka | 0 | 03.12.2007 19:06 |
| [RS] Thinking in Java - Fourth Edition | Venom23 | informatyka | 0 | 31.07.2007 18:33 |
| [RS] Thinking in C++ | kwashop | informatyka | 0 | 10.06.2007 09:19 |
| [Java] Wybór książki (Thinking in Java 3 i 4) | cloudmaster | programowanie | 4 | 20.03.2007 11:14 |
| Wszystkie czasy w strefie GMT +2. Teraz jest 22:27. |

