- Luck Dragon: Asszociációs játék. :)
- ldave: New Game Blitz - 2025
- sziku69: Fűzzük össze a szavakat :)
- erkxt: A Roidmi becsődölt – és senki nem szól egy szót sem?
- Hold - SW Heritage - Auto üzemmód
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- MasterDeeJay: Noname 1TB-os SATA SSD teszt
- ubyegon2: Airfryer XL XXL forrólevegős sütő gyakorlati tanácsok, ötletek, receptek
- Gurulunk, WAZE?!
- droidic: YouTube videók és playlistek letöltése GUI-alkalmazással
-
LOGOUT
Új hozzászólás Aktív témák
-
pmonitor
aktív tag
válasz
kovisoft #15598 üzenetére
Először is szeretnék elnézést kérni Tőled a múltkori miatt. Tudod miről van szó, de itt nem írhatom le, mert megint 1 7 pihenőre küldenének. Mindenesetre az látszik, hogy aki kódot ad, ő nem összehasonlítható a többiekkel. És még most is agyaltál rajt. Köszönöm.
Nagyon jelentősen gyorsítottál a kódon. Az eddigi leggyorsabb ~34 sec. után a Te kódod ~13 sec alatt végzett a megszokott karakterlánccal(mert átalakítottam a kódod. int helyett karaktertömböt permutál). Ezek után a megszokott karakterlánchoz hozzátettem egy darab 'a' karaktert. Az így módosított kód C#-ban 30.6 sec. alatt futott le. A C-ben pedig 26.6 sec alatt. Itt "csak" 4 sec. a különbség a C és a C# között a C javára. Érdekes, hogy láthatod mennyivel gyorsabb a kódod, mégis "csak" 1 karaktert tudtam a végére tenni a karaktertömbnek, hogy emberi idő alatt lefusson. Ez is mutatja a feladat nehézségét.
Az egészet Itt meg tudod nézni.Nagyon szépen köszönöm a segítséged.
Szerk.: megnéztem még 1 karakterrel 3 perc alatt fut le C-ben.
-
Livius
őstag
válasz
pmonitor #15594 üzenetére
Jelenleg az igazi programozók ilyeneket használnak kb (nálunk legalábbis ez ami kell multicégnél): C#, C++, python, Matlab (C-ét pedig defaultból mindenki tudja, de nem ez a fő nyelv, ami kell)
C#-ban igen, tudsz használni C-és dll-t, de javaslom ezen a koncepciódon még alakíthatnál. Azzal, hogy Te magadnak írsz egy C dll-elt és 200 ms-vel lettél gyorsabb a C# eredeti MS-es megoldásához képest azt még igencsak a hajadra kenheted.
Ha még ezen a vonalon akarsz csiszolni, hogy a matematikai eljárások a lehető leggyorsabbak legyenek, úgy hogy adott esetben a C#-ból egy külsös nem .Net-es dll-ből egy sokkal gyorsabb implementációt használsz, akkor ajánlom figyelmedbe a BLAS és LAPACK szintű átportolását az Intel-nek, Intel oneAPI Math Kernel Library.
Előfordulhat hogy ez csak az Inteles gépeken fog működni, kb csak a Core 2 Duo és annál újabb CPU-kon, de jelenleg ennél optimálisabb numerikus lib nincs C/C++-ban szerintem (párhuzamosított vektor/mátrix művelteket alapból tudja), amit egy C# alatt tetszőlegesen használhatnál is. -
kovisoft
őstag
válasz
pmonitor #15586 üzenetére
Említetted az ismétléses permutációt, az előző kódomat egy kis módosítással alkalmassá tehetjük ezeknek az előállítására is. Csupán ki kell cserélni a < és > jeleket <= ill. >=-re, hogy a megegyező elemeket is átugorják a ciklusok. Valamint a tömb inicializálásakor fel kell sorolni ismétlésekkel együtt növekvő sorrendben az elemeket (ha mindegyik elem különböző, akkor visszakapjuk az ismétlés nélküli permutációt). Valahogy így:
int a[] = {1,1,2,2,2,3};
int n=6;
...
// megkeressuk, hol kezdodik az utolso monoton csokkeno reszsorozat
for (i=n-2; i>=0 && a[i]>=a[i+1]; i--);
...
// a csokkeno reszsorozat elotti elemet ki kell cserelnunk a reszsorozatban nagysag szerint rakovetkezovel
for (j=n-1; a[j]<=a[i]; j--);
...Ennek a sebességét sem teszteltem, nem tudom, hogyan viszonyul más módszerekhez.
-
Ispy
nagyúr
válasz
pmonitor #15594 üzenetére
Szerintem az egész melyik az igazi meg nem felvetésed egy baromság, mindegyiknek van előnye meg hátránya, a megfelelő feladathoz a megfelelő nyelvet kell választani. Persze más ha az ember csak programozgat, meg más amikor a munkájától függ sok-sok másik cég, ember munkája. Meg persze pénzt is kéne vele keresni, ami kb. azt jelenti, hogy a lehető leggyorsabban tud a legjobb minőséget előállítani, az hogy a user a gép előtt 2 mp-et vár valamire vagy 10-et az nem igazán szempont.
-
martonx
veterán
válasz
pmonitor #15587 üzenetére
Hm, most jól értem, hogy ez a C# játékszer, és a C mennyire hasít, ezen bődületes nagy eltérések alapján lett kijelentve?
C# C
n=13 23s 14s
n=15 330s 200sAkkor mondanám, hogy a C#-hoz képest a C hasít, és rohanjunk minél több, mindent C-be átrakni, ha tizedannyi idők alatt végezne.
Egyébként az is kérdéses, hogy a C#-ot mennyire mesterien optimalizáltad, minden struct és span<T>-e benne, meg ilyesmik.
A fentiekkel nem azt akarom bizonygatni, hogy a managed kód nem lassabb, mint egy natív kód, mert az butaság lenne, csak arra akartam rávilágítani, hogy a talán helyes eredményeidből, levont következtetésed helytelen: "C# játékszer a C-hez képest". -
pmonitor
aktív tag
válasz
Livius #15593 üzenetére
Nem megyek el dolgozni 1 multihoz sem, mert én nem vagyok programozó, csak programoz(gat)ok. Ezen kívül teljesen igaz, amit írsz, szóról-szóra. Viszont attól a C# nem fog begyorsulni(főleg, ha ragaszkodik valaki az OOP-hoz). Egyébként én azt az utat szoktam választani, hogy ha valamit nem tudok megoldani(vagy kritikus helyen lassú) C#-ban, akkor C/C++-ban készítek 1 natív .dll-t, és azt használom a C# programommal. Ilyen pl. ez a programom is. Ugyanis egy másik alkalmazásnak nem minden adatához enged hozzáférni .Net-ben. De a fő programom C#-ban készült. A C# nagy előnye, hogy nagyon sok mindent meg lehet csinálni 1-2 kattintással, meg hogy áttekinthetőbb kódot lehet benne írni. De ez a sebesség rovására megy. Assembly és C esetén meg pont fordítva van.
@Ispy: Fordítsuk meg a dolgot: szerinted az igazi programozók csak C#-ban programoznak? De a tény az tény.
-
Livius
őstag
válasz
pmonitor #15587 üzenetére
Javaslom kezdj el dolgozni valami szoftveres multicégénél, és akkor egyből rájössz, hogy ha tegnapra kell valamit megcsinálni, akkor manapság az már nem fér bele, hogy C-ben Win32 API-val mindent a legalacsonyabb szinten csináljunk meg 4 év fejlesztés alatt, amikor ugyan az sokkal átláthatóbb kódolással, 3 hónap alatt kész van C# WPF-ben egy Windows 10 cél platformra fejlesztve. És itt most egy korszerű sok-sok magot kihasználó multiprocessinges progira gondolj GUI-val és mindennel, ne a command line szintű használhatatlan user-interfaces DOS korszakos programra.
-
pmonitor
aktív tag
válasz
kovisoft #15584 üzenetére
Megnéztem az eredeti kódod C-ben. Itt n=13 esetén ~14, n=14 esetén ~200 sec. alatt fut le. Mint az oldalamra is írtam, azért a C# játékszer a C-hez képest.
-
pmonitor
aktív tag
válasz
kovisoft #15584 üzenetére
Átírtam C#-ra a kódod. Ez nagyon hasít! Az én kódom, meg az egyetemi jegyzetben szereplő algoritmus n=12 esetén eljátszik vele 80 sec-ig, a Tied végez vele ~2 sec alatt. A Tiéd n=13-at megcsinálja 23 sec alatt. n=14-et 5.5 perc alatt. Miért van az, hogy egyetemi jegyzetben is az ócska kód szerepel? Ha 1 ilyen hasító kódot valaki meg tudna írni ismétléses permutációra, ő elég nagy számokra meg tudná oldani a hátizsák problémától kezdve az 1D vágás problémáján keresztül sok mindent!
@K1nG HuNp: légyszíves keress nekem egy robosztus, teljesen tesztelt open source libet, ami tobbet is tud jobban kovisoft kódjánál.
Egyébként hasonlítsd össze a te postodat és kovisoft-ét. Szted melyik ér többet? És érdekes, kovisoft is i, j-t használ.
-
axioma
veterán
válasz
pmonitor #15582 üzenetére
En egy dolgot megneztem benne: mar amikor nekem tanitottak a "tiszta" rendezesi algoritmusokat, akkor mondtak hogy a valosagban nem ilyet hasznalnak (letezo library-k), hanem egy kevert algot: ha a hossz ma'r <=5, akkor a rekurziv hivas koltsege tobb, mint az nlogn es n^2 kozotti kulonbseg, ezert azokat a darabokat egy sima buborekkal/kivalasztasossal vagy barmi ilyesmivel lerendezik, es csak felette jon a felezes. Ha szeretsz ilyenekkel jatszani, probald ki. Azota lehet hogy van tobb mas trukk is.
Amugy a mar leglevo algoritmusoknal celhoz kototten tudsz jobb algoritmust irni (felteve ha nem annyira altalanos hogy van ra lib), vagyis ha barmi tobbet tudsz az adataidrol. Peldaul ha csupa 1000 es 10000 kozotti szamok 10ezres nagysagrendben (adatbazisban amcsi iranyitoszamok volt a pelda, az me'g egy kb. 80-as evekben irt konyvben), akkor jobban jarsz ha egy masik tombben megszamolod melyikbol mennyi van/bevodrozod hogy hol (indexek), es utana vegigfutsz rajta vissza-flatten-elni, igy van linearis megoldas.
-
kovisoft
őstag
válasz
pmonitor #15582 üzenetére
Még régebben írtam egy rövid függvényt, ami kiírja a N szám permutációit rendezett formában. Most sehol sem találom, de emlékeim alapján megpróbáltam újra lekódolni C-ben:
int a[50];
int n=5;
int i, j, temp;
// az 1 2 3 ... n sorozatbol indulunk ki
for (i=0; i<n; i++)
a[i] = i+1;
for (;;)
{
// kiirjuk az aktualis permutaciot
for (i=0; i<n; i++)
printf("%d ", a[i]);
printf("\n");
// megkeressuk, hol kezdodik az utolso monoton csokkeno reszsorozat
for (i=n-2; i>=0 && a[i]>a[i+1]; i--);
// ha a teljes sorozat monoton csokkeno, akkor vegeztunk
if (i < 0)
break;
// a csokkeno reszsorozat elotti elemet ki kell cserelnunk a reszsorozatban nagysag szerint rakovetkezovel
for (j=n-1; a[j]<a[i]; j--);
temp=a[i]; a[i]=a[j]; a[j]=temp;
// tovabbra is monoton csokkeno a reszsorozatunk, forditsuk meg, hogy monoton novekedo legyen
for (j=i+1; j<n+i-j; j++)
{
temp=a[j]; a[j]=a[n+i-j]; a[n+i-j]=temp;
}
}Nem teszteltem a sebességét, nem állítom, hogy ez a létező leggyorsabb módszer, de viszonylag rövid és egyszerű. Egyébként most, hogy jobban megnézem, ez majdnem az a módszer, mint amiben a quicksort van. Az igazat megvallva soha nem értettem, hogy miért kell itt meghívni egy quicksortot, hiszen amikor ide érünk, akkor a sorozat vége már rendezve van, csak éppen csökkenő sorrendben, tehát elég szimplán megfordítani.
-
pmonitor
aktív tag
válasz
pmonitor #15559 üzenetére
Ezen az oldalon elkészítettem a permutációk, kombinációk és a variációk kódjait/tesztjeit is. Aki tud valamelyiknél hatékonyabb kódot(vagy algoritmusra mutató linket), őt kérem, hogy ossza meg velünk.
-
dabadab
titán
válasz
K1nG HuNp #15580 üzenetére
Semmi gond, ha elég sokat magyarázom, akkor lehet, hogy a végén én is megértem
Alapvetően read-only lesz, szóval az a terv, hogy ami adat kell, azt beolvasom a memóriába és utána már csak azzal dolgozom, szóval a REST onnantól kezdve tulajdonképpen játszik.
Akkor tulajdonképpen azt mondod, hogy ne aggódjam túl a dolgot?
-
K1nG HuNp
őstag
válasz
dabadab #15565 üzenetére
ne haragudj de továbbra sem értem a dolgot. Ha egy API-ról szedi bármilyen frontend megoldás az adatokat akkor nem tudsz gyorsabb lenni a http kéréseknél, vagy itt most nem apival dolgoznál hanem valami lokális fájlokkal?
Meg amúgy optimistic UI, Reactben nagyon gyakori pattern az, hogy az user interakciókra frontenden azonnal válaszolonk, a frontend oldali cache-t mutáljuk pontosan úgy mint ahogy azt tennénk amint visszajön a 200as http valasz, viszont közben paralell elküldjük a http kérést is. Ergó arra optimalizálunk hogy minden küldött kérésünk 200al tér vissza és ebben az esetben teljesen 0ra visszuk le a valaszidot..
Nem latom hogy a flutter most miert jobb vagy..? Ha valami akkor bloated szar es 16 megas frontend oldali bundlejeid lesznek, nekem egy macbookon laggol a belinkelt oldal ..Szoval hogy nem teljesen vagom a koncepciodat es ha gondolod irhatsz meg rola, de ezek a megoldasok ha nem nezzuk az elso betoltest (ahol szamit a bundle size) akkor pontoan olyan gyorsak, marmint itt konkretan sub nanosec browser re-renderekrol beszelunk..
-
dabadab
titán
Hát akkor jön a puding, meg a próbája.
Aztán ha mégsem válik be, akkor B tervnek ott a svelte, az is tök jól néz ki.
Köszi mindenkinek a tanácsokat!
-
dabadab
titán
válasz
K1nG HuNp #15564 üzenetére
Néhány ezernyi számla listában, bennük kb 5-10 sor, ezek között kellene navigálni, kinyitni, becsukni, osztályozni, szűrni, kipipálni, ilyenek
És gyorsaság alatt nem a mostani mobilok gyorsaságát értem, ahol 100-200 ms után történik valami, addig meg eljátszik az átmenetekkel, hanem a hardcore, 386-oson futó Foxpro stílust, ahol az ember nyom egy gombot és a következő frame-en már megtörtént
-
-
dabadab
titán
REST API-ra csinálok egy webes felületet, ami elég sok adatot kezel. Dolgozáshoz lesz, vagyis elsődleges szempont az, hogy gyors legyen és mindent meg lehessen csinálni csak billentyűzettel.
Mit javasoltok hozzá? (Angularral van tapasztalatom, de az ilyesmihez túl nagy késleltetést produkál)
-
pmonitor
aktív tag
Igazából ide írom, mert általános algoritmus(ok)ról van szó. És keveredik az oktatással is. Az ismétléses permutáció algoritmusát ez alapján csináltam meg. A napokban próbáltam optimalizálni. Míg végül a C# topic-ban joysefke ezt a linket adta meg. Ez egyszerűbb is, és kb 4-5-ször gyorsabb.
Az első könyv egy egyetemi jegyzet. Ebben kevéssé érthető és sokkal lassabb algoritmus van. Egy kicsit merész kijelentést teszek ezzel kapcsolatban. Mégpedig azt, hogy lehet csodálkozni, hogy az egyetemeken a nem gyakorlati(hatékony) dolgokat oktatják. Ezért sztem nem lehet csodálkozni, hogy amikor a nebulók kikerülnek az 'oskolából, akkor gyakorlati tudásuk zéró. Nektek mi a véleményetek ezzel kapcsolatban?
Egyébként az ismétléses permutációval kapcsolatos teszteket itt meg lehet nézni. -
t256
őstag
Köszönöm Mindenkinek!
Mindkét megoldás nagyon jó. Nem is bonyolult, igazából adja magát csak nekem nem áll rá az agyam. -
kovisoft
őstag
Azt is csinálhatod, hogy az eredeti megoldásodat annyiban módosítod, hogy a bekertSor és bekertOszlop értékadást ismételgeted, ha olyan értékeket kaptál, hogy az adott helyen a jatekter-ben van már valami. Pl.:
int bekertSor;
int bekertOszlop;
do {
bekertSor = rnd.Next(0, 3);
bekertOszlop = rnd.Next(0, 3);
} while (jatekter[bekertSor, bekertOszlop] != '_');Itt lehetne ugye végtelen ciklus akkor, ha már minden mező ki van töltve (vagy ha annyira rossz a véletlenszám-generátor, hogy bizonyos kombinációt soha nem dob ki). A korrekt megoldáshoz ezt az esetet is le kellene kezelned valahogy (pl. megnézed, van-e még egyáltalán üres mező, vagy csak szimplán kilépsz kellően sok lépés után, stb.).
De mivel ez egy beadandó, és a legegyszerűbb megoldás elkészítése is gondot okoz, ezért szerintem a korábbi értekezést a tökéletes megoldásról most javarészt figyelmen kívül hagyhatod, feltéve, hogy nem hívod meg a függvényedet azután is, hogy már betelt a jatekter. De azért nem árt, ha tisztában vagy ennek a megoldásnak a buktatóival.
-
Drizzt
nagyúr
Ez nem lesz jó:
else { jatekter[bekertSor+1, bekertOszlop+1] = jel; }
, mert oda kellene figyelned arra, hogy nehogy a 4. sorba, vagy 4. oszlopba próbáld rakni a jelet.
Legegyszerűbb, ha meghívod újra a egyJeletVeletlenLerak függvényt, rekurzívan. Ezzel azt érnéd el, hogy amikor már foglalt helyet választott ki, akkor megpróbál egy másikat választani helyette.
(Amúgy nem eleve 3 X - 2 O-t, vagy 3 O - 2 X-et kellene lerakni? Ez így eléggé "cinkelt" amőba lesz.) -
t256
őstag
válasz
Drizzt #15539 üzenetére
Köszönöm a sok sok választ!
Szóval a "jatekter" egy for ciklussal fel van töltve. Minden sorban és oszlopban '_' van.
Elvileg elég lenne ennyi:
static void egyJeletVeletlenLerak()
{
int bekertSor = rnd.Next(0, 3);
int bekertOszlop = rnd.Next(0, 3);
char jel = rnd.NextDouble() > 0.5 ? 'X' : 'O';
if (jatekter[bekertSor, bekertOszlop] == '_')
{
jatekter[bekertSor, bekertOszlop] = jel;
}
}
?Beleraktam egy elágazást, ami megvizsgálja, hogy a tömb indexének értéke '_'-e, ha igen tovább megy. Így is elég ritka esetben rak le 5 jelet. Ahol nem talál '_' karaktert, ott egyszerűen kihagyja?
Kéne egy else ág, ami megmondja, hogy mit csináljon, ha 'O' vagy 'X' jel van ott? Pl, rakja a sorban következő indexbe. Ezt, hogy fogalmazom meg programnyelven?else { jatekter[bekertSor+1, bekertOszlop+1] = jel; }
?Szeptember óta tanulom ezt munka mellett. Nehezen érzek rá a logikára.
-
kovisoft
őstag
válasz
dabadab #15551 üzenetére
Erre a véletlenszám-generátorra gondolhatott.
-
Silεncε
őstag
válasz
bandi0000 #15549 üzenetére
Én is ezen gondolkoztam, de ez meg tárhelyben sok (+ egy csomó időt elvesz a lista menedzselése)
A leggyorsabb az, amit axioma ír (Knuth), meg gondolom bambano is arra gondol (nem magamtól vagyok ilyen okos, hogy rájöttem (bárcsak), csak axioma korábbi kommentje után utánakerestem
)
-
dabadab
titán
válasz
bambano #15548 üzenetére
nagy mátrixot elég gáz lehet tárolni egy ilyen feladatra...
Nyilván vmi sparse reprezentációban.
a probléma még mindig az, hogy gagyi véletlenszámgenerátor esetén nem tudod kizárni a végtelen ciklust.
Ez az, ami tényleg teljesen elméleti kérdés. Azt lehet mondani, hogy nincs garancia a válaszidő nagyságára, de végtelen ciklustól tartani az nem igazán életszerű.
-
axioma
veterán
válasz
bambano #15548 üzenetére
Nekem szolt a matematikusok szapulasa, nyugi...
Az n darab elem veletlenszeru sorrendje linearisan? Az siman megtalalhato neten bar en magyarul mar nem keresek ilyet. Te talan a Knuth konyvtre gondolsz, nem?
Gagyi veletlenszam-generatort meg sztem inkabb nem hivunk veletlenszam-generatornak [de annyira ga'zos me'g a szinuszos se hiszem hogy tud lenni hogy folyamatosan a 8/9-edbol valaszt]. -
bandi0000
nagyúr
Nekem eszembe jutott egy olyan, hogy elindul a játék, és legenerál egy listàt, ahol az egyes elemek 1-1 kockàt reprezentàlnak sor, oszlop vàltozóval
Amikor le kell rakni egy jelet, akkor csak generál egy indexet 0 és a lista mérete közt, kiveszi az elemet, és aztàn törli a listából, csak annyit kell vizsgálni, hogy nem üres-e a lista
Persze nem biztos, hogy jó megoldás, csak eszembe jutott
-
bambano
titán
válasz
dabadab #15547 üzenetére
elhiszem, hogy az elméleti matematikusok rossz megmondóemberek (miért is, bármit meg tudnak mondani
), én nem vagyok elméleti matematikus, úgyhogy nem tudom.
szerk: nagy mátrixot elég gáz lehet tárolni egy ilyen feladatra...
a probléma még mindig az, hogy gagyi véletlenszámgenerátor esetén nem tudod kizárni a végtelen ciklust. mondjuk a linux kernel azt is lefuttatja
/azóta is töröm a fejem, hogy ki írta a könyvet, amiben a helyes megoldás van... ha eszembe jut, megírom/ -
dabadab
titán
válasz
bambano #15545 üzenetére
Ilyenkor látszik, hogy az elméleti matematikusok miért rossz megmondóemberek, ha valamit ténylegesen meg is kell csinálni
Egyrészt az ordó nem fordul le automatikusan gyorsabbra - adott feltételek között egy O(n^2) algoritmus simán gyorsabb tud lenni, mint akár egy O(1).
Nagy mátrixnál, amiben kevés elem van, a random lerakás + ellenőrzés szinte biztosan gyorsabb lesz, mintha az ember szépen eltárolgatná a szabad helyeket és azokból választana.
-
axioma
veterán
válasz
bambano #15545 üzenetére
Abban jogos, hogy n db elemet siman veletlenszeru sorba rakhatsz linearis idoben, es utana azt csak yield-eled, de ez nekem ebben a helyzetben fura megoldas lenne, inkabb gondolnam ugy hogy a "felig kitoltott" kialakulasarol nem tudunk csak kapjuk (elerjuk), ide kell egy veletlenszerut adni. Bar persze ki tudja mire gondolt a kolto, a bekeros fuggvenyt kell megoldani, vagy az eredeti problemat akarmilyen tervezessel. Mas iranybol gondolkodtunk (en az eleve minel kisebb belenyulas az eddigi megoldasba menten), ennyi a sztori.
-
axioma
veterán
válasz
bambano #15542 üzenetére
En azert elfogadnam, nem csak mint beadandot hanem 9-nel mint ipari megoldast is.
Persze ertem en, hogy 9,8,... -bol veletlen valasztasa es i. ures keresese (nagy szamoknal kulon listabol, itt en csak elolrol szamolnam hanyadik ures) kevesebb valasztas, ellenben mezok szamara nezve negyzetes egybol az algo (most hadd ne szamoljam ki hogy mennyi veletlen valasztasbol lesz varhato ertekben feltoltve a 9 mezo...) -
Drizzt
nagyúr
Kétféle megoldás kapásból van:
1. Kiindulási állapotban a mátrixot töltsd fel valami olyan jellel, ami azt jelzi, hogy ott nincs még lerakva semmi. PL. legyen az egy 'S' karakter. Akkor amikor egy jelet leraknál egy mezőre, csak akkor teheted meg, ha ott még S van. Ha nem, akkor új pozíciót kell választani. Ezt lehet meg is úszhatod, mert progamnyelvtől függően lehet az adott terület már eleve valamilyen karakterrel végig fel lesz töltve. De jobban jársz, ha explicit feltöltöd valamivel.
2. Egy halmazban - amiben párok vannak - eltárolod, hogy hova raktál eddig jelet, a kisorsolt pozíciót ellenőrzöd, hogy foglalt-e már. -
t256
őstag
for (int i=0; i<5; i++;
{
egyJeletVeletlenLerak();
}static void egyJeletVeletlenLerak()
{
int bekertSor = rnd.Next(0, 3);
int bekertOszlop = rnd.Next(0, 3);
char jel = rnd.NextDouble() > 0.5 ? 'X' : 'O';
jatekter[bekertSor, bekertOszlop] = jel; }Sziasztok!
A fenti kód egy részlet egy amőbás játékból. Itt annyi a lényeg, hogy a "jatekter" nevű 3x3-mas mátrixba az "egyJeletVeletlenLerak" metódus véletlenszerűen lerak egy 'X' vagy 'O' jelet.Házi feladatként kaptam, hogy annyi jelet rakjon le, amennyit beállítottunk. Mivel a progi nem ellenőrzi le azt, hogy egy adott indexen már van-e jel, ezért (gondolom én) felülírja.
Légy szíves vezessetek rá valahogy a megoldásra. A Google keresés ötletekből kifutottam.
Szerintem a megfelelő helyre kéne egy for ciklus, azon belül egy feltétel, ami ellenőrzi, hogy az adott indexen van-e már jel. Sajnos nem jövök rá, hogy milyen feltételt kéne megadnom. Esetleg kéne valami segédváltozó? Nincs ötletem.A segítséget előre is köszönöm!
-
pelyib
tag
válasz
K1nG HuNp #15536 üzenetére
Ha jol ertem ezt te fogod uzemeletetni, tehat szerzodes (SLA) alapjan lesz egy rendelkezesre allasi ido. 7/24ben. Kerdes, h neked megeri "8 dodo"-ert ez havonta. Szoval a nagy kerdes, h tuladjon keppen mit es hany oraban vallasz ezert a penzert.
Fotos temaban hallotam, de szerintem ez itt is igaz: arba bele lehet azt is kalkulalni, h a megrendelonek ezzel megkorra bevetelt fogsz generalni.
(alkalmazott vagyok, voltam vilag eletemben, igy olvasd a valaszom
-
K1nG HuNp
őstag
csőröge, csak egy kis szubjektív véleményt szeretnék kérni tőletek. életem első freelance devként épített webes platformját csinálom éppen és arra lennék kiváncsi, hogy ti mennyit fizetnétek a saját platformotokért havi díjként?
nem árulok a megrendelőnek zsákba macskát, minden aws-en fut és a legnagyobb havidíja az elasticsearch clusterünknek van ami sok más dolog mellett egy extenzív keresés funkciót szupportál. emellett végtelen email küldés, cloudfront, lambda és minden jó.
Havi 60 dodó soknak hangzik, úgy hogy ez garantált ár és 2 év mulva is ennyi lesz, emellett százezres user base alatt sem fog köhögni? És akkor így én nyerek rajta nemtudom havi 8 dodót
-
kovisoft
őstag
válasz
Weareus #15534 üzenetére
Ha a címszavak mindig a sor elején vannak, és amennyiben több címszó van egy sorban, úgy mindig vesszővel vannak elválasztva, akkor a Domonkos által javasolt cserét lehet úgy módosítani, hogy csak az olyan szóköztől kezdje a törlést, amit nem előz meg egy vessző:
Find: ([^,]) .*$
Replace: \1 -
Weareus
addikt
Újfent köszönöm.
Van még pár finomítandó dolog, de ezek már menni fognak, pl. vannak egy sorban olyan címszavak, amelyek kétféleképpen szerepelnek és vesszővel vannak elválasztva, pl abisszális, abisszikus.
De ez már menni fog. -
Domonkos
addikt
válasz
Weareus #15532 üzenetére
Nincs notepad++-om, hogy ki tudjam probalni, de a
.*$
csereje az ures stringre meg kell hogy oldja. (igen, az ott egy space a pont elott)Persze itt is jatszik, hogy megnyitod tablazatkezelovel, hogy a space az elvalasztokarakter es torolsz minden oszlopot, ami nem kell...
-
Weareus
addikt
Siker!
Így néz ki Notepad++-ban:
abiotrófia G orv a sejtek életképességének idő előtti elvesztése
abiózis G biol élettelenség
abirritáció G orv ingertelenség, az ingerek hiánya
abisszális G geol mélytengeri, a tengerfenéken található
abisszikus G geol mélyen fekvő, földmélyi
abituriens † G érettségis, érettségiző diák
abitúrium † G érettségi vizsga
abjudikáció G jog törvény előtti megtagadás
abjuráció G vall megtagadás, visszavonás
abklatsch [abklacs] G nyomd dúcmásolás
abláció G geol a föld felszínének mállása, kopása a szél és víz munkája által
ablaktáció G orv szopós csecsemő vagy ...
Már csak az első szavak kivételével törölni kell mindent.
Ez már menni fog!
Ezer hála mindenkinek. -
Weareus
addikt
válasz
kovisoft #15529 üzenetére
Köszönöm a tippeket.
Szerkezetileg így néz ki:G vall a püspök megbízottja az egyházi bíróság elé tartozó ügyekben
lat archidiaconus ‘ua.’: lásd ARCHI-, DIAKÓNUS
archidioecesis [arhidiöcézis] G vall főegyházmegye, érsekség
lat ‘ua.’: lásd ARCHI-, DIÖCÉZIS
archidux † G főherceg
lat, ‘ua.’: lásd ARCHI- | lat dux, ducis ‘herceg’, tkp. ‘vezér’ ducere ‘vezet’
archiepiscopus [arhiepiszkopusz] G vall érsek, több püspökséget magába foglaló egyházi terület
feje
lat, ‘ua.’: lásd ARCHI- | episcopus gör episzkoposz ‘püspök’, ered. ‘felügyelő’ episzkopeó
‘felügyel’: epi- ‘rá’ | szkopeó ‘néz’
archigonia G biol ősnemzés
tud lat, ‘ua.’: lásd ARCHI- | gonosz ‘nemzés, szülés’ gennaó ‘nemz’
archimandrita G vall kolostori elöljáró, apát a görögkeleti egyházban
lat, ‘ua.’ gör arkhimandritész ‘ua.’, tkp. ‘főpásztor’: lásd ARCHI- | mandra ‘nyáj, karám’
archipelagus G földr szigettenger, szigetvilág
lat, ‘ua.’ gör arkhipelagosz ‘a görög szárazföld és Kis-Ázsia közötti tenger (a maga számtalan
szigetével)’: lásd ARCHI- | pelagosz ‘tenger’
architektonika G ép a szilárd építészeti szerkezetek művészi kialakításának elmélete
G tud az építőművészet mint tudomány
ném Architektonik ‘ua.’ gör arkhitektón ‘építésvezető’: lásd ARCHI- | tektón ‘ács, építész’
tektainó ‘épít’
architektonikus G az építészettel kapcsolatos
G az építészet formai jegyeit hordozó, mértanilag tervezett (díszkert)
ném architektonisch ‘ua.’, lásd ARCHITEKTONIKA
architektúra G ép építészet, építőművészet
G szerkezet
tud lat architectura ‘ua.’, lásd ARCHITEKTUS
architektus † G építész, építőművész
lat architectus ‘ua.’ gör arkhitektón ‘építésvezető’, lásd ARCHITEKTONIKA
architráv G ép oszlopokat összekötő főgerenda, oszlopkoszorú
ang architrave ol architrave ‘ua.’ lásd ARCHI- | lat trabs, trabis ‘gerenda’
archivál G levéltárba, irattárba helyez hosszabb ideig való megőrzésre
ném archivieren ‘ua.’, lásd ARCHÍVUM
archivárius † G levéltáros
újk lat archivarius ‘ua.’, lásd ARCHÍVUM
archivisztika G levéltártudomány
ném Archivistik ‘ua.’, lásd ARCHÍVUM
archivolt G ép oszlopokat összekötő íves boltozat homlokrésze
ang, ol archivolto ‘ua.’: lásd ARCHI- | ol volto ‘boltozat, ív’ lat volutus ‘hengeres, gördülő’
volvere, volutum ‘forgat’
archívum G levéltár, irattár, okmánytár
lat archivum ‘ua.’ gör arkheion ‘középület, elöljáróság háza’ arkhé ‘uralom, kezdet’
archontológia G tört az elmúlt korok világi és egyházi főbb méltóságainak és tisztségviselőinekto Domonkos: a grep -o -ből a gnu grep jó? És ahhoz le kell töltenem valamit? (Pl. Cygwin).
Win10-es környezetet használok.Ha Notepad++-ban megynyitom, akkor ilyen:
<div style="page-break-before:always; page-break-after:always"><div><p>lat <i>nardus</i> gör <i>nardosz</i> perzsa <i>nard</i> ‘ua.’ <br/><b>nargilé </b>G vízipipa <br/>tör <i>nargile</i> perzsa <i>nárgíl</i> ‘ua.’ szansz <i>nárikela</i> ‘kókuszdió’ (eredetileg ebből készült a ~ <br/></p>
<p>víztartálya) <br/><b>narkoanalízis </b>G <i>orv</i> kábítószeres bódulatban gátlásaitól feloldódott, félöntudatlan beteg <br/></p>Pontosabban ilyen:
[kép]Eddig nem is tudtam, hogy a notepad++- ilyet is tud...
Pl. hogy kezeli a bold betűtípust...Mindjárt rá is nézek akkor, hogy mit lehet...
-
kovisoft
őstag
válasz
kovisoft #15529 üzenetére
Kis korrekció kell, mert így még bennmaradnak azok a sorok, amikben egyáltalán nincs címszó, és aztán nem lehet majd azoktól szétválasztani. Úgyhogy legelsőként az ilyen sorokat kellene törölni (na, ez egyre ocsmányabb kezd lenni
):
0. lépés:
Find: ^(?!.*?</?b>).*$
Replace: (üres string) -
kovisoft
őstag
válasz
Weareus #15527 üzenetére
Ha továbbra is Notepad++-ban akarod megoldani, akkor olyan reguláris kifejezést kell használni, ami pl. a </b> és <b> közötti részeket kitörli. Kérdés, hogy egy sorban lehet-e több címszó? Ha lehetséges, akkor szükség lehet több lépésre:
1. Lecserélni egy sortörésre egy adott soron belül az előző címszót záró </b> és a következő címszót kezdő <b> közötti akármit (lazy ? operátor kell, nehogy a köztes <b>-k is törölve legyenek):
Find: </b>.*?<b>
Replace: \n2. Ugyanaz, mint az előbb, csak a sor elejétől a kezdő <b>-ig, és sortörés sem kell:
Find: ^.*?<b>
Replace: (üres string)3. Ugyanaz, mint az előbb, csak az utolsó </b>-től a sor végéig, és itt sem kell sortörés:
Find: </b>.*?$
Replace: (üres string)Szerk: Feltételeztem, hogy a bold szöveg <b>címszó</b> formában van a file-ban, de természetesen más markuppal is hasonlóan megy a dolog.
-
Domonkos
addikt
válasz
Weareus #15527 üzenetére
En innen
grep -o
-val mennek tovabb. - nem tudom, hogy a te OS-eden ennek mi a megfeleloje. Igazabol jo lenne latni is a mostani allapotot, legalabb a relevans resznek egy reszletet.Html-t akarmilyen szovegszerkesztovel meg tudsz nyitni. Ha az sikerul, akkor a<b>
es</b>
tagek kozti reszek lesznek szamodra erdekesek. Ezeket kellene majd kivagnod.
Sry. Ezzel teljesen becsaptalak volna. -
Weareus
addikt
Hát ez jó. Közben rájöttem, mire képes a technika... A telómról feltöltöttem újra az online konverterre a lexikont, és az outputnál kiválasztottam a html-t, majd le is töltöttem a kész fájlt.
Hibátlan. Alkalmasint az már a libreofficeben is látszott, hogy a bold az tényleg bold. Úgy értem belekattintva benyomódott a formázó panelen a "b". A törzsszöveg "sima." Mindez a html-dokumentben is gyönyörűen látszik.
Hogyan tovább?Szerk. A tag-eket hogy tudom megnézni, ill. melyik html-kezelő progi javasolt?
-
Weareus
addikt
Ma este (ha hazaértem) rálesek. -
Weareus
addikt
Győzelem! Sikerült egy online konverterrel áttenni pdf-ből rich text formátumba az 1700 oldalas lexikont. LibreOfficeben kicsit lassan, de meg lehet nyitni.
Itt jól láthatóan elkülönülnek a címszavak (félkövér) a törzsszövegtől.
Most kellene egy jó kis script v. parancs arra nézve, hogy a bold szöveget ki lehessen szedni. (txt-be v. bárhova).
Ebben kérek segítséget. -
Weareus
addikt
válasz
kovisoft #15522 üzenetére
Köszönöm.
Közben rátúrtam, találtam is angol fórumokon pár teljesen hasonló kérdést. A válaszok ott sem voltak túl bíztatóak. Tkp. ahogy írod is valami olyasmi helyzet van, hogy ha egy pdf-ben valami félkövérnek látszik, az még nem biztos, hogy valóban "félkövér."Nem baj, mára ennyi haladás elég volt.
A kis parancssorocskákat el is mentettem a többi közé.Köszönöm a segítséget.
-
kovisoft
őstag
válasz
Weareus #15520 üzenetére
A pdf értelmezésében nem nagyon tudok segíteni. Talán a Ghostscript tud olyat, hogy pdf-et valamilyen más szövegformátumra konvertál, esetleg olyanra is, ami megőrzi a betűtípust. A pdf-fel ugyanis az a baj, hogy nem egy markup language, és talán úgy lesz félkövér valami, hogy más (félkövér) font-tal kell az adott szövegrészt renderelni. Nincs benne olyan, mint mondjuk html-ben a <b>...</b>.
Ha előáll egy olyan szövegfájlod, amiben valamilyen szabályszerűség alapján el lehet dönteni, hogy mi tartozik a címszavak közé, akkor arra lehet kreálni egy reguláris kifejezést. A pdf részt viszont passzolom.
-
Weareus
addikt
szerk.:
Boxot = Boxoft... -
Weareus
addikt
válasz
kovisoft #15518 üzenetére
Klassz, működik.
Van egy másik kérdésem még...
Van egy pdf-fájl (multi-layer).
Ez tkp egy ingyen letölthető netes" idegen szavak szótára".
Címszavak és meghatározások.
Létezik olyan metódus, amivel csak a címszavakat ki lehet szedni?
Az egyetlen megkülönböztető jegy, hogy minden címszó félkövér, a többi betűszedet nem.
Vannak online konverterek, ezekkel próbáltam átkonvertálni, de közel 2000 oldal, szóval kifeküdtek tőle...
Letöltöttem a Boxot PDF to text free konvertert, ezzel sikerült megcsinálni a konvertálást, de a kapaszkodó (félkövér betűk) el is tűnt.
Létezhet valami megoldás erre? -
kovisoft
őstag
válasz
Weareus #15517 üzenetére
Természetesen
ezt is meg lehet oldani reguláris kifejezésekkel. Első lépésként minden sor elejére beteszünk jó sok szóközt. Pl:
Find: ^
Replace: (jó sok szóköz, nem írom ide, mert úgysem látszik)Második lépés: minden sornak csak az utolsó N db karakterét hagyjuk meg. Pl. N=20 esetén:
Find: ^.*(.{20})$
Replace: \1Ez az utolsó 20 karakterből csinálja az 1. számú csoportot, és csak ezt hagyja meg a sorban.
Ha a szólistában lennének a szavak végén kóbor whitespace karakterek, akkor lehet úgy módosítani, hogy azokat is szedje le.Ezután lehet rendezni a sorokat (Edit/Line Operations/Sort Lines Lexicographically). Majd a végén le lehet szedni a fölösleges szóközöket a szavak elejéről:
Find: ^ *
Replace: (üres string) -
Weareus
addikt
To Domonkos:
. Ez meg is oldotta. Akkor neked volt egy sejtésed arról, hogy ez a szöveg egy táblázatból lett kiszedve...
Neked is nagyon köszönöm.
Épp most ismerkedem a NP++ `parancssoraival`, amiket leírtál, az még nagyon hasznos lesz. Ezer hála.Bedobnék még egy kérdést.
Egy olyan szólista esetében, amely egy sorban egy szót tartalmaz lehetséges-e a szóhossz szerinti sorbarendezés?
pl. először kétbetűsek, majd hárombetűsek és igy tovább.
Egy módszert találtam, amikor kijelölik az egész szólistát és mindegyik szó elé beszúrnak jó sok space-t, majd 'varázsolnak' valamit, de ehhez plugin is kell..., és őszintén szólva egyelőre homályos ez a dolog... -
kovisoft
őstag
válasz
Weareus #15514 üzenetére
Ha Notepad++-ban szeretnéd megoldani (vagy bármilyen más szövegszerkesztőben, ami kezel reguláris kifejezéseket), akkor először biztosan kell tudni, hogy milyen szabály alapján lehet megtalálni, hogy meddig tart a szerző és hol kezdődik a mű címe.
Az egyik lehetőség, ha - mint írtad - a kettő között van egy tabulátor. Ekkor egy olyan reguláris kifejezést kell használni, amiben a csoportokat tabulátorok választják el. Pl:
Find: ^([^\t]*)\t([^\t]*)\t(.*)$
Replace: \2\t\1\t\3ahol a Find kifejezés 3 csoportot hoz létre, az 1. a név, ez az első tabulátorig tart, a 2. a cím, ez a második tabulátorig tart, a 3. az utolsó zárójeles rész. A Replace kifejezés pedig felcseréli az 1. és 2. csoportot, és tabulátort tesz közéjük.
Ha nincsenek a mezők tabulátorral elválasztva (mindenhol csak szóközök vannak), akkor nem igazán lehet automatikusan megoldani, hiszen nem tudjuk, hogy az első 2 szó a név, utána kezdődik a cím, vagy az első 3 (vagy akár több) szó a név (mert többnevű a szerző). De ha mondjuk feltételezzük, hogy a legtöbb sor esetében 2 szóból áll a név, akkor arra egy olyan reguláris kifejezést lehet használni, amelyik az első 2 szót rakja bele az első csoportba. Pl:
Find: ^(\S+ \S+) (.*) (\([^()]*\))$
Replace: \2 \1 \3ahol a Find szintén 3 csoportot hoz létre, de most az 1. csoport az első két szó szóközökkel elválasztva, a 2. csoport minden, ami az utolsó zárójeles részig tart, a 3. csoport az utolsó zárójeles rész a sorvége előtt (ugyanis lehet még zárójel a címben is). A Replace itt is felcseréli az 1. és 2. csoportot, de szóközt teszt közéjük.
Sajnos ez utóbbi esetben végig kell majd nézni a szöveget, hogy hol van olyan sor, ahol a szerző(k) neve nem csupán 2 szó.
-
Weareus
addikt
Üdv.
Notepad++-ban kérek kis segítséget szólista csoportos módosításához.A szólista szerkezetileg így néz ki (és igen hosszú...):
Lipták Gábor Amiről a vizek beszélnek (4)
James Dobson Amit a feleségekről tudni kell(ene) (5)
Kaszás György Amit a férfiakról feltétlenül tudni kell (4)
Oprah Winfrey Amit biztosan tudok (3 + 1 átvett idézet)
Mariana Leky Amit csak a szívével lát az ember (10 + 1 átvett idézet)
Mike Greenberg Amit csak akarsz (4)
Brian Tracy Amit ma megtehetsz (3)
Cseh Katalin Amit nem lehet megenni (12)
Sebastian Fitzek Ámokjáték (8)
Neil Gaiman Anansi fiúk (3)
Colin Falconer Anasztázia (4)
Ancsel Éva Ancsel Éva utolsó bekezdései (2)
Ancsel Éva Ancsel Éva összes bekezdése (40)
Krúdy Gyula Andráscsik örököse (4)
Andrew Morton Angelina (3 + 18 átvett idézet)
Kondor Béla Angyal a város felett (2)
Nalini Singh Angyalárny (2)Tehát először szerepel az író, utána pedig a műcím. Nekem viszont pont fordítva kellene hogy legyen. Reményeim szerint az írók nevei és a műcímek között tabulátor(ok) vannak. Ebbe lehetne esetleg kapaszkodni?
Lehet, hogy a cseréhez az kell, hogy a műcímek kezdő betűi egymás alá legyenek rendezve?
Ez talán még megoldható egyesével, bár ehhez is igen sok tabulátort kellene beszúrni.Ebben az esetben az egymás alatt kezdődő műcímeket szelektíven ki
lehet már jelölni?Vagy más módszerben kéne gondolkodnom?
-
pmonitor
aktív tag
válasz
pmonitor #15512 üzenetére
"Error A2026 constant expected include\winextra.inc 11052"
Ezt a hibát írta ki a 11052 és a 11053 sorra a winextra.inc file-ban.
STD_ALERT struct
alrt_timestamp dd ?
alrt_eventname WCHAR [EVLEN + 1] dup (?)
alrt_servicename WCHAR [SNLEN + 1] dup (?)
STD_ALERT endsha kommentbe teszem a következő 2 sort:
alrt_eventname WCHAR [EVLEN + 1] dup (?)
alrt_servicename WCHAR [SNLEN + 1] dup (?)
akkor működik. Csak azt nem tudom, hogy ezt miért nem fogadja el. De az a lényeg, hogy működőképes lett a program. Már ez is műxik.; We access the MangaEden API and request a list of the first 25 available manga. I used a buffer size of 5000, but feel free to modify it.
; I basically learned ASM today, just felt like posting this somewhere.
.386
.model flat, stdcall
option casemap:none
; Includes
include include\windows.inc
include include\kernel32.inc
includelib lib\kernel32.lib
include include\user32.inc
includelib lib\user32.lib
include include\wininet.inc
includelib lib\wininet.lib
WinMain proto :DWORD,:DWORD,:DWORD,:DWORD
; Initialized data
.data
AppName db "GUI App with Buttons",0
ClassName db "Class of GUI",0
ButtonClass db "button",0
ButtonText db "Kattints rám!",0
strTitle db "Cím",0
strMessage db "Hello world!",0
fhwnd dd 0
hwndButton dd 0
.data?
hInstance HINSTANCE ?
CommandLine LPSTR ?
.const
ButtonID equ 1
.code
start:
invoke GetModuleHandle,0
mov hInstance, eax
invoke GetCommandLine
mov CommandLine, eax
invoke WinMain, hInstance,0, CommandLine, SW_SHOWDEFAULT
;invoke MessageBox, 0, ADDR strMessage, ADDR strTitle, MB_OK
invoke ExitProcess, 0
;end start
WinMain proc hInst:HINSTANCE, hPrevInst:HINSTANCE, CmdLine:LPWSTR, CmdShow:DWORD
local wc:WNDCLASSEX
;local fhwnd:HWND
local msg:MSG
mov wc.cbSize, SIZEOF WNDCLASSEX
mov wc.style, CS_HREDRAW or CS_VREDRAW
mov wc.lpfnWndProc, offset WndProc
mov wc.hbrBackground, COLOR_BTNFACE+1
push hInst
pop wc.hInstance
mov wc.lpszMenuName,0
mov wc.lpszClassName, offset ClassName
invoke LoadIcon, 0, IDI_APPLICATION
mov wc.hIcon, eax
mov wc.hIconSm, eax
invoke LoadCursor, 0, IDC_ARROW
mov wc.hCursor, eax
invoke RegisterClassEx, addr wc
invoke CreateWindowEx, 0, \
addr ClassName, \
addr AppName, \
WS_OVERLAPPEDWINDOW, \
CW_USEDEFAULT, \
CW_USEDEFAULT, \
500, \
500, \
0, \
0, \
hInst, \
0
mov fhwnd, eax
invoke ShowWindow, fhwnd, CmdShow
invoke UpdateWindow, fhwnd
.While 1
invoke GetMessage, addr msg, 0, 0, 0
.BREAK .IF (!eax)
invoke TranslateMessage, addr msg
invoke DispatchMessage, addr msg
.ENDW
mov eax, msg.wParam
RET
WinMain endp
WndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
.if uMsg==WM_DESTROY
invoke PostQuitMessage, 0
.elseif uMsg==WM_CREATE
invoke CreateWindowEx, 0, addr ButtonClass, addr ButtonText, \
WS_CHILD or WS_VISIBLE or BS_DEFPUSHBUTTON, \
170, 100, 140, 25, hWnd, ButtonID, hInstance, 0
mov hwndButton, eax
.elseif uMsg==WM_COMMAND
mov eax, wParam
shr eax, 16
.if eax==BN_CLICKED
mov eax, lParam
.if eax==hwndButton
invoke MessageBox, 0, ADDR strMessage, ADDR strTitle, MB_OK
.endif
.endif
.else
invoke DefWindowProc, hWnd, uMsg, wParam, lParam
ret
.endif
xor eax, eax
RET
WndProc endp
end start -
pmonitor
aktív tag
Valaki használta már a visual studioban a beépített assemblert? Ő talán tudna segíteni. Az itt található kódot próbáltam, de az include-oknál error-ozik. Pl.: "Error A1000 cannot open file : masm32includewindows.inc"
Az itt található kódot is próbáltam, de itt is az include-al és az includelib-el van problémája. Masm32-ben működik ez a kód.
Próbáltam azt, hogy a masm32-ből bemásoltam a file-okat, de az sem tetszik neki.
Tehát a kérdésem az lenne, hogy hogyan lehet az include-okat működésre bírni VS-ben? -
válasz
Silεncε #15489 üzenetére
"A tablet mód appok alatt az UWP-re gondolsz, ugye?"
Igen."A hagyományos, asztali módúak meg a Win32"
Igen + natív x64 is.W10 alatt sok ilyen UWP app van, Calculator-on kívül pl. a Mail/Groove/OneNote stb stb. meg számtalan MS Store-os app.
Van egy folyamat (ApplicationFrameHost), ami -többek közt- azért felel, hogy Desktop módban ablakban/keretben jelenítse meg az amúgy UWP app-okat.
Ha bekapcsolod a Tablet módot (olyan gépen is, ami amúgy nem támogatja), akkor pl. a Calculator is teljes képernyőre kifeszülve virít, akármekkora felbontású monitorod is van, míg Desktop módban meg ugye ablakban/keretben fut normális méretben. -
pmonitor
aktív tag
válasz
kovisoft #15484 üzenetére
Elnézést kérek. Tényleg igazad volt. Én ütöttem el a file nevét, vagy nem rendszergazdaként indítottam a keresőt.
Azt hiszem, hogy ami itt történik, azt hívják mutex-nek.
@Silεncε: Neked is igazad volt. Nem a Process.Start() vagy a Createprocess() volt bug-os. Mindenesetre pont beletrafáltam abba a programba, ami másképp működik, mint egy általános program.
Mindenesetre tanulságos volt(és remélem, hogy nem csak nekem). Köszönöm mindenkinek a segítséget.
-
válasz
ValGerald #15506 üzenetére
Igen, matek fakton voltam, de nem emelteztem. Egyetemen viszont semmit nem köszönhetek a faktnak, mindent itt tanultam meg. Analízisból, algebrából és diszkrét matekból sem nyújtott számomra semmiféle előnyt. Egyedül az ötös érettségit köszönhetem neki
Ha Miskolcra jönnél, akkor számíthatsz rám
-
fatal`
titán
válasz
seredy #15496 üzenetére
Parancssor.
Én csak diffhez meg historyhoz használok gui-t, mert lusta vagyok írkálni a fájlútvonalakat
#15498 tboy93: Mint írtam, párhuzamosan használok IDEA-t és VS-t és az IDEA-t messze jobbnak tartom, főként azért, mert stabil és van belőle 64 bites.
A VS-sel alapvetően semmi gond nem lenne, funkcionálisan rendben van (bár R# nélkül vannak hiányosságai bőven), de a 32-bit egy írtó nagy korlát a használhatóságban, nagy solution esetén. Ennek ellenére elvagyok vele, mert kénytelen vagyok VS-sel dolgozni.
-
axioma
veterán
válasz
ValGerald #15506 üzenetére
En ugyan nagyon sok eve, de nemet spec osztalybol (igaz matekverseny meg -szakkor volt, de tananyag az alap matek volt) vegeztem el egy matematikus szakot.
Ettol me'g persze lehet hogy tul neheznek talalod valamelyik szakon a matekot, de az nem abbol kovetkezik, hogy nem adjak le a tananyagot kozep erettsegitol indulva. Na meg ma mar konnyebb hozzajutni sokfele tananyaghoz abban az esetben is, ha valahol lyuk lenne. [En nagyapamnal talalt Obadovicsba neztem neha bele]
-
ValGerald
csendes tag
válasz
RudiLicenc #15449 üzenetére
Igen, pontosan a matek miatt gondolkodtam el a szak miatt, hogy lehet a gazdasági infó egyszerűbb lenne boldogulni, mert a gazdaságot is kedvelem. Amúgy te jártál gimibe faktra, vagy bármilyen előkészítőre matekból?
-
seredy
tag
köszönöm a válaszokat, akkor nekiállok nyüstölni a parancssort!
-
A git egy nagyon szep es logikus modell, elkepesztoen felhasznaloellenes interfesszel. Ezen sajnos az UI sem segit, sot. En nem latom mas modjat a git rendes megtanulasanak, mint az, hogy elolvasod, hogy hogy tarolja az objektumokat.
-
Drizzt
nagyúr
válasz
Silεncε #15499 üzenetére
Pedig azt is eleg jol meg lehet nezni egy jol iranyzott git log - - graph - - all - - oneline-nal.
Szerintem erdemesebb command line, mert az ugyis mindig rendelkezesre fog allni. Masfelol sokkal gyorsabban megvan az eredmenye annak, amit meg akarsz nezni. Mondjuk soha semmit nem grafikus feluleten csinalok gittel, de ez talan megint a masik extremitas.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- exHWSW - Értünk mindenhez IS
- Milyen okostelefont vegyek?
- Kazy Computers vélemények - tapasztalatok
- PlayStation 3
- Motorola Edge 50 Pro - több Moto-erő kéne bele
- Így nézz tévét 2025-ben: új ajánlások, régi szabályok
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Mibe tegyem a megtakarításaimat?
- Google Pixel topik
- Napelem
- További aktív témák...
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RX 7700 XT 12GB GAMER PC termékbeszámítással
- Honor Magic5 Lite 128GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! Gigabyte B760M i5 14600KF 32GB DDR4 1TB SSD RX 6700XT 12GB Zalman Z1 Plus Seasonic 650W
- Használt Intel procik - Core 2 - Dual Core
- Windows, Office licencek kedvező áron, egyenesen a Microsoft-tól - Automata kézbesítés utalással is!
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft
Város: Budapest