Kezdőoldal » Számítástechnika » Programozás » C#-ban szeretnék egy programot...

C#-ban szeretnék egy programot elkészíteni, de elakadtam egy ponton valaki ötlet?

Figyelt kérdés

A beolvasási résznél van egy dolog amit logikailag nem tudok megoldani, és ehhez szeretnék segítséget kérni. A program lényege annyi, hogy az elején megkérdezi a harcos nevét, és ha az adott név már volt, akkor a képességét ami a jegyzettömbe van ( Neve KI ereje, ütőereje, sebessége)

mellé kellene rendelnie. A logikai lépést ott nem értem, hogy addig eljutok, hogy felismeri hogy egy adott név már van a jegyzettömben, de azt szeretném elérni, hogyha a név már Volt, akkor a névhez tartozó értékeket rendelje hozzá. Tehát pl kérdezi a program, hogy harcos neve?

és válaszolod, hogy Pista, de a jegyzettömben van egy Pista nevű "harcos" akkor a mentett értékeket használja fel! Minden program végén elmenti a programom autómatikusan egyébként a nevet, az energiát, az erőt és a sebességet. De nem tudom logikailag hogy fejezzem ki, ha pl felülről a jegyzettömben a 8. név volt a Pista, akkor az energiák közül is felülről a 8.-at válassza ki.

Előre is köszönöm! Nagyon fontos lenne! :)


Console.WriteLine("Hogy hívnak első harcos?");



string b = Console.ReadLine();



string[] beolvasas = System.IO.File.ReadAllLines("karakterek.txt");

string[] neve = new string [beolvasas.Length]; //a legvégén lévő jegyzetben mentett adtokat akarom beolvastatni...

double[] energia = new double[beolvasas.Length];

int[] utoenergia = new int[beolvasas.Length];

int[] gyorsasag = new int[beolvasas.Length];


for (int i = 1; i < beolvasas.Length; i++)

{

string be = beolvasas[i];

string[] split = be.Split(' ', ' ', ' ');

neve[i] = (split[0]);

energia[i] = Convert.ToInt32(split[1]);

utoenergia[i] = Convert.ToInt32(split[2]);

gyorsasag[i] = Convert.ToInt32(split[3]);



}

for (int i = 0; i < neve.Length; i++)

{

if (neve[i]==b)

{


}

}



2015. jún. 8. 17:19
1 2 3 4
 1/37 anonim ***** válasza:
Nem tudom, hogy formázatlan kódért vagy a magyar váltózónevekért jár nagyobb pofon, de hogy az egész hozzáállással baj van, az tuti. Gondolom, az utcán is úgy kérsz útbaigazítást, hogy előtte orrba vágod az illetőt.
2015. jún. 8. 17:25
Hasznos számodra ez a válasz?
 2/37 anonim ***** válasza:

Ha jól értelmezem a dolgot, akkor ilyen formátumban mented az adataidat

név, stat1, stat2, stat3 <sortörés>

név, stat1, stat2, stat3 <sortörés>


Amikor a második for ban végigmész a neveken, akkor az i pont azt adja vissza, hogy hányadik sorban vagy, szóval elég egyszerű a dolog.

if (neve[i] == b){

energiaja = energia[i];

gyorsasaga = gyorsasag[i];


Viszont az ilyen változóneveket, hogy "b" felejtsd el, agybajt kapsz tőle, elég hamar, és baromira nehéz leszokni róla, jobb minél előbb elkezdeni.

2015. jún. 8. 17:29
Hasznos számodra ez a válasz?
 3/37 A kérdező kommentje:
Ilyen kommentekre nem vagyok kíváncsi. Szépen kértem segítséget, senki nem kíváncsi az olyan emberekre, mint te.
2015. jún. 8. 17:31
 4/37 A kérdező kommentje:

konkrétan ez van a jegyzettömbe most:

Ádám 22 8 1

Ádám 525 44 4

Ádám 162 35 4

2015. jún. 8. 17:32
 5/37 anonim ***** válasza:

Ez a probléma már a mentéshez tartozik, az egyik megoldás, hogy nem csak hozzáírsz a meglévő fájlhoz(ha jól sejtem így csinálod), hanem betöltöd az egészet, felülírod amit kell, és az egész fájlt kiírod.

Az ilyen jellegű feladatokra egyébként a struct sokkal alkalmasabb, úgy rendszerezed ahogy akarod, és nem kell konvertálással szarakodni sem.

2015. jún. 8. 17:39
Hasznos számodra ez a válasz?
 6/37 A kérdező kommentje:

Csak nagyon kezdő vagyok... Egyébként így bővítettem a programot most, de mégsem írja ki amit kell, egyedül a nevet. Figyi:

double energiaforciklus = 0;

int utoenergiaforciklus=0;

int gyorsasagforciklus = 0;

for (int i = 0; i < neve.Length; i++)

{

if (neve[i]==b)

{

energia[i] = energiaforciklus;

utoenergia[i] = utoenergiaforciklus;

gyorsasag[i] = gyorsasagforciklus;

}

}

Console.WriteLine(b, energiaforciklus, utoenergiaforciklus, gyorsasagforciklus);


A komplett program is is eleve nagyon káosz... :D

2015. jún. 8. 17:44
 7/37 A kérdező kommentje:
Éss most valamiért 0-t ír pl az energianak... ha beakarom olvastatni pl Ádám energiaszintjet.
2015. jún. 8. 17:46
 8/37 anonim ***** válasza:

Áruld már el kérlek, hogy miért csinálsz egyre és egyre bonyolultabb programokat, amikor a legalapabb fogalmakkal sem vagy tisztában?

Ennek annyi lesz az eredménye, hogy néhány hét múlva akkora káosz lesz a fejedben, hogy egy életre elmegy a kedved az egésztől.

2015. jún. 8. 18:06
Hasznos számodra ez a válasz?
 9/37 anonim ***** válasza:

Erről beszélek, hogy meglepődsz, hogy ez a kód 0-t ír ki...

Keress már valami más hobbit...

2015. jún. 8. 18:08
Hasznos számodra ez a válasz?
 10/37 A kérdező kommentje:
Értelmes ember elmondja, hogy hogyan oldjam meg akkor? Rád meg nem vagyok kíváncsi, nem te fogod megmondani, hogy mit csinálok és mit nem, egyébként pedig 5 nap tanulás után megnézném milyen programokat írtál.
2015. jún. 8. 18:12
1 2 3 4

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!