Hirdetés
- Bluetooth hangszórók
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- AMD Navi Radeon™ RX 9xxx sorozat
- TCL LCD és LED TV-k
- Már itthon is kapható a Huawei legújabb „papírkijelzős” táblagépe
- RAM topik
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Internet Rádió építése (hardver), és programozása
- AMD Navi Radeon™ RX 6xxx sorozat
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
Új hozzászólás Aktív témák
-
axioma
veterán
válasz
-Faceless-
#11072
üzenetére
Me'g mindig nem. A szamologepbe NEM copy-zol olyat ami oda van irva (legalabbis az mar nem szamologep hanem mini-excel...). A szamologep a billentyunyomkodasok menten mukodik. Peldaul azt irja be hogy 12 / 17 sin. Ez lesz a sin(12/17). De mi a fenenek kuldened ebben a formaban a backend-nek? Te a nem szamjegy gombnyomasoknal, ha volt uj szam akkor azt es a muveletet kuldod el, es reszeredmenyt vissza. Tehat 12,/ eseten vissza 12, 17 sin-re vissza a sin(12/17). Ha megengeded a precedenciat (es/vagy zarojelet, de ez azert eggyel komplexebb, en elsore megneznem hogy a feladatleiras alapjan muszaj-e, mert a sima szamologep NEM tudja es a legtobb usernek kb. nem is kell), akkor annyi hogy a backend-en kell egy verem is. De a szamologepen tulkepp forditott lengyel, tokenizalt a bemenet (ugye a sin-ra se a 3 betut kell atkuldeni, hanem egy kodot ami azt jelenti nalad hogy a sin gombot nyomtak meg).
-
floatr
veterán
válasz
-Faceless-
#11072
üzenetére
Na most javíts ki ha rosszul értelmezem, de te egy kifejezés kiértékelőt akarsz írni? Mert az azért nem annyira triviális... bár az amőba sem
-
axioma
veterán
válasz
-Faceless-
#11069
üzenetére
Mit szeretnel parse-olni? Ha jol ertem akkor a tied a frontend. Ha meg igy van, akkor a gombnyomasok tulajdonkeppen megcsinaljak neked a tokenizalast, sot tulkepp rogton a kifejezesfat is felepitheted mindig ahogy jon a kovetkezo gombnyomas (nyilvan szamoknal a szamjegyeket erdemes a frontenden osszevarni es 1x konvertalni). De mar csak azert is igy erdemes mukodnie mert a szamologep a reszeredmenyt altalaban mar irja.
Vagy valamit nem ertek jol. -
válasz
-Faceless-
#11069
üzenetére
Problémás kód részletet tudnál szolgáltatni?
-
-Faceless-
őstag
válasz
-Faceless-
#10785
üzenetére
Semmi, kár volt éjszakázni.
Ha gondoljátok lehet törölni -
axioma
veterán
válasz
-Faceless-
#8243
üzenetére
Mar nem azert, de ezt kicsit lehetne szerintem egyszerusiteni. En azt tennem, mar a jelenleginek minel kisebb modositasaval, hogy
- megkeverek egy 0..(N-1) tombot
- amikor irom a masik tombbe, akkor dontom el, hogy az az index hanyadik reszbe esik, es az alapjan irom az eredetibe a megfelelo erteket (raadasul ha ilyen szep szamaid vannak, akkor oszthatod ugy hogy az otodere csinalsz egy switch-et, sot akar erre me'g aritmetikai kifejezest is...).
Bar ha megfelelo valoszinusegekkel generalnal es a vegen csak azokat tenned fel, amikbol me'g hianyzik egyebkent ujat "dobsz", az is eleg veletlen tabla kene legyen. -
Lortech
addikt
válasz
-Faceless-
#8254
üzenetére
57. sorban keletkezik NPE.
palya.palya[seged2] null, null objektum a getJatekosSzam() metódus hívás NPE-t eredményez.
IoMuveletek osztály 6. sorában példányosítod a palya meződet:
public Palya palya = new Palya();Ez önmagában nem inicializálja a palya.palya elemeit Mezőkre. Ezt a palyaEpito metódusban csinálnád, viszont ezt ezen a példányon nem hívod meg.
Azt látom, hogy a Main osztályodban meghívod palyaEpito metódust, de azt egy másik példányon teszed, a 20. sorban:
pj.palyaEpito();Viszont ezt a pj objektumot nem adod át az IoMuveletek osztálynak, hanem IoMuveletek-ben létrehozol egy teljesen új Palya példányt.
-
-Faceless-
őstag
válasz
-Faceless-
#8254
üzenetére
Köszönöm a javítást!
Tudom, hogy nagy kérés egy ilyen katyvaszban hibát keresni, de jelen pillanatban nem tudok máshol segítséget kérni, és rendkívül hálás lennék. -
Karma
félisten
válasz
-Faceless-
#8251
üzenetére
Pedig teljesen jók a válaszok. Alapvetően a boardBuilder metódus egy koncepcionális hiba, az egészet szüntesd meg, és tedd a konstruktorba a tömb elemeinek inicializálását. Ezzel NPE-d nem lesz több.
Hogy miért veszik el adat, az ebből a kódrészletből nem derül ki. Mivel minden tagváltozód publikus, bárhol elronthatod. Jót tenne a játéknak, ha elkezdenél objektum-orientáltan hozzáállni: az osztályok belső állapota privát, kifelé csak egy interfészt mutatnak, amik az általuk támogatott műveletekből áll.
Például a Board esetén a tömb privát, de van egy műveleted, ami egy X, Y koordinátapárhoz visszaadja az oda illő Fieldet.
-
Lortech
addikt
válasz
-Faceless-
#8251
üzenetére
Ha minden lényeges infó vagy a teljes kód megvolna a kérdésedben, tapasztalt szem fél perc alatt kiszúrná a problémát. Helyette van sok felesleges infó, amit azért nem biztos, hogy sokaknak van ideje kibogozni.
NPE ad neked sorszámot, az alapján elég egyértelmű szokott lenni szemmel veréssel is a probléma, ha mégsem, akkor bele kell állni debuggal, ha kell, visszanézni a stacken a frame-eket, a változóid állapotát. -
Karma
félisten
válasz
-Faceless-
#8243
üzenetére
Rövidtávon megkönnyíted a saját életed, ha a kétdimenziós tömböket elfelejted, helyette egy dimenzióban tárolod a pályád és okosan indexelsz (pl. x,y koordinátákhoz a tömb y*N+x. elemét veszed). Ekkor a tömb feltöltése és megkeverése is triviálissá válik.
Mr Dini: Nem baj, hogy a szintaktikán elakadtál, mert a Thread.sleeppel amúgy is kinyírnád a játékot. Ezért nem is mondom meg, hogy lehetne feloldani az előző fordítási hibát.
Ha Bukkit plugint írsz esetleg, azzal meg lehet oldani ezt helyesen is. Tiszta Java-val nem tudom hirtelen, hogy tudnál egyszerűen visszatérni a UI szálra.
-
zsambek
aktív tag
válasz
-Faceless-
#8241
üzenetére
Szia!
Kicsit ki tudnad fejteni, hogy x,y,z kulonbozo konstanssal feltolteni? Illetve, hogy pontosan mi az alap otlet, mert most igy annyira nem latom, hogy mit szeretnel. Esetleg egy peldaval tudnad szimulalni?
-
Karma
félisten
válasz
-Faceless-
#8233
üzenetére
A Collections.shuffle egyébként a helyes megoldás a feladatodra, örülök hogy megtaláltad. Az ebben implementált Fisher-Yates keverés egyenletes, szemben egy tipikus naív megoldással. Például itt van kifejtve, példával.
-
zsambek
aktív tag
válasz
-Faceless-
#8231
üzenetére
Szia!
Az elsore sajnos nincs otletem, de erosen arra tippelek, hogy legyen egy static int-ed, amit constructor lefutasakor novelsz, es amikor a garbage collector elkapja, akkor pedig csokkentesz.
A random generatorosra viszont pedig sajnos valamilyen hasonlo lesz a megoldas. Hanyszor szeretnel egyebkent generaltatni? Illetve mekkora a range?
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Alkoholista nevelde
- Robotporszívók
- Megérkezett a Google Pixel 7 és 7 Pro
- Spórolós topik
- Gitáros topic
- Megjöttek Magyarországra a Redmi Note 15-ök, január 22-től ennyiért kaphatók
- Bluetooth hangszórók
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- AMD Navi Radeon™ RX 9xxx sorozat
- TCL LCD és LED TV-k
- További aktív témák...
- GYÖNYÖRŰ iPhone 14 Pro 128GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen, MS4022
- Telefon felvásárlás!! iPhone 12 Mini/iPhone 12/iPhone 12 Pro/iPhone 12 Pro Max
- BESZÁMÍTÁS! LENOVO ThinkPad P15 Gen2 munkaállomás - i7 11800H 64GB DDR4 1TB SSD RTX A2000 4GB W
- GYÖNYÖRŰ iPhone 13 Mini 128GB Blue- 1 ÉV GARANCIA -Kártyafüggetlen, MS4067,94% Akksi
- GYÖNYÖRŰ iPhone 13 mini 128GB Blue -1 ÉV GARANCIA -Kártyafüggetlen, MS3884, 100% Akkumulátor
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


