Znajdź średnicę zbioru n punktów na płaszczyźnie - zaimplementować w javie.
Znajdź średnicę zbioru n punktów na płaszczyźnie - JAVA
#1 Gość_Karis126_*
Napisano 26.10.2016 - 08:20
Napisano 25.09.2011 - 17:55
#2
Napisano 26.10.2016 - 08:23
Policz pętlą odległości między punktami wzór
średnica to max z tego wiec przygotuj zmienną do zapisu d
Napisz jak to widzisz
Dziękujmy bardziej oświeconym
#3 Gość_Karis126_*
Napisano 26.10.2016 - 12:14
chodzi mi bardziej o to żeby ktoś mi zaimplementował cały progream w javie i wrzucił kod
#4
Napisano 26.10.2016 - 14:27
ok a w jaki sposób masz podane te n punktów? Może być tabelka np
A 0 0
B 1 2
itd Czyli A=(0,0), B=(1,2)
Dziękujmy bardziej oświeconym
#5 Gość_Karis126_*
Napisano 26.10.2016 - 17:17
#6
Napisano 26.10.2016 - 20:13
public class Srednica { public static void main(String[] args) { int n=20; /ile ma być punktów Random rand = new Random(); //do losowania int tablica[][] = new int[n][2]; //tablica na te punkty //wypełnienie tablicy losowo (są całkowite ale możesz dać double) for(int i = 0; i < 2; i++) for(int j = 0; j < 2; j++) tablica[i][j] = rand.nextInt(201)-100; // losowanie z zakresu -100 do 100 // obliczanie odległości double odleg[][] = new int[n][n]; for(int i = 0; i < n; i++) { for(int j = 0; j < n; j++) { double xA=tablica[i,j]; double yA=tablica[i,j]; double xB=tablica[i,j]; double yB=tablica[i,j]; odleg[i][j] = Math.sqrt(Math.pow(xA-xB,2)+Math.pow(yA-yB,2)); } } double srednica=Math.max(odelg);
Zauważyłem, że jest błąd w tych punktach przy obliczaniu odległości (bo są takie same, nie zauważyłam bo najpierw pisałam szkielet)
Popraw to i powinno działać, ja muszę uciekać niestety
Dziękujmy bardziej oświeconym
#7
Napisano 26.10.2016 - 21:59
Zauważyłem, że jest błąd w tych punktach przy obliczaniu odległości (bo są takie same, nie zauważyłam bo najpierw pisałam szkielet)
Jak to rozumieć?
#8 Gość_Karis126_*
Napisano 27.10.2016 - 06:17
dzięki wielkie a gdzie jest ten błąd co trzeba poprawić możesz wskazać?
#9
Napisano 27.10.2016 - 08:28
Jak to rozumieć?
to jest taki błąd zrobiłem
Powinniśmy wziąć l-ty punkt i porównać z każdym z k-tych w clu policzenia odległości między nimi
Dziękujmy bardziej oświeconym
#10 Gość_Karis126_*
Napisano 27.10.2016 - 10:56
czy mógłbyś poprawić mi ten błąd w kodzie i wkleić poprawny kod?
#11
Napisano 28.10.2016 - 00:20
Nie mam maszyny wirtualnej ale to chyba powinno być tak:
xA=tablica[1][i] yA=tablica[2][i] xB=tablica[1][j] yB=tablica[2][j]
Użytkownik Jarekzulus edytował ten post 28.10.2016 - 00:21
Jeśli rzuciłem choć promyczek światła na problem który postawiłeś - podziękuj. Nad kreską