- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- Először kombinálja a Full HD-t az 1000 Hz-cel egy monitor
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Négy másodperc alatt betölt a Forza Horizon 6 a Microsoft csodatechnológiájával
- Milyen ÚJ notebookot vegyek?
- Ne késd le a határidőt! (Secure Boot 2026)
- OLED TV topic
- Apple MacBook
- Nem kell még temetni: 2 éves órajelcsúcsot döntöttek meg Raptor Lake-kel
- Projektor topic
-
Fórumok
PROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokLOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
Én nem ismerem, a tanárOK mondják, hogy rémes a kerettanterv

Szóval, annyit javult a helyzet, hogy most ha a gazda neve, kor vagy tömeg alapján keresek, akkor tökéletes, viszont ha név alapján, akkor a név tömb első elemét valamiért ignorálja. Az egész beolvasás procedúra tulajdonképpen ugyanaz az összes tömbnél, továbbá ha csak szimplán kiiratom azt a tömbelemet, akkor ott van rendesen, hogy Füsti (vagy akármi, amit beviszek arra az elemre), de a kereséskor nem találja.
Itt a kód(try catch-ben van, de azt most nem keresem meg, hol a vége-eleje, de nincs azzal gond)
Így azt hiszem, egy az egyben be is másolhatváltozók megadásával) futtatható is//változók
int fomenu, kilepes=0;
int bevitel,torles,rendezes,szures,mentes,elvet,kilep;
int bevkeres,torkeres, szurkor,szurtt;
int mod;
//beolvasas
BufferedReader br=new BufferedReader(new FileReader("adatok.txt"));
String sor;
int n=500;
String [] nev =new String [n];
String [] gazdnev =new String [n];
String [] tomeg =new String [n];
String [] kor =new String [n];
int olvastomb=0;
while((sor=br.readLine())!=null){
nev[olvastomb]=(sor.substring(0, sor.indexOf(";")));
sor=sor.substring(sor.indexOf(";")+1);
gazdnev[olvastomb]=(sor.substring(0,sor.indexOf(";")));
sor=sor.substring(sor.indexOf(";")+1);
tomeg[olvastomb]=(sor.substring(0, sor.indexOf(";")));
sor=sor.substring(sor.indexOf(";")+1);
kor[olvastomb]=sor;
olvastomb++;
}
//problémás részlet
try{
int []modvalogatas=new int[n];
int db=-1;
int i=0;
do{
i=0;
System.out.println(BLUE+"MEGLÉVŐ ÁLLAT ADATAINAK MÓDOSÍTÁSA MENÜ"+RESET);
System.out.println("Mi alapján szeretnénk kiválasztani a módosítandó tulajdonságú állatot?");
System.out.println("1-Név alapján");
System.out.println("2-Gazdája neve alapján");
System.out.println("3-Kor alapján");
System.out.println("4-Testtömege alapján");
System.out.println("5-Mégsem");
System.out.println();
bevkeres=extra.Console.readInt("Melyik menüpontot választja? ");
switch(bevkeres){
case 1 : {
String kereses=extra.Console.readLine("Milyen nevet keressünk?");
db=0;
i=0;
while(nev[i++]!=null){
}
for (int g=0;g<i;g++){
if (kereses.equals(nev [g])){
modvalogatas[db]=g;
db++;
}
}
break;
}
case 2 : {//főmenü 1-es menüpont->2-es menüpont
String kereses=extra.Console.readLine("Mi a gazda neve?");
db=0;
i=0;
while(gazdnev[i++]!=null){
}
for (int g=0;g<i;g++){
if (kereses.equals(gazdnev[g])){
modvalogatas[db]=g;
db++;
}
}
break;
}
case 3 : { //főmenü 1-es menüpont->2-es menüpont
String kereses=extra.Console.readLine("Milyen korút keressünk?");
db=0;
i=0;
while(kor[i++]!=null){
}
for (int g=0;g<i;g++){
if (kereses.equals(kor [g])){
modvalogatas[db]=g;
db++;
}
}
break;
}
case 4 : {//főmenü 1-es menüpont->2-es menüpont
String kereses=extra.Console.readLine("Milyen tömegűt keressünk?");
db=0;
i=0;
while(tomeg[i++]!=null){
}
for (int g=0;g<i;g++){
if (kereses.equals(tomeg [g])){
modvalogatas[db]=g;
db++;
}
}
break;
}
case 5: { //főmenü 1-es menüpont->2-es menüpont
break;
}
default: { //főmenü 1-es menüpont->2-es menüpont
System.out.println(RED+"Hibás értéket adott meg."+RESET);
}
}
try{ //főmenü 1-es menüpont->2-es menüpont
if(db!=0){
System.out.println(nev[0]+gazdnev[0]+tomeg[0]+kor[0]);
System.out.println("Az alábbi találat(ok) keletkeztek. ");
for (int j=0;j<db;j++){
System.out.println((modvalogatas[j])+"-"+nev[modvalogatas[j]]+";"+gazdnev[modvalogatas[j]]+";"+kor[modvalogatas[j]]+"év;"+tomeg[modvalogatas[j]]);
}
int modos=extra.Console.readInt("Melyik állatot kívánja módosítani a fentiek közül?");
do{
System.out.println(BLUE+"ÁLLAT ADATÁNAK MÓDOSÍTÁSA MENÜ"+RESET);
System.out.println("1-Név módosítása");
System.out.println("2-Gazda nevének módosítása");
System.out.println("3-Testtömeg módosítása");
System.out.println("4-Kor módosítása");
System.out.println("5-Mégsem");
System.out.println();
mod=extra.Console.readInt("Melyik menüpontot választja?");
switch (mod){
case 1:{ //főmenü 1-es menüpont->2-es menüpont
nev[modos]=extra.Console.readLine("Mi az állat új neve?");
break;
}
case 2:{ //főmenü 1-es menüpont->2-es menüpont
gazdnev[modos]=extra.Console.readLine("Mi az új gazda neve?");
break;
}
case 3:{//főmenü 1-es menüpont->2-es menüpont
tomeg[modos]=String.valueOf(extra.Console.readInt("Mennyi az állat új tömege?"));
break;
}
case 4:{//főmenü 1-es menüpont->2-es menüpont
kor[modos]=String.valueOf(extra.Console.readInt("Mennyi idős az állat?"));
}
case 5:{//főmenü 1-es menüpont->2-es menüpont
break;
}
default: {//főmenü 1-es menüpont->2-es menüpont
System.out.println(RED+"Hibás értéket adott meg."+RESET);
}
}
} while(mod!=5);
}
else {
System.out.println("Nincs ilyen állat.");
}
System.out.println();
}catch(Exception e){
System.out.println(RED+"Hiba történt!: "+e.getMessage()+RESET);
}
}while(bevkeres!=5);
}catch(Exception e){
System.out.println(RED+"Hiba történt!: "+e.getMessage()+RESET);
}
break;Értelmesebb lett volna, ha egyből egy tesztelhető kódot dobsz be (értsd: mi csak bedobjuk a fejlesztőkörnyezetbe az adott osztály(oka)t, és mehet a teszt), vagy csak a vonatkozó kódrészletet, nem csak simán bedobod ezt az óriási - ráadásul rosszul tagolt - borzalmat (mert lusták vagyunk kibogarászni ekkora kódot, ami ronda is, gyorsabb lenne lefuttatni). Ekkora mennyiségű kód tényleg mehetne pastebinre (ahol bekattintod, hogy Java-szintaxis szerint legyen kiemelve értelemszerűen). Amúgy nem véletlenül mondtuk korábban, hogy bontsd szét a kódodat több metódusra, ez így valami elképesztő ocsmány és átláthatatlan.
(#7423):
Ugyanúgy megoldhatod do-while-lal ezt a feladatot is. -
Ursache
senior tag
Én nem ismerem, a tanárOK mondják, hogy rémes a kerettanterv

Szóval, annyit javult a helyzet, hogy most ha a gazda neve, kor vagy tömeg alapján keresek, akkor tökéletes, viszont ha név alapján, akkor a név tömb első elemét valamiért ignorálja. Az egész beolvasás procedúra tulajdonképpen ugyanaz az összes tömbnél, továbbá ha csak szimplán kiiratom azt a tömbelemet, akkor ott van rendesen, hogy Füsti (vagy akármi, amit beviszek arra az elemre), de a kereséskor nem találja.
Itt a kód(try catch-ben van, de azt most nem keresem meg, hol a vége-eleje, de nincs azzal gond)
Így azt hiszem, egy az egyben be is másolhatváltozók megadásával) futtatható is//változók
int fomenu, kilepes=0;
int bevitel,torles,rendezes,szures,mentes,elvet,kilep;
int bevkeres,torkeres, szurkor,szurtt;
int mod;
//beolvasas
BufferedReader br=new BufferedReader(new FileReader("adatok.txt"));
String sor;
int n=500;
String [] nev =new String [n];
String [] gazdnev =new String [n];
String [] tomeg =new String [n];
String [] kor =new String [n];
int olvastomb=0;
while((sor=br.readLine())!=null){
nev[olvastomb]=(sor.substring(0, sor.indexOf(";")));
sor=sor.substring(sor.indexOf(";")+1);
gazdnev[olvastomb]=(sor.substring(0,sor.indexOf(";")));
sor=sor.substring(sor.indexOf(";")+1);
tomeg[olvastomb]=(sor.substring(0, sor.indexOf(";")));
sor=sor.substring(sor.indexOf(";")+1);
kor[olvastomb]=sor;
olvastomb++;
}
//problémás részlet
try{
int []modvalogatas=new int[n];
int db=-1;
int i=0;
do{
i=0;
System.out.println(BLUE+"MEGLÉVŐ ÁLLAT ADATAINAK MÓDOSÍTÁSA MENÜ"+RESET);
System.out.println("Mi alapján szeretnénk kiválasztani a módosítandó tulajdonságú állatot?");
System.out.println("1-Név alapján");
System.out.println("2-Gazdája neve alapján");
System.out.println("3-Kor alapján");
System.out.println("4-Testtömege alapján");
System.out.println("5-Mégsem");
System.out.println();
bevkeres=extra.Console.readInt("Melyik menüpontot választja? ");
switch(bevkeres){
case 1 : {
String kereses=extra.Console.readLine("Milyen nevet keressünk?");
db=0;
i=0;
while(nev[i++]!=null){
}
for (int g=0;g<i;g++){
if (kereses.equals(nev [g])){
modvalogatas[db]=g;
db++;
}
}
break;
}
case 2 : {//főmenü 1-es menüpont->2-es menüpont
String kereses=extra.Console.readLine("Mi a gazda neve?");
db=0;
i=0;
while(gazdnev[i++]!=null){
}
for (int g=0;g<i;g++){
if (kereses.equals(gazdnev[g])){
modvalogatas[db]=g;
db++;
}
}
break;
}
case 3 : { //főmenü 1-es menüpont->2-es menüpont
String kereses=extra.Console.readLine("Milyen korút keressünk?");
db=0;
i=0;
while(kor[i++]!=null){
}
for (int g=0;g<i;g++){
if (kereses.equals(kor [g])){
modvalogatas[db]=g;
db++;
}
}
break;
}
case 4 : {//főmenü 1-es menüpont->2-es menüpont
String kereses=extra.Console.readLine("Milyen tömegűt keressünk?");
db=0;
i=0;
while(tomeg[i++]!=null){
}
for (int g=0;g<i;g++){
if (kereses.equals(tomeg [g])){
modvalogatas[db]=g;
db++;
}
}
break;
}
case 5: { //főmenü 1-es menüpont->2-es menüpont
break;
}
default: { //főmenü 1-es menüpont->2-es menüpont
System.out.println(RED+"Hibás értéket adott meg."+RESET);
}
}
try{ //főmenü 1-es menüpont->2-es menüpont
if(db!=0){
System.out.println(nev[0]+gazdnev[0]+tomeg[0]+kor[0]);
System.out.println("Az alábbi találat(ok) keletkeztek. ");
for (int j=0;j<db;j++){
System.out.println((modvalogatas[j])+"-"+nev[modvalogatas[j]]+";"+gazdnev[modvalogatas[j]]+";"+kor[modvalogatas[j]]+"év;"+tomeg[modvalogatas[j]]);
}
int modos=extra.Console.readInt("Melyik állatot kívánja módosítani a fentiek közül?");
do{
System.out.println(BLUE+"ÁLLAT ADATÁNAK MÓDOSÍTÁSA MENÜ"+RESET);
System.out.println("1-Név módosítása");
System.out.println("2-Gazda nevének módosítása");
System.out.println("3-Testtömeg módosítása");
System.out.println("4-Kor módosítása");
System.out.println("5-Mégsem");
System.out.println();
mod=extra.Console.readInt("Melyik menüpontot választja?");
switch (mod){
case 1:{ //főmenü 1-es menüpont->2-es menüpont
nev[modos]=extra.Console.readLine("Mi az állat új neve?");
break;
}
case 2:{ //főmenü 1-es menüpont->2-es menüpont
gazdnev[modos]=extra.Console.readLine("Mi az új gazda neve?");
break;
}
case 3:{//főmenü 1-es menüpont->2-es menüpont
tomeg[modos]=String.valueOf(extra.Console.readInt("Mennyi az állat új tömege?"));
break;
}
case 4:{//főmenü 1-es menüpont->2-es menüpont
kor[modos]=String.valueOf(extra.Console.readInt("Mennyi idős az állat?"));
}
case 5:{//főmenü 1-es menüpont->2-es menüpont
break;
}
default: {//főmenü 1-es menüpont->2-es menüpont
System.out.println(RED+"Hibás értéket adott meg."+RESET);
}
}
} while(mod!=5);
}
else {
System.out.println("Nincs ilyen állat.");
}
System.out.println();
}catch(Exception e){
System.out.println(RED+"Hiba történt!: "+e.getMessage()+RESET);
}
}while(bevkeres!=5);
}catch(Exception e){
System.out.println(RED+"Hiba történt!: "+e.getMessage()+RESET);
}
break;Legkozelebb pastebint, vagy hasonlot hasznalj, koszi.
Új hozzászólás Aktív témák
-
Fórumok
PROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokLOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- Fórumok
- Szoftverfejlesztés
- Java programozás
- (kiemelt téma)
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Revolut
- E-roller topik
- A Motorola Edge is különleges textúrával várható
- Vivo X200 Pro - a kétszázát!
- Sorozatok
- AMD Ryzen 9 / 7 / 5 7***(X) "Zen 4" (AM5)
- A fociról könnyedén, egy baráti társaságban
- Először kombinálja a Full HD-t az 1000 Hz-cel egy monitor
- Óra topik
- Yettel topik
- További aktív témák...
- 24 magos AMD Threadripper alapú munkára kiváló félgép, 128GB RAM-mal
- HP ZBook Fury 15 G7 i7-10850H 32GB 512GB SSD Quadro T2000 4GB FHD HUN bill, szép állapotban eladó
- Eladó MacBook Pro 16,1 2019 CTO
- új 0 km es garanciás lenovo loq rtx 5050 8gb
- Eladó teljesen újszerű karcmentes Samsung Galaxy Watch Ultra
- Keresünk Galaxy S23/S23+/S23 Ultra/S23 FE
- Honor 400 Lite / 8/256GB / Kártyafüggetlen / 12Hó Garancia
- Corsair HX1200i 1200W 80 PLUS Platinum (CP-9020307-EU) Tápegység
- iPhone 15 Pro Max 256GB 84% (1év Garancia)
- HP Elitebook / Probook üzleti kategóriás notebookok - i5 - i7 - Ryzen - számlával. Frissítve: 04.25
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest



