- Milyen billentyűzetet vegyek?
- Milyen házat vegyek?
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Milyen egeret válasszak?
- Épített vízhűtés (nem kompakt) topic
- Melyik tápegységet vegyem?
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- AMD Navi Radeon™ RX 9xxx sorozat
- Nyaralás előtti hardverszemle
- TCL LCD és LED TV-k
Új hozzászólás Aktív témák
-
Makarenkó
csendes tag
Köszi, én is begyűjtöttem egy csomó netes cuccot, de ez nem oldja meg a problémámat.
Részt veszek egy online tanfolyamon és tök égés, de egy feladatot nem tudok megcsinálni. Bekopizom ide:
''egy kepernyon egymas ala kell tenni 5 db kek-feher keretes ablakot
minden ablakra jellemzo egy szoveg, amit inicializalaskor adunk meg
az ablakokba a szoveg egy karakter rahagyassal pont belefer
(szelessege: szoveg hossza + 3, magassaga: 3)
ablakok inicializalasa
Init(X,YSzoveg), ahol X es Y az ablak bal felso sarkanak koordinatai
Mindig van egy aktualis ablak, amelyben a szoveg lathato, a tobbi
ablak ures
Az ablakok kozott a TAB billentyuvel valthatunk. Az ablakok bejarasa a
szovegek ABC rendjeben tortenik, kezdetben a nevsorban elso legyen
az aktualis
ESC-re tuntesse el az ablakokat es legyen vege a programnak''
Hát ez van. Ehhez kértem volna némi segítséget, mert állítólag hozzáértőnek 5 perc a leírása, nekem meg 1 hete nem megy
Alf -
andriscs
aktív tag
válasz
Makarenkó #98 üzenetére
Hi!
Nem menekülni akarok a segítségadástól, de a net tele van Java kezdőknek tutoriallal (a legtöbb ugyan angolul, de ha vágod az angolt, akkor az egyszerű dolgokat könnyedén ellesheted példákon keresztül). Szerintem érdemes az ilyen dolgokkal kezdeni, főleg mivel ingyen vannak. A következő megoldás, ha pénzért veszel jó kis Java könyveket, de akkor már inkább a free netes cucc.Amúgy tudok ajánlani egy egész jó Java könyvet, csak sajnos az ára elég magas (~4000 Ft).
-
Makarenkó
csendes tag
Sziasztok!
Végre rátok találtam. Nagyon kezdő vagyok még a témában és olyanokat keresek, akik tudnak nekem segiteni meg akiktől tanulhatok.
Kellene írnom egy egyszerű kis progit (gyakorlás gyanánt), de sajnos nem megy. Tudna nekem valaki ebben segíteni?
Alf -
peti_sz
tag
UP!!
-
peti_sz
tag
Hello..
lehet nem ide kellene,de mivel pl. a java is problémám, ide írom. win 2000 van a gépen, és van egy rendszergazda, és egy korlátolt jogokkal ellátott felhasználó.
A rendszergazda alatt felinstalláltam a java-t, amit a www.java.com-ról szedtem le, free download alatt.
pl. a chat-haz kell az ilyen nekem, és a rendszergazda alatt működik is, de a felhasználó alatt nem. Nem úgy kéne lenni, hogy akkor ott is??
Ott nem működik a chat, és mintha oda nem vonatkozna a java. lehet tök egyszerű..
kösz a segítséget -
Dfg
csendes tag
A Pascal progi ez alapján készült:
function StrToNum(Str: string; Base: Integer): LongInt;
var
. Digit: Integer;
. Result: LongInt;
begin
. Result := 0;
. while Str <> '' do
. begin
. . Digit := Pos(UpCase(Str[1]), Digits) - 1; Str := Copy(Str, 2, Length(Str) - 1);
. . Result := Result * Base + Digit;
. end;
. StrToNum := Result;
end;
function NumToStr(Num: LongInt; Base: Integer): string;
var
. Digit: Integer;
. Result: string;
begin
. Result := '';
. while Num > 0 do
. begin
. . Digit := Num mod Base; Num := Num div Base;
. . Result := Digits[Digit + 1] + Result;
. end;
. if Result = '' then NumToStr := '0' else NumToStr := Result;
end;
Ha valaki megtenné, hogy átdobja Java-ba.
Köszönöm! -
Dfg
csendes tag
Üdvözlet!
A következő feladat megoldásához kérnék segítséget:
Írjunk olyan programot amely átalakítja az inputot 8as,10es és 2es számrendszerre. A bemenet
lehet mindhárom az utolsó karakter határozza meg (d = 10es, b = 2es, h = 16os, o = 8as).
Példa:
Kérem a számot: 124d
2es: 1111100
8as: 174
10es: 124
16os: 7C
Példa 2:
Kérem a számot: FEF8h
2es: 1111111011111000
8as: 177370
10es: 65272
16os: FEF8
Valami hasonlót régebben összedobtam Pascalban, az a kérdésem, hogy ezt java-ra mennyire bonyolult átírni? A pascal progiban bármilyen számrendszerből tudok 10-esbe váltani, és 10-esből bármilyenbe, ez ké függvény. Javat nem tanultam még.
Tudtok segíteni? -
Miracle
senior tag
igy kell futtatni:
java pozneg 123456
azert kapod a kivetelt, mert te a parancssori argumentumok tombjere hivatkozol, de mivel nem adsz meg neki argumentumot, ezert a tomb ures, es mivel a tomb ures, amikor te a tomb 0. elemere hivatkozol akkor nem letezo elemre hivatkozol. nem letezo indexel. (ezert van az az exception) -
Certee
senior tag
Sziasztok!
Mivel jobban ide tartozik mint a másik topicba amiben már feltettem a kérdést ezért itt is megteszem. Teljesen kezdő Java-s vagyok!
Adott ez a kód:
public class pozneg {
public void prog( String args[] ) {
int x;
try {
x = Integer.parseInt( args[0] );
} catch( NumberFormatException ex ) {
System.out.println( args[0]+'' nem kiertekelheto'' );
return;
}
if( x < 0 )
System.out.println( x+'' negativ'' );
else
if( x == 0 )
System.out.println( ''Nulla'' );
else
System.out.println( x+'' pozitiv'' );
}
public static void main( String args[] ) {
pozneg e = new pozneg();
e.prog( args );
}
}
Fordításnál nem jelez hibát, de amikor futtatom ezt írja ki:
Exception in thread ''main'' java.lang.ArrayIndexOfBoundsException: 0
at pozneg.prog(pozneg.java:5)
at pozneg.main(pozneg.java:21)
Press any key to continue...
Mi lehet a baja? -
andriscs
aktív tag
Hi!
Valaki letöltötte már? Ha igen, valamit jelezzen vissza. Köszi! -
andriscs
aktív tag
Hi!
Nem sikerült megoldást találnom, ezért felrakom a class file-okat, zip-ben csomagolva. A link:
Bővebben: link
Remélem, hogy mindenkinél működni fog(a file-okon használtam obfuscator-t, ha valakinek kell a forráskód, az írjon, és megdumáljuk). -
andriscs
aktív tag
Hi!
Aprócska technikai probléma miatt egyelőre nem tölthető le a játék, ugyanis a jar file futtatása után nem tölti be a képeket, és ahogy a neten olvasom, rengeteg embernek ugyanez a problémája. Hiába használnak relatív útvonalakat, a képek nem töltődnek be. Azt hiszem, ez ''felsőbb'' (értsd SUN) probléma, mivel megoldást még nem találtam rá. Sajnos az Eclipse JAR csomagolója is mindenre jó, csak arra nem, amire kellene (viszont jól tömöríti a NEM Java állományokat) Szóval ha sikerül megoldani valakinek a problémát, és én is hallok majd róla, akkor elérhető lesz.
-
andriscs
aktív tag
Hi!
Nem szórakoztam, simán felraktam jar file-ként a játékot, onnan le lehet tölteni. Várom az észrevételeket és javaslatokat. Az MI része még nincs kész (mint azt bele is írtam a játékba). Nemsokára megírom a hálózati részt is, akkor lehet neten is játszani. Kis türelmet...
Bővebben: link
[Szerkesztve] -
andriscs
aktív tag
Hi!
Ilyet még nem láttam. Google nem talál egyetlen olyan oldalt sem, ahol le van írva: ''how to run a Java application from a web browser''. Soha életébe még senki nem próbált meg futtatni alkalmazást, amit esetlegesen egy Applet indít? -
andriscs
aktív tag
Hi!
Miért van az, hogy egy alkalmazás minden további nélkül képes létrehozni egy másik alkalmazás új példányát, ha egy könyvtárban vannak, egy Applet viszont mintha nem is reagálna, semmi nem történik. Pedig szerintem itt nem sérti meg az applet-ek szabályait, ha a szerveren lévő file-okat használja, és nem ír a lokális gépre. Valaki segítsen, hogy hogyan működne a dolog. -
andriscs
aktív tag
Hi!
Tudja valaki, hogy hogyan lehet egy szöveg köré olyan ''besüppedős'' keretet rakni, ami Visual C++-ban alapból megvan? Fontos lenne, hogy jó legyen a design. -
andriscs
aktív tag
Hi!
Csak hogy megint ''dicsekedjek'', már minden irányban működik az MI, elég nehéz megverni, eddigi hibája annyi, hogy még nincs prioritás szerint működés, tehát néha a kevésbé fontos lépést választja, de általában elég jól játszik. Még kicsit javítok rajta, aztán jó lesz.
A kérdésem a kövekező: csináltam egy applet-et, ami elvileg létrehozza az apllication-t. Van ezzel kapcsolatban pár kérdésem: egy applet akkor tudja létrehozni az application-t, ha ugyanabban a könvyvtárban vannak? Vagy van más módja is, hogy egy weboldal elindítson egy application-t? JavaScript vagy valami? Aki tud, adjon pár hasznos tanácsot. Köszi!
[Szerkesztve] -
Kr1xX
tag
Thanks! Majd talán belemélyedek abba az oldalba is, de így első ránézésre megijedtem tőle
-
Geza ba
csendes tag
Javaslom használd az antot ilyenre Bővebben: link. Ha jól emlékszem NetBeans/Eclipse/JEdit/stb-ben van hozzá GUI támogatás.
Edit: Link (harmadikra talán sikerül már
[Szerkesztve] -
andriscs
aktív tag
Hi!
Legegyszerűbb ha írsz rá egy paraméteres batch állományt, ami megkönnyíti a dolgod. Mondjuk ez nem pont Java megoldás. Én Eclispe 3-at használok, de nem találtam meg még benne az automatizált jar állomány létrehozást. És az a legjobb, hogy nem is működik a jar-os megoldás, ugyanis a manifest file-t nem mindig fogadja el, ami felettébb érdekes, ugyanis fél órán keresztül magyarázták, hogy a jar készítés hogy történik, és a manifest file-nak mit kell tartalmaznia. Szóval így megy a dolog:
jar.exe -cvfm manifest akarmi.jar *.class *.jpg
és a manifest filenak ezt kell tartalmaznia:
Main-Class:'Foosztaly'
Ennyi lenne a dolog, szépen létre is hozza a jar file-t, azonban mikor futtatnám, akkor manifest hibával leáll, hogy a manifest által hivatkozott osztály nincs meg. Erre varjatok gombot...
[Szerkesztve] -
Kr1xX
tag
Én most kezdek bele olyan jáva progikba, amik awt illetve swinget használ (eddig appleteket írtam). Azt vettem észre, hogy az ilyen alkalmazásokat jar-ba tömörítik, és az lesz futtatható... Kérdésem, hogy JCreatorban van-e lehetőség jar-ba tömöríteni (ezt az IDE-t használom), de már Eclipse vagy NetBeans-is segítség lenne (mármint ha ott ez megoldható volna). Igaz jart már sikerült csinálnom, de csak konzolban pötyögve, és az nem az igazi... nem kényelmes!
-
andriscs
aktív tag
Hi!
Alakul a dolog, már olyan az MI, mintha ''gondollkodna'', általában optimálisan próbál lépni (most még csak sor szerint optimális). Ha ezt összehozom, akkor megveregetem a vállamRemélem, hogy nem vesztem el a fonalat a kódolás közben, mert már így is elég bonyolult a dolog.
-
andriscs
aktív tag
Hi!
Sikerült a menükezelés, az IBM oldalán jó sok okosság van. Majd kirakom a játékot a honlapomra, és csinálok egy ''nyílt bétatesztet''Aztán akinek ötlete van, az megírhatja a véleményét. Remélem, hogy hasznos lesz a dolog.
-
andriscs
aktív tag
Hi!
Sajnos még nem sikerül megoldani a menü eseménykezelését, de haladok az MI-vel. Még nagyon buta, és mégis mindig nyerDe talán pár hét alatt kissé sikerül lebutítani. Senki nem tudta még kipróbálni a menükezelést? Bárminemű hozzásszólást szívesen fogadok.
-
andriscs
aktív tag
Hi!
Tudna valaki nekem segíten? Létrehoztam egy MenuBar-t, amiben beleraktam egy Menu-t, majd ebbe 2 feliratot. Hogy tudok erre eseménykezelővel hivatkozni? actionListener kell, vagy ItemListener? És hogy érem el pl a file menü ''Exit'' parancsát?
Eddig ezekkel probálkoztam:
class myChooser implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
if(e.getSource().equals(file)) //file=new Menu(''File'')
{
dispose();
}
}
}
illetve:
class myChooser implements ItemListener
{
public void itemStateChanged(ActionEvent e)
{
if(e.getItem().equals(''Exit''))
{
dispose();
}
}
}
De egyik sem működik, mindkettő hibát ír ki. itemListener valszeg azért, mert azt elsősorban CheckBox-nál érdemes használni. Valaki magyarázza el, hogy hogy tudom kezelni a menümet!
[Szerkesztve]
[Szerkesztve] -
andriscs
aktív tag
Hi!
Nem akarok hülyeséget mondani, de ha nem applet-ként csinálod a dolgokat, akkor a szerverre felrakott Java application simán kezeli a szerveren lévő file-okat. Lehet, hogy nem olyan szép egy Java frame, amint leugrik a böngészőből, de legalább normálisan lehetne file-t kezelni. Ha nagy hülyeséget mondtam, akkor bocsika.
Ami az én problémámat illeti, MI-t írni szerintem a legnehezebb programozási feladat. Eddig úgy viselkedik, mint egy kutya, amelyik nincs betanítvaEgészen mást csinál, mint amit én szeretnék. Olvastam valahol egy oldalon, hogy lehet olyan progikat csinálni, amik fejlődnek idővel. Remélem, hogy ez is ilyen, mert egyelőre nagyon buta. Írt már valaki MI-t Java-ban?
-
Kr1xX
tag
Thanks! És esetleg tudsz benne bővebben is segíteni? Mert még hálózati kapcsolattal sem volt dolgom.
-
Kr1xX
tag
De továbbra is maradtak bennem kérdések. Még mindig nem tudom, hogy lehetne megoldani a toplistát. Hogy lehet java applettel fájlokat kezelni. Álítólag ez le van tiltva... tud valaki bármilyen megoldást fájlkezelésre. Van milyen mekerülési lehetőségek vannak (pl tud-e egy applet egy java sriptel vagy php scriptel komunikálni, mertakor már tudnak fájlkat is kezelni)
-
Kr1xX
tag
Háhá... sikerált. Igaz nem a szálas megoldssal. Egy lista segítségével (adatszerkezetek című tantárgy), ha több billentyű kerül leütésre akkor azokat eltárolja, és a késleltetés szerint dolgozza fel. Így hiába nyomok bármilyen más billentyűt az adott pillanatban, mindig sorbaveszi a lita elemeit, azaz a billentyűk sorrendét. Nem tudom mennyire vilgos, de inkább próbáljátok ki
www.sztyan.uw.hu/Sztyan/java/Snake/Snake.htm
[Szerkesztve] -
andriscs
aktív tag
Hi!
Kipróbáltam, tök pofás a játék. Tehát jó lehet az a szálas megoldás, mit egy másik kolléga ajánlott, vagy csinálhatod azt, hogy csak akkor engedélyez irányváltást, ha már legalább 1 ''egységet'' mozdult a kigyó feje jobbra vagy balra. Gondolom, hogy ez is megoldható, feltéve ha te nem egészen máshogy programozol, mint énMajd írd meg, hogy mire jutottál!
-
fiola
csendes tag
tipp: esetleg hozz letre uj szalat a billentyuzet infok figyelesere
-
Kr1xX
tag
Van én nem értelek, vagy te nem értesz. Azt már megoldottam, hogy ha pl felfelé haladok, akkor csak két irányt fogadjon el, jobbrát vagy balrát. Ez így rendben is van. De gondold el a kukacot, halad szépen előre... a következő kaja pont a kukac mellett lesz letéve, akkor hírtelen megfordulsz, egy gyors balra-le billtyűvel. Ha ezt elég gyorsan csinálod, akkor meg tudod azt csinálni, hogy mivel felfelé ment elfogadja a balrát, indulna is balra a kígyó, de olyan gyorsan leütötted a lefelét (ami már megengedett, mert épp balra megy), hogy igazából balra nem is lépett, hanem elindul lefelé. Azaz magába ütközik, meghal. A gond tehát, hogy a kígyó mozgásánál a késleltetés ideje alatt meg tudok fordulni 180 fokot, két billentyú leütéssel. Amúgy próbáld ki: www.sztyan.uw.hu/Sztyan/java/Snake/Snake.htm
-
andriscs
aktív tag
Hi!
BME Informatikán vagyok.
Ami a problémádat illeti (bár nem tudom, hogy milyen formában oldottad meg), én általában az ilyen kölcsönös kizárású dolgokat flag-gel szoktam csinálni. A te esetedeben talán az lenne a legjobb, ha irányonként csinálnál boolean flag-eket, és az egymást kizáróakat nem engedélyeznéd (pl. if (előre && !hátra) ... stb. ) Persze emiatt kissé meg kellene variálni az irányítást, de elvileg működne. De ez csak egy ötlet, ha másnak jobb van, szóljon nyugodtan. -
Kr1xX
tag
kövtkező kérdésem lenne bárki felé:
Írtam egy Snake-játékot, megy is rendesen. Egy gond van vele, néha. Ha gyorsan akarok irányt változtatni egyszerre két irányba (azaz háta arc), akkor van hogy gyorsabban ütöm le egymás után a billentyűket, mintamennyi ideig a program ''Sleep''-el /mert hogy az animáláshoz kell bele egy sleep, hogy szépen haladjon/. Tehát ha egy ilyen szünet alatt egyszerre két irányt tudok változtatni, akkor gyakorlatilag hátrafelé indulok el, azaz magamba megyek, és meghal a kígyó. Hogy lehetne ezt kiszűrni? -
Kr1xX
tag
Hol, és mit tanulsz? Egyetem, középsuli??
-
andriscs
aktív tag
Hi!
Persze, hogy örülökDe rájöttem, hogy ez az MI dolog nem is olyan egyszerű. Ezzel is lesz pár gondolkodós órám úgy vélem. A panel-es cuccot nem tudtam megcsinálni, pedig egy másik órán ma erről tanultunk, de semmi ilyesmiről nem volt szó, csak annyit mondtak, hogy a panel a frame egy része. Szóval lehet, hogy azt hanyagolom.
-
Kr1xX
tag
Nahh! Gratula! Ugya milyen jó érzés három órás gondolkozás után erdményre jutni? (ráadásul végül te oldottad meg, és nem más) A paneles képbetöltést, még a MI elkészülse etőtt is publikálhatnéd
TOvábbi jó munkát, addig még én is vergődök a saját problémáimmal.
-
andriscs
aktív tag
Hi!
Sajnos még nem akadtam rá a panel-es megoldásra, viszont óriási hírem van: hétvégén SIKERÜLT olyan algoritmust írnom, amelyik rendesen keres a négyzethálón, tehát sikerül hibamentesen kerestetni vele ( kb. 3 órát gondolkodtam rajta). Eddig még nem tudtam megszívatni, szóval most már talán menni fog a dolog. Ráadásul a kép betöltése is sikerül, tehát már háttér is van. Ha kész lesz a progi, akkor majd publikálom
Természetesen most MI-t kellene bele rakni. Van elképzelésem, de ha valakinek van valami szuper ötlete, akkor ne kíméljen! -
andriscs
aktív tag
Hi!
Addig is míg megoldjuk a négyzetháló problémát, valaki elárulja nekem, hogy ha van egy Frame, aminek beállítok egy képet háttérnek, és a Frame déli részére berakok egy panel-t, amin van két gomb, akkor hgoyan tudok a panelra is képet rátölteni? Mert ugye amikor a képet kirajzoltatom a g.drawImage(img,0,0,this)-el, akkor a háttérre rakja ki a képet. Viszont ha ezt használom g.drawImage(img,0,0,p), ahol p a panel, akkor miért nem rajzolja rá a panelre? -
Kr1xX
tag
Áhhá. Vágom már. Én sem tudom, hogy érek rá a héten, de majd utánanézek. Most feladták a leckét a suliban is
....
-
andriscs
aktív tag
Hi!
Jó a te kódod, hogy vízszintesen, majd függőlegesen utána meg átlósan keresel, de az átlósak nem keresik meg mindet, mert pl a balról jobbbra le csak így fut le: 0-0,1-1,2-2,..., majd utána 0-1,1-2 stb., tehát nem megy végig a 3-0... stb irányokban. Ezért csak a felső karéjt ellenőrzi, tehát kimarad az alja. Erre kellene egy ugyanilyen kereseés, csak fordítva (jobbról balra felfelé, illetve balról jobbra felfelé). Ennyi. Ezt kellene megcsinálni, dfe a héten nem nagyon van rá időm. -
Kr1xX
tag
Azt nem értem hogy iért kell balról jobbra után még egy jobbról balra??? Lehet, hogy még én nem vágom, de ha van 4 egyforma balról jobbra, akkor minek vizsgáljam jobbról balra hisz ugyanúgy meg fogja találni azt a 4-et. Az én elképzelésem szerint elég tehát vízszintesen, függőlegesen és kétféle átlósan vizsgálni...egyébként meg ha balról jobbából jobbról balrát akarsz, azt nagyon kicsi változtatással meg tudod csinálni a kódomból, egy két paraméterváltoztatásával...
-
andriscs
aktív tag
Hi!
Sajnos nekem sem volt időm arra, hogy átnézzem újra a kódot, viszont az egyik tanárom elmondta, hogy mi a hiba az eredeti programomban. Ezt beidézem:
''a program azért hibás, mert nem a megfelelő feltétel esetén törlöd a számlálót.
Vegyük például a clone1-et. Ha például 3 darab 0 van egy oszlop végén, pl.
mint itt a harmadik oszlopban, akkor az első elemtől lefelé indulva talál két egyezést,
így clone1 értéke 2. Majd mivel a tábla széléhez ér, a második elmetől
kezdve keres egyezést, és talál egyet, így clone1 értéke már 3, és igazzal tér vissza.
{{'0', 'x', '0', 'x', '0'},
{'x', '0', 'x', '0', 'x'},
{'0', 'x', '0', 'x', '0'},
{'x', '0', '0', 'x', '0'},
{'0', 'x', '0', '0', '0'}}''
Szóval ezért hibás a dolog. A nagy kérdés az, hogy hogyan lehet kijavítani!
De valszeg érdemeseb a te progidat továbbfejleszteni. A lényege az lenne, hogy amikor a te progid balról jobbra megy felülről lefele, akkor utána egy jobbról balra felfelé ugyanolyan ciklus kell. És ugyanez a másik irányban is, csak ott meg fordítva. Remélem érthető. -
Fko
tag
Sziasztok! Ha Java-val kapcsolatos kérdésetek van, gyertek el a most induló Bővebben: link oldalra és tegyétek fel ott is a kérdést.
-
Kr1xX
tag
Fúha. Énis éjszaka írtam, szóval biztosan nem hibátlana szoftver, én is inkább kezdő lökésnek szántam. Most per pillanat nincs indőm vele foglalkozni, de majd még átnézem a kódomat. Ha nem sikerül megoldanod a problémát csak szólj... addig is gondolkozom a megodáson, de ezt igazából csak úgy lehetne, ha írom a progit közben. ja egy kis ízelítés a progijaimból ha érdekel: http:sztyan.uw.hu ott van egy menüpont legalul, hogy Java progik amiket én írtam. Nézd meg. AMúgy én sem vagyok még benne a Javaban teljesen, Szeptemner óta tanuklom a nyelvet. Sok sikert!
-
andriscs
aktív tag
-
andriscs
aktív tag
Hi!
Nem tudtam megállni, és teszteltem, úgy néz ki működik. Ahogy átnéztem a kódodat, rájöttem, hogy az enyém túlságosan körülményes, a tied viszont lényegretörő. Az egyik tanáromnak is írtam már, aki azt ajánlotta, hogy vigyázzak, mivel én String tömben tárolom a dolgokat, és a sima == csak referencia, inkább használjak equals() tagfüggvényt, mert az ő szavaival élve a ''programom egy időzített bomba''. Remélem, hogy azzal már rendesen működni fog, most már csak egy alap mesterséges intelligencia kell bele, aztán mehet a dolog.
Apró megjegyzés, hogy rájöttem (mivel ma tanultuk), hogy hogyan lehet képet betölteni (kicsit eltér az Applet-ek képbetöltésétől): Szóval valahogy így kell:
Image img=Toolkit.getDefaultToolkit().getImage(''kep.jpg'');
utána pedig paint()-ben g.drawImage(img,0,0,this). Apró szépséghiba, hogy a kép nem jelenik meg. Vajon miért nem? Add metódus nincs képekhez, requestFocus() nem kell neki, tehát elvileg már látnom kellene a képet. De mégsem látok semmit. Ötlet? -
Kr1xX
tag
Annyi hozzáfűznivalóm van, hogy tiszta lappal indultam, mert nekem úgy könnyebb. Egy 10x10-es integer mátrixban keres egymás mellett 4 ugyan olyan számot, és ha talál, akkor azt írja ki a konzolra, hogy talált, egyébként, hogy nem. Még annyi megjegyzés, hogy felesleges pl vízszintnél jobbról + balról viszgálgatni, mert ha balról jobbra haladva találunk egymás mellet 4 ugyanolyan értéket, akkor nyílván jobbról balrahaladva is
. Ugyanez igaz a többi irányra. Tesztelgessed, állítsd át a mátrix értékeit kölönböző helyeket azonos értékűre, és kerestesd meg vele. Nekem műxött. Próbáld értelmezni a kódot, hátha tudtam segíteni...
-
Kr1xX
tag
http://sztyan.uw.hu/Andris.rar
-
andriscs
aktív tag
Hi!
Kicsit átírtam a kódot, hogy világosabb legyen, tettem bele megjegyzéseket. Természtesen értem, ogy mit csinála kód, a látszólagos kuszasága ellenére eléggé szimpla kód, csak sokat ismétlődik, apróbb változásokkal. Szóval a koncepció az, hogy minden kattintás után a függvény végigfut a tömbelemeken, ls megvizsgálja, hogy van-e valamelyik irányban 4 egyforma jel. A lényeg (tehát a keresés) mindenhol ugyanaz, csak az irány változik, szóval lényegében 8x fut le ugyanaz a kód, nagyon minimális eltéréssel. Ami a for ciklusok feltételeit illeti, az azért annyira bonyolult, mert ugye nem léphetek túl a tömb határain, tehát pl. az 1,1 elemtől nem tudok 4-et balra menni, mert az már kilépne a tömbből. Tehát biztonsági intézkedések miatt van a hosszfigyelés. Ha még valami nem tiszta, akkor magyarázok, de itt az új kód (ez már csak max. 4 egyforma elemet talál):
public boolean searchEngine() //need to check
{
for(col=0;col<size;col++) //oszlopokon lépked
{
for(row=0;row<size;row++) //sorokon lépked
{
for(int count=1;row+count<game.length && count<4;count++) //soron jobbra
{ //ameddig nem éri
if (game[row+count][col]==(game[row][col])) //el a tömb szélét v. 4 jelet
{
clone1++; //ha van egyforma, növeli
if (clone1==3) return true; //min. 3 kell, hogy összesen 4 legyen
}
else clone1=0; //ha nincs egyforma, nullázza a számlálót
}
for(int count=1;row-count>-1 && count<4;count++){ //elemtől balra megy
if (game[row-count][col]==(game[row][col])) //stb...
{
clone2++;
if (clone2==3) return true;
}
else clone2=0;
}
for(int count=1;col+count<game.length && count<4;count++)
{
if (game[row][col+count]==(game[row][col]))
{
clone3++;
if (clone3==3) return true;
}
else clone3=0;
}
for(int count=1;col-count>-1 && count<4;count++)
{
if (game[row][col-count]==(game[row][col])) {
clone4++;
if (clone4==3) return true;}
else clone4=0;
}
for(int count=1;(row+count<game.length) && (col+count<game.length) && count<4;count++)
{
if (game[row+count][col+count]==(game[row][col]))
{
clone5++;
if (clone5==3) return true;}
else clone5=0;
}
for(int count=1;(row-count>-1) && (col-count>-1) && count<4;count++)
{
if (game[row-count][col-count]==(game[row][col])) {
clone6++;
if (clone6==3) return true;}
else clone6=0;
}
for(int count=1;(row+count<game.length)&& (col-count>-1) && count<4;count++)
{
if (game[row+count][col-count]==(game[row][col]))
{
clone7++;
if (clone7==3) return true;}
else clone7=0;
}
for(int count=1;(row-count>-1) && (col+count<game.length) && count<4;count++)
{
if (game[row-count][col+count]==(game[row][col]))
{
clone8++;
if (clone8==3) return true;}
else clone8=0;
}
}
}
return false;
} -
Kr1xX
tag
Csak egy őszinte megjegyzés, aztán elkezdek kondolozni is. Így végigolvasva a forráskódod, csodálom, hogy ezt a sok feltételt még a géped felfogja, és lefordítja. Persze nem cseszegetni akarlek, mert már velem is előfordult, hogy nagyon nem jöttek össze a dolgok, aztán jöttek a feltételek egymás után, hogy szűrjem vele a hibákat, kivételeket...DE az kizárt, hogy ezt más is felfogja rajtad kívól, feltéve ha te még érted. Ja meg olyan tömör egy kicsit. Azt javaslom, inkább fogalmazd meg a problémádat pontosabban, azzzal talán rövidebb átláthatóbb és frappánsabb kódokat kaphatsz cserébe.
-
Kr1xX
tag
Mert mit kellene a négyzethálóddal kezdeni?
-
andriscs
aktív tag
Hi!
Az ilyen file-kezelésről nem nagyon tudok még dologokat, de asszem itt is valami FileInputStream kell, meg adatcsatornák, ilyesmi. Szerintem nézz körül a Sun honlapján.
Nem tudom, hogy miért nem működik, de kiírja, hogy a paraméterlistában vessző helyett ) kell. Szóval nem megy. Megnézem, hátha találok mást is. Egyelőre a háttér a legkisebb bajom. Fontosabb a hégyzethálóm problémája, amit sehogy se lehet megoldani. Azt hiszem, ez lesz a diplomamunkám: Univerzális hálóprobléma, avagy egy újabb NP probléma, amelyik megoldásra vár. -
Kr1xX
tag
Uhh, volna még egy kérdésem: játékhoz toplistát szeretnék írni. Ehhez pedig azt kellene egoldani, hogy nevet és eredményt kiírni egy fájlba. Ezzel nincs is gond, csupán annyi,hogy apletben nem sikerült megoldanom. Be tudok olvasni TextField-ből egy stringet me minden,de nem tudom, hogy lehetne kiírni egy fájlba (alkalmazásnál tökéetesen működik, de applenél nem megy).
-
Kr1xX
tag
Kössz a linket! Lehet nem értem a problémádat... ha én képeket akarok megjeleníteni mindig így csinálom, igen nekem így működik. Egykét munkám eddig: http://sztyan.uw.hu/Sztyan/java/java.htm
-
andriscs
aktív tag
Hi!
Itt egy link, remélem, nem gond, hogy angol:
Bővebben: link
Az én problémámra nem talál senki megoldást? Már el tudom érni, hogy 1 irányban max 3 egységig keressen, de még mindig talál derékszögű dolgokat. Help me! -
Kr1xX
tag
Thx, esetlen ha tudsz dobj egy linet is
! Egyébként ha tudok persze segítek!
-
Kr1xX
tag
Nekem is van egy kérdésem. Írtam egy Snake apletet, de annyi bajom van vele, hogy ahhoz, hogy a kígyó az mozogjon, ahhoz animálno kell, tehát azadott területet minig repaint()-elnem kell mozgásonként. Ettől viszont néha villog a kép. Láttam már viszont olyan megoldásokat is, ahol ezt megoldották valahogy. Tud e valaki segíteni, mi ennek a titka?
-
Kr1xX
tag
import java.awt.*;
import java.applet.Applet;
public class Valami extends Applet {
Image background;
public void init() {
background=getImage(getCodeBase(), ''egyKep.gif'');
}
public void paint(Graphics g) {
g.drawImage(background, 0, 0, this);
}
}
Én ezt ha lefordítom, akkor kirajzolja a képement. Próbáld meg lefuttatni te is ezt először, aztán módosítsd kedvedre. Ja értelem szerűen az ''egyKep.gif''-nek léteznie kell abban a könyvárban, ahol a class is van! -
andriscs
aktív tag
Hi!
Azt hiszem, hogy megtaláltam a 2000-es év 101. matematikai problémáját, ugyanis a kód szintaktikailag jó, és véleményem szerint szemantikailag is, csak éppen nem úgy működik, ahogy kellene, de ne, jövök rá, hogy mi okozza az anomáliát. Ha valaki tudna segíteni, annak nagyon örülnék, mindegy, hogy milyen nyelven próbálja ki, nekem még pszeudo-kód is jó, csak valaki nézzen már rá, hogy mi a hiba! Arra már rájöttem, hogy akkor is talál megoldást, ha egy irányban elszórva vannak azonos elemek. De ez még nem magyarázza meg, hogy a derékszögű 4-es sort miért találja meg. Légyszi segítsetek! -
andriscs
aktív tag
Hi!
Látom, hogy senkit sem mozgat az előbbi probléma, most viszont van egy újabb. betöltöttem egy képet így: Image img=Toolkit.getDefaultToolkit().getImage(''bg.jpg''); Ezután egy a metódusban meghívtam ezt: g.drawImage(img,0,0,Color.RED,this);, ennek ellenére csak egy fehér képet kapok. Mi a hiba? -
andriscs
aktív tag
Hi!
Úgy látom, hogy tényleg el kell megyaráznom, hogy hogyan működik a függvény. Szóval a külső 'for' ciklus a tömb oszlopain lépdes egyesével, az abba beágyazott 'for' pedig a sorokon lépked, magyarul a két 'for' bejárja a 2D-s hálót. A kis 'for' ciklusok az adott elem (game[row][col]) értékét hasonlítják össze egy bizonyos irányban a többi tömbelemmel (tehát mikor pl- game[row+count][col] van, akkor egy soron megy végig addig, amíg el nem éri a tömb szélét). Minden irányban más változó tárolja az azonos elemek számát. Mikor ez a változó elérte a 3-at, akkor van 4 egyforma elem ugyanabban az irányban. Ilyenkor lesz a return true. Egyébként pedig false. Szóval egy elég primitív algoritmus. Csak ezt nem értem, hogy miért nem működik a széleken. Ha valaki rájön a megoldásra, szóljon! -
andriscs
aktív tag
Hi!
Azt hiszem, hogy egy ilyen, viszonylag egyszerű kódot nem kell agyonkommentezni. A lényege az, hogy minden egyes elemtől indulva végigmegy az irányokon. amit mondazs, azt más is ajánlotta már, de nem tudom, hogy miért jobb az, ah a for ciklusok feltételében ez van, hogy a következő elem 0 (ami a keretező tömbelemeket jelentené), vagy hogy ne lépje túl a tömb htaárait. Ennek így is működnie kellene. Amit te ajánlasz, az annyiban változtatná meg a kódot, hogy for(count=1;game[row+count][col]!=''0'';count++). De ez pontosan azt csinálná, mint hogy elér az eredeti tömb széléhez, ami az én feltételeimben van. -
Miracle
senior tag
mondjuk azt nem vágom, hogy mit akar az a hosszú függvény amit leírtál, mert a kommenteknél csak a whitespacekkel bántál fukarabbul(jó, ez lehet, hogy a PH), nomeg hajnali 2 van... de abból amit mondtál talán segíthet, hogy ha n*m-es a meződ, akkor (n+2)*(m+2) méretű tömbben tárolod, aminek a szélső soraiban és oszlopaiban nincsen csak 0 vagy az, amivel jelölöd, hogy nincs ott semmi, és okosan írod meg a hozzáférő-függvényeket, úgy, hogy a felhasználó ebből semmit se lásson, tobábbra is n*m-esként kell paraméterezni. azaz amikor kap egy n*mes paramétert, hozzáad egyet egyet.
mondjuk nyilván van elegéns megoldás is a problémára, de ahoz egy szépen igazított kód kellene ide bekommentelve. -
andriscs
aktív tag
Sziasztok!
Új problémával állok elő. Szóval van egy 2 dimenziós tömb, amiben azt vizsgálom, hogy egy adott elemtől indulva az elemet körbevevú 8 irányban találok-e még legalább 3 ugyanolyan elemet (amőba jellegű a dolog). A probléma azt, hogy a tömb belsejében tökéletesen működik a dolog, de a széleken mintha összeadná az összes találatot. Emiatt megcsináltam úgy, hogy minden irányban új változó tárolja a találatot, de így sem működik. Nincs ötletem, hogy mi a hiba. Természtesen a tömböknél figyelni kell, hogy ne lépje túl a tömb határait. Bemásolom ide az adott függvény kódját, hátha valaki rátalála hibára:
public boolean searchEngine() //need to check
{
int clone1=0;
int clone2=0;
int clone3=0;
int clone4=0;
int clone5=0;
int clone6=0;
int clone7=0;
int clone8=0;
for(row=0;row<size;row++)
{
for(col=0;col<size;col++)
{
for(int count=1;row+count<game.length;count++){
if (game[row+count][col].equals(game[row][col])) {
clone1++;
if (clone1>=3) return true;}
else clone1=0;
}
for(int count=1;row-count>-1;count++)
if (game[row-count][col].equals(game[row][col])) {clone2++;
if (clone2>=3) return true;}
else clone2=0;
for(int count=1;col+count<game.length;count++)
if (game[row][col+count].equals(game[row][col])) {clone3++;
if (clone3>=3) return true;}
else clone3=0;
for(int count=1;col-count>-1;count++)
if (game[row][col-count].equals(game[row][col])) {
clone4++;
if (clone4>=3) return true;}
else clone4=0;
for(int count=1;(row+count<game.length) && (col+count<game.length);count++)
if (game[row+count][col+count].equals(game[row][col])) {clone5++;
if (clone5>=3) return true;}
else clone5=0;
for(int count=1;(row-count>-1) && (col-count>-1);count++)
if (game[row-count][col-count].equals(game[row][col])) {
clone6++;
if (clone6>=3) return true;}
else clone6=0;
for(int count=1;(row+count<game.length)&& (col-count>-1);count++)
if (game[row+count][col-count].equals(game[row][col])) {clone7++;
if (clone7>=3) return true;}
else clone7=0;
for(int count=1;(row-count>-1) && (col+count<game.length) ;count++)
if (game[row-count][col+count].equals(game[row][col])) {clone8++;
if (clone8>=3) return true;}
else clone8=0;
}
}
return false;
}
Akinek van ötlete, ne kíméljen! -
andriscs
aktív tag
HI!
Címkézett vezérlésnél mi a teendő? Elvileg csináltam egy ide: cimkét, majd használtam a break ide parancsot, de hibát jelez, hogy a cimke hiányik. Hova kell rakni? -
andriscs
aktív tag
Hi!
Működik a dolog, csak csináltam auto-formázást, és a csodálatos progi átrakott egy {-t, így minden a catch alá került, persze, hogy nem futott le. Ez így elég hosszadalmas dolog, de ha nincs ló, jó a szamár is (én is megnéztem C#-ban van olyan Console-os readInt() ).
[Szerkesztve] -
andriscs
aktív tag
válasz
Alvin_ti4200 #16 üzenetére
Hi!
Ez így oké, de majd mikor ZH-t írok Java-ból, akkor mit írjak a lapra? Hogy tessék tanár úr, itt egy link, ezen ellenőrizheti, hogy az általam használt Console osztály létezik, csak nem jegyeztem meg, de amúgy müködik.Megpróbálom ezt a BufferedInputStream.In.Read.Int.Load.Integer.ReadLine.DoWork.Already.Java.Very.Easy.ToUse.This.Input.Read() függvényt, talán működik
-
faster
nagyúr
válasz
Alvin_ti4200 #15 üzenetére
Mondom, hogy eredetileg .NET osztály.
-
faster
nagyúr
Egy példa:
Bővebben: link
Ebből már bizonyára tudsz parseInt-tel számot csinálni.
Ezért nem emlékeztem erre, mert bonyolult. BufferedReader, InputStreamReader, readLine(); sok ez egyszerre.
[Szerkesztve] -
andriscs
aktív tag
Hi!
Megnéztem, létezik olyan, hogy System.in.read(), és elvileg van olyan verziója, ami int-et kér argumentumnak, de miután megkapja, gondol egyet, és kér még egy int-et, meg egy byte-ot. Pedig van olyan read aminek 1 int argumentum kell. Szerintem be van b*szv* a fordítóm. -
andriscs
aktív tag
válasz
Alvin_ti4200 #6 üzenetére
Hi!
Oké, de akkor ebből a Console osztályból kellene származtatnom az eredeti osztályt, hogy elérjem a Console class metódusait. De ez a Console nem ''gyári'' Java osztály, hiába írnám be, hogy class xy extends Console. Szóval vmi eredeti Sun inputolvasás nincs?
[Szerkesztve] -
faster
nagyúr
válasz
Alvin_ti4200 #8 üzenetére
Ez valami extra osztály, nem a Java része?
-
faster
nagyúr
válasz
Alvin_ti4200 #6 üzenetére
Console.ReadInt() ? A Console nem .NET osztály?
Mod: Ja nem, van Java is. Az Console.readInt();
[Szerkesztve] -
andriscs
aktív tag
Hi!
És ezzel most mit kezdjek? Mi az input? Mert nem igazán ismer ilyen függvényket, bármit import-álok be. ha xyválozó.readInt() van, akkor nem lehet hívni, ha csak magában readInt() van, az úgy nem elérhető, ha osztályszinten csinálom, az se jó. Szóval ez így nem működik. Kicsit bőveb help? -
Szenty
tag
Hali!
Ezt máshogy lehet csak megoldani.
Most már túl álmos vagyok a válaszhoz, de addig is, amíg fel nem ébredek, töltsd le az alábbi filet:
ftp://ftp.gdf.hu/Public/Java/javaprog.zip
Ebben lesz egy Extra nevű csomag, abban egy Console nevű osztály. Abban van számbeolvasó rutin (mert amúgy csak stringbe lehetne).
Alszok...
Szenty
[Szerkesztve] -
andriscs
aktív tag
Hi!
Láttam, hogy nincs igazi Java topic, ezért gondoltam, én nyitok egyet, jó lenne, ha itt kérdezgetnénk Java-s dolgokat. Szóval, hogy megnyissam a sort, lenne is egy kérdésem. Szóval van egy egyszerű Java alkalmazás, é szeretnék beolvasni az inputról. Van két {B}int tpusú változó, és {B}readCharacter(){/B} függvénnyel próbáltam beolvasni, de nem igazán ismeri a függvényt a fordító. Mit kell importálni, hogy működjön?
Kb. ilyen a progi:
class xy{
public static void main(String []args)
{
int x;
int y;
x=readCharacter();
y=readCharacter();
}
}
Ha van ötlet, írjatok!!
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- exHWSW - Értünk mindenhez IS
- Nintendo Switch 2
- Renault, Dacia topik
- Milyen billentyűzetet vegyek?
- Kertészet, mezőgazdaság topik
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Tőzsde és gazdaság
- 2025 - Íme a 25. héten megjelenő játékok listája
- Konteó topic
- További aktív témák...
- Üzletből, garanciával, Macbook Pro Retina 14" 2021, M1 32GB RAM/1TB SSD Space gray
- HP EliteBook x360 830 G8 Core i5 1145G7 2.6GHz/16GB RAM/512GB
- UF Lenovo Yoga 9i x360 Érintős Hajtogatós Laptop Tab 14" -60% i7-1360P 16/1TB Iris Xe 2,8K OLED 90Hz
- Lenovo Yoga 9i x360 Érintős Hajtogatós Laptop Tab 14" -60% i7-1260P 16/512 Iris Xe 2,8K OLED 90Hz
- Új DELL Inspiron 16 Fémházas Multimédiás Laptop 16" -40% Ryzen 7 8840U 8mag 16/1TB FHD+ IPS
- Konica Bizhub C220 - A3 fénymásoló
- LG 32SQ700S-W - 32" VA Smart - 3840x2160 4K UHD - 62Hz 5ms - WebOS - Wifi + BT - USB-C - Hangszórók
- Csere-Beszámítás! RTX Számítógép PC Játékra! R5 8400F / RTX 3070Ti / 32GB DDR5 / 1TB SSD
- Bomba ár! Fujitsu LifeBook U7310 - i5-10GEN I 16GB I 256SSD I 13,3" FHD I HDMI I Cam I W11 I Gari!
- Samsung Galaxy A12 64GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: PC Trade Systems Kft.
Város: Szeged
Cég: CAMERA-PRO Hungary Kft
Város: Budapest