Hát alapvetően arra a karakterre kéne nézni amivel a lépés történt, nem arra amivel Te vagy Szóval ne game.Choice-al való egyezést keresgélj.
[ Szerkesztve ]
Hát alapvetően arra a karakterre kéne nézni amivel a lépés történt, nem arra amivel Te vagy Szóval ne game.Choice-al való egyezést keresgélj.
[ Szerkesztve ]
A StepHappened kétdimenziós tömb mindig azt a char-t tárolja, amivel a lépés történt és az if-be is ez van tulajdonképpen. Tehát ezzel szerintem nincs gond.
Tehát ha jólértem a stepHappenedben benne van a pálya.
Na ezek után te végignézed azt a sort, oszlopot ahova a lépés történt éppen, plusz az átlókat. De minden poíciót a game.Choice-al hasonlítasz össze... A másik játékossal nem foglalkozol -> esélyed sincs kideríteni, hogy vele mi van.
Game.choice helyett használd a game.StepHappened[x,y]-t, már ha jól sejtem hogy az x,y az utolsó lépés koordinátái.
pontosan, a game.Choice-okat le kell cserelni game.StepHappened[x,y]-ra
amugy az elso ciklusban felesleges a j valtozo
Azt jelenti, hogy kettő Form1-ed van most. Ha ez tulajdonképpen egy osztály két darabban, akkor mindkettőt jelöld meg partial-nak, ahogy az üzenet írja. Ha csak névütközés, akkor az egyiket nevezd át.
Egyébként ezeket a generált Form1, Button1, stb. neveket azonnal le kell cserélni létrehozáskor valami beszédes névre.
Jester
Oké, köszönöm!
Az hogy lehet, hogy írni akarok egy teljesen újonnan létrehozott file-ba és kiírja, hogy egy másik process használja?
Így próbáltam:
StreamWriter sw = new StreamWriter("path");
Aztán
sw.WriteLine(data);
Közbe megvan:
StreamWriter myStream = File.CreateText("file path");
Pl azért mert előzőleg nem lett lezárva a file.
Ez a vicc, hogy nem volt előzőleg. Létrehoztam és rögtön meg akartam nyitni.
Sziasztok.
Készítek egy játékot és szeretnék beolvasni egy txt-ből szöveget, majd kiíratni egy listboxba, de sortöréssel.
Próbálkozok vele, de nem tudom.Az már megvan,hogy beolvassa a szöveget és ki is írja a listboxba, de egy sorba.Meg az ékezeteket nem ismeri fel.
Segítsetek légyszi.Köszönöm.
06-30-868-0365 Mindig Privátot írj, mert azt minden nap nézem vagy hívj telon.Számom az adataimnál.
string [] r = File.ReadAllLines(@"D:\asd.txt");
listBox1.Items.AddRange(r);
Köszi szépen.
06-30-868-0365 Mindig Privátot írj, mert azt minden nap nézem vagy hívj telon.Számom az adataimnál.
Sziasztok!
Form alkalmazáshoz mi a legegyszerűbb módszer az idő mérésére (00:00 - másodperc:perc alapon, később átváltani másodpercre az egészet). Elindítani és megállítani kéne tudni, semmi extra.
Keresgéltem a neten, de nem találtam értelmes segítséget. Nem tudom, hogy a beépített timer erre mennyire alkalmas (?).
[ Szerkesztve ]
A legegyszerűbb a Stopwatch.
Én többször is TimeSpan vagy DateTime segítségével számoltam: indítás előtt az aktiális idő, befejezás után, a kettő különbsége az eltelt idő.
szerk: lehet félre értettelek. Ha azt akarod folyamatosan kiírni, hogy pl mennyi ideje megy egy játék, akkor timer. 1sec-enként üssön, a tick-ben meg növeljen egy sima int változót, amit átszámolsz, vagy TimeSpan-t, ami meg simán visszaadja a megfelelő formában az időt.
[ Szerkesztve ]
Hali!
Köszi mindenkinek a segítséget, készülget a lottó progim.(már azért használható)
letölthetitek: http://data.hu/get/5018298/Lotto.zip
Framework 4.0 - kell a futtatáshoz.
Üdv, Chris
Bajban vagyok. KeyDown eventet akarok elkapni, de az istennek se akar működni. Ha a form-ra bmit rápakolok, nem működik a cucc, csak üres form esetén. A KeyPreview propertyt True -ra állítottam. Mi lehet a gond?
[ Szerkesztve ]
[ Szerkesztve ]
valaki csinált már MNB középárfolyam lekérdezéseket ?
Mit lehet ehhez használni ?
-.-
Itt PHP-ra van is példa program, de mivel webservice gondolom bármiből könnyedén meg lehet hívni.
[ Szerkesztve ]
Én kérek elnézést!
köszi !
-.-
Bocsi, jó a megoldás, utólag is köszönöm.
Sziasztok!
Az alábbi két feladattal lenne egy kis gondom:
Hibajelenség: Sosem találja el a gondolt számot. Nem értem miért, itt szívok vele egy fél napja. Hibás lenne a gondolatmenetem? O.o
A Kő és az Olló gombok működnek, a Papír nem, pedig centire ugyanaz a kód. Mi lehet a baja?
Köszönöm a segítséget!
Üdv. core2
[ Szerkesztve ]
1.
minden gombnyomásnál új számot generál
és amúgy meg minek ide for ciklus ami 7-szer végigmegy az egészen?
2.
JatekosValaszt = "papir";
a papír hosszú í
(#3177) Peter Kiss válasza Neil Watts (#3175) üzenetére
Amikor centire ugyanazt a kódot írjuk le újra meg újra, akkor kérdezzük meg magunkról: nem tudnám ezt úgy megcsinálni, hogy ne sokszorozzam a kódom mennyiségét?
Ez a DRY, való igaz.
Egyébként a feladathoz: a gomboknál felesleges a mouseDown-t használni, főleg, ha utána azt mondod, hogy mindegy, melyik gombot nyomta meg a nép - akkor már inkább a click.
Üdv mindenkinek!
Egy olyan programot írok ami figyeli egy könyvtár változásait. A program elindulásakor vár arra, hogy történjen valami a könyvtárba majd ha megtörtént akkor nem ír ki semmit.
Mi lehet a hiba?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
namespace figyel
{
class Program
{
static void Main(string[] args)
{
FileSystemWatcher figyel = new FileSystemWatcher();
figyel.Path = @"c:\";
figyel.Filter = @"*";
figyel.WaitForChanged(WatcherChangeTypes.All);
figyel.Changed += new FileSystemEventHandler(OnChanged);
figyel.Created += new FileSystemEventHandler(OnCreated);
figyel.Deleted += new FileSystemEventHandler(OnDeleted);
figyel.Renamed += new RenamedEventHandler(OnRenamed);
figyel.EnableRaisingEvents = true;
}
private static void OnChanged(object source, FileSystemEventArgs e)
{
Console.WriteLine("A könyvtár tartalma megváltozott.");
}
private static void OnRenamed(object source, RenamedEventArgs e)
{
Console.WriteLine("A könyvtár egy elemét átnevezték.");
}
public static void OnCreated(object source, FileSystemEventArgs e)
{
Console.WriteLine("A könyvtárban létrhoztak egy elemet.");
}
public static void OnDeleted(object source, FileSystemEventArgs e)
{
Console.WriteLine("A könyvtár egy elemét törölték.");
}
}
}
Dell G3 3779 || Samsung S23+ || Samsung Watch 5 Pro || Oculus Quest 2 || Creality Ender 3 V2
rakj be egy console.readline()-t vagy valamit a végére, mert ez így azonnal kilép ha jön egy esemény
példa: [link]
Ötletek:1. Használj ""-t filterezésre, lehet, hogy a "*" csak a kiterjesztés nélküli fájlokat figyeli.
To watch for changes in all files, set the Filter property to an empty string ("") or use wildcards ("*.*"). To watch a specific file, set the Filter property to the file name. For example, to watch for changes in the file MyDoc.txt, set the Filter property to "MyDoc.txt". You can also watch for changes in a certain type of file. For example, to watch for changes in text files, set the Filter property to "*.txt".
2. lehet, hogy explicit Security Permission kell a metódusnak:
[PermissionSet(SecurityAction.Demand, Name="FullTrust")]
3. WaitForChanged
This method waits indefinitely until the first change occurs and then returns. This is the same as using WaitForChanged with the timeout parameter set to -1.
Egyrészt ez a metódus addig vár, amíg nincs változás (tehát a program "megáll, amíg nem történik valami). Másrészt amikor visszatér az első változással, akkor tovább fut a program (te viszont nem is nézed, mi a változás). Azután beállítod a figyelést és a események generálását, de mivel nincs, ami "visszatartaná" (loop vagy readkey, vagy akármi), így a programot ezzel ki is lép...
AE
[ Szerkesztve ]
Csinálok egy adag popcornt, és leülök fórumozni --- Ízlések és pofonok - kinek miből jutott --- Az igazi beköpőlégy [http://is.gd/cJvlC2]
Nekem is ez jutott eszembe először, de így se jó, gondolom a kolléga is gondolt rá ezen a szinten. (Hozzáteszem, hogy azért látszana, hogy kiír valamit, bármilyen gyorsan is lép ki.) Pl. debug nélkül futtatva marad a console, de semmi.
kipróbáltam az ő verzióját, így működik
csak valamiért indítás után pár másodpercig még nem csinál semmit
de utána már jó
egyébként ott a példa permission-nel, az korrektül működik
Már majdnem dobtam a választ, hogy ezt már próbáltam és nem ez a gond, de mondom csak megpróbálom még1× és tádám jó lett
Valamit elszúrtam biztos, köszi a gyors választ.
ArchElf, Jhonny06: Nektek is köszönöm, de lám ilyen egyszerű volt a megoldás
[ Szerkesztve ]
Dell G3 3779 || Samsung S23+ || Samsung Watch 5 Pro || Oculus Quest 2 || Creality Ender 3 V2
Szia!
1. Az oké, de ezt mondjuk hogy küszöböljem ki?
A Form1_Load-ba nem rakhatom, nem?
2. Oké, ez a részemről typo volt. De amúgy rendben van ugye?
Üdv. core2
(#3186) Neil Watts válasza Neil Watts (#3185) üzenetére
2. Mégsincs sajnos, még így sem.
1. rakd oda, ami nem hívódik meg minden gombnyomásnál
2. a kívánt működést megvalósítja ránézésre, de gondolkodj rajta kicsit, és rájössz, hogy nem kell háromszor (kilencszer!) megírni ugyanazt
egy eseménykezelőt lehet több gombhoz is rendelni, nézd meg a Form1 generált részét (Form1.Designer.cs)
továbbá a szövegnek sincs semmi jelentősége a vizsgálatnál (főleg hogy ki sem írod a játékosnak, hogy a gép mit választott)
1. OK, tehát a randomszám generálást. Hisz az csak 1x kell.
De ha átpakolom a Loadba, akkor nincs semmi hatása, max annyi, hogy nem fut le a program, mert ugye teljesen jogosan hibaként érzékeli. Akkor mégis hogyan?
2. Na várj, ezt nem értem:
"a kívánt működést megvalósítja ránézésre, de gondolkodj rajta kicsit, és rájössz, hogy nem kell háromszor (kilencszer!) megírni ugyanazt"
Miért? Mindegyik gomb külön kiértékelési rendszerrel rendelkezik, s le kell ellenőriznem mindet.
"továbbá a szövegnek sincs semmi jelentősége a vizsgálatnál (főleg hogy ki sem írod a játékosnak, hogy a gép mit választott)"
Na az igaz...
Üdv. core2
No, a 2. megoldva.
Az első viszont érdekes.
Hét próbálkozásból kéne kitalálni a számot max, azért raktam be a forba a 7-et.
Nem tudom viszont, hogy miként kéne igazából megoldani az elsőnek ezt a vázolt gondját sajnos. Vagyis tudom -sejtem-, csak ha valami olyan szerkezetet használok amit még nem vettünk akkor nem fogadják el.
Üdv. core2
legyen a kitalálandó szám a Form tagváltozója, a Loadban adsz neki értéket random.next-tel
a Form egy másik változója legyen a próbák száma 0 kezdőértékkel
gombnyomásnál vizsgálsz + növeled a próbák számát, semmilyen for ciklus nem kell
ha a próbák száma elérte a 7 és nem találta ki, game over
Adtam neki értéket, a Load-ban lévő változót mégsem ismeri fel
Ja, ok, felfogtam, hogy mire céloztál, azt hiszem...
[ Szerkesztve ]
(#3192) Neil Watts válasza Neil Watts (#3191) üzenetére
Megoldva ez is... További jó napot!
MOD: Elnézést, a túl sok egymásutáni hszért.
[ Szerkesztve ]
Szívesen! Bár látom, sikerült vb.net példát belinkelnem, de ezek szerint nem okozott nagy problémát.
Nem, nem, ennyi absztrakciós készséget már felszedtem.
Hali!
Valaki tud-e C# és 2010-es studio framework 4.0-hoz 3D enginet,
DirectX 9.0-val.
Vagy valami leírás is jó lenne.
Üdv, Chris
Én kérek elnézést!
SZiasztok.
Próbálgatok csinálni egy kicsike programot, ami egy tömbe tölt be véletlen szerűen számokat.
tegyük fel legyen a tömb 10 elemű.Ezt egy for ciklussal és egy random generálással készítem ugye?
Ez eddig oké is, mikor kiíratom akkor veszem észre,hogy igen is van olyan hogy 2 db ugyan olyan szám is van a tömben.Próbáltam már 2 ciklust egybe ágyazni és egy feltételle kiszűrni,hogy, ha a tomb==tomb[j] elemável akkor a tomb[j] = rnd.next(1,100);
Mit rontok el?
Előre köszönöm a segítséget.
private void button1_Click(object sender, EventArgs e)
{
Random rnd = new Random();
int[] szamok=new Int32[5];
for (int i = 0; i < szamok.Length; i++)
{
szamok[i] = rnd.Next(1, 90);
}
for (int i = 0; i < szamok.Length; i++)
{
for (int j = 1; j < szamok.Length; j++)
{
if (szamok[i] != szamok[j])
{
}
else
{
szamok[j] = rnd.Next(1, 90);
}
}
}
//szamok[0] = rnd.Next(1, 90);
//szamok[1] = rnd.Next(1, 90);
//szamok[2] = rnd.Next(1, 90);
//szamok[3] = rnd.Next(1, 90);
//szamok[4] = rnd.Next(1, 90);
textBoxÖtös.Text = szamok[0].ToString()+", " + szamok[1].ToString()+", " + szamok[2].ToString()+", " + szamok[3].ToString()+", " + szamok[4].ToString();
}
06-30-868-0365 Mindig Privátot írj, mert azt minden nap nézem vagy hívj telon.Számom az adataimnál.
Miért ne lenne? Semmi nem garantálja, hogy egy tömbbe nem kerülhet bele kétszer ugyanaz a szám.
Tedd a generálást egy hátultesztelős ciklusba, ami addig fut amíg olyan számot nem ad, ami még nincs benne a tömbben.
Nem árt késleltetni egy kicsit:
Thread.Sleep(1000);
A paramétert ezredmásodpercben kell megadni, azaz a fenti kód 1 másodperccel fogja késleltetni, de ez sok a program futásakor, azaz olyan 10-100 közötti érték már ideális. Túl gyorsan generálódnak az értékek.
Ilyesmit is lehet:
using System;
using System.Threading;
public static class RandomHelper
{
private static int seedCounter = new Random().Next();
[ThreadStatic]
private static Random rng;
public static Random Instance
{
get
{
if (rng == null)
{
int seed = Interlocked.Increment(ref seedCounter);
rng = new Random(seed);
}
return rng;
}
}
}
Amúgy a dupla for ciklusnak semmi értelme, mert pont akkor nem tesz bele értéket, amikor nem egyenlő egy másik számmal és neked pont akkor kéne, amikor nem egyenlő. Így akkor tesz bele, amikor egyenlő.
Ennyi az egész:
Random rnd = new Random();
int[] szamok = new Int32[5];
for (int i = 0; i < szamok.Length; i++)
{
szamok[i] = rnd.Next(1, 90);
Thread.Sleep(100);
}
for (int i = 0; i < szamok.Length; i++)
Console.WriteLine(szamok[i]);
System.Threading-et using-olni kell természetesen.
[ Szerkesztve ]
Köszönöm a segítséget.
De ha jól sejtem akkor még néha dobhat a tömbe bele 2 ugyan olyan számot ugye?Mert ahogy írtad én először a Thread.Sleep(100)-ra állítottam és egy pár kattintás után beugrott 2 db egyforma szám.
Most 50-re állítottam és próbálkozok vele, de eddig nem volt egyforma.
Teljesen kezdő vagyok ebben a programozásban, úgy hogy lehet hülyeséget írok, de szerintem, amit előtted írtak ez a feltételes lenne a legtökéletesebb,mert akkor mindig végig vizsgálná a tömböt, de az a gond,hogy én azt nem tudom megcsinálni,mert ugye gyenge vagyok hozzá.
Ez az egész egy próbaprogram akarna lenni egy lottós szám generálásához, Form-al és Button-al.
06-30-868-0365 Mindig Privátot írj, mert azt minden nap nézem vagy hívj telon.Számom az adataimnál.
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!