Początkujący
reputacja: 202
posty: 13
offline
18.12.10 13:12
|
#2346363
|
(link)
|
zgłoś naruszenie
Kolego jak już bierzesz się za poprawianie kogoś, to może byś najpierw przeanalizował jego kod?
Ad. 1 Cytat z
Czyli "rand.nextInt(49) + 1;" zwróci dokładnie to o co chodziło(liczbę z przedziału [1, 49], a Twój kod liczbę z przedziału [1, 48]. No chyba, że znasz jakąś inną definicję słowa "exclusive".
Ad. 2 Nie wiem co jest nieczytelnego w "do while" instrukcja jak każda inna....
Ad. 3
Ad. 4
Mimo wszystko pozdrawiam.
koduj linki
Ad. 1 Cytat z
Kod:
Tylko dla zarejestrowanych. Chcesz mieć pełny dostęp do Ajo.pl?
Zarejestruj się i dołącz do naszego grona wirtualnych przyjaciół!
dokumentacji Javy:Tylko dla zarejestrowanych. Chcesz mieć pełny dostęp do Ajo.pl?
Zarejestruj się i dołącz do naszego grona wirtualnych przyjaciół!
Cytat:
public int nextInt(int n)
(...)
Returns:
a pseudorandom, uniformly distributed int value between 0 (inclusive) and n (exclusive).
public int nextInt(int n)
(...)
Returns:
a pseudorandom, uniformly distributed int value between 0 (inclusive) and n (exclusive).
Czyli "rand.nextInt(49) + 1;" zwróci dokładnie to o co chodziło(liczbę z przedziału [1, 49], a Twój kod liczbę z przedziału [1, 48]. No chyba, że znasz jakąś inną definicję słowa "exclusive".
Ad. 2 Nie wiem co jest nieczytelnego w "do while" instrukcja jak każda inna....
Ad. 3
Cytat:
Najbardziej razi ze losujesz 3 liczby i dopiero sprawdzasz czy sie powtarzaja. Jak tak to znowu 3 liczby i tak w kolku.
Gdzieś Ty to do cholery wyczytał w tym kodzie? Otóż mój kod działa dokładnie tak jak to opisałeś później, tzn. losuje liczbę, sprawdza czy już jest w tablicy, jeśli tak(wylosowano liczbę którą już mamy), nie wychodzi z pętli do while i losuje liczbę na tą samą pozycje. W przeciwnym wypadku(wylosowana liczba jest różna od już wylosowanych), losuje następną liczbę. Warto patrzeć gdzie w kodzie kończą się nawiasy...Najbardziej razi ze losujesz 3 liczby i dopiero sprawdzasz czy sie powtarzaja. Jak tak to znowu 3 liczby i tak w kolku.
Ad. 4
Cytat:
A najpoprawniej nigdy, jak to jest możliwie, nie wykonuj zadnych operacji w main(). Do tego sa metody.
Po pierwsze, main to też metoda tylko statyczna. Po drugie, pokaż mi kod który nie wykonuje żadnych operacji w maine;). Po trzecie: Programowanie obiektowe nie ułatwia życia komputerowi(jest wręcz przeciwnie) tylko człowiekowi(łatwiej zrozumieć skomplikowany kod, podzielić zagadnienie na moduły, itd.). Zatem zadania tego typu nawet korzystniej jest rozwiązywać w modelu strukturalnym.A najpoprawniej nigdy, jak to jest możliwie, nie wykonuj zadnych operacji w main(). Do tego sa metody.
Cytat:
ale ogolnie to nie jest poprawde pod wzgledem tzw dobrego programowania:
Mógłbym tu zacytować pewne przysłowie o ojcu i robieniu dzieci, ale nie będę się już nad tobą pastwił. Radzę tylko udzielać rad "od serca" w temacie na którym się znasz, bo w programowaniu to chyba za dużego doświadczenia nie masz...ale ogolnie to nie jest poprawde pod wzgledem tzw dobrego programowania:
Mimo wszystko pozdrawiam.
koduj linki
Użytkownik: mapa otrzymał ostrzeżenie za tą wiadomość:Brak CODE
Wartość ostrzeżenia:1
Ostatnio edytował (3): ramiko dnia 21.12.10 17:18