- DUNE médialejátszók topicja
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Milyen TV-t vegyek?
- Milyen videókártyát?
- Nem indul és mi a baja a gépemnek topik
- TV antenna és jelerősítés
- Melyik tápegységet vegyem?
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- OLED monitor topik
- Kormányok / autós szimulátorok topikja
-
PROHARDVER!
Új hozzászólás Aktív témák
-
coco2
őstag
válasz
#79484416 #19898 üzenetére
Volt, amikor a "folyamatszervező" egy külön szakma volt, amikor előre terveztek, utána dokumentáltak, és csak utána implementáltak. Azok az idők valamikor a 98-as válság idején múltak el. A dokumentálás volt az első áldozat. A tervezést pedig éppen most cseréli le az agile.
-
válasz
Vision #19895 üzenetére
Abszolut igazad van, hogy nem erthet mindenki mindenhez, en igazabol azt nem szeretem, amikor emberek eltologatjak maguktol a megtanulando dolgokat, mondvan h 'nem az en dolgom'. Tehat szerintem egy jo BA-t alapvetoen erdekli a technologia es valamennyire konyit is hozza, csak nem az a fo felelossegi kore, vagy mittudomen, egy jo banki programozo baromi jol ert a penzugyekhez, csak nem napi szinten folyik bele. Szoval amit irtam, az ugy igazabol nem fair (tehat vszeg nem igaz az, amit sugalltam), csak ezt az eros szegregaciot nem kedvelem.
Volt hasonlo temakorben egy jobb iras, https://www.fishmanafnewsletter.com/p/balancing-engineering-cultures-debate-vs-do
szoval az se jo, ha mindenkinek mindenhez ertenie kell, meg az se jo, ha mindenki csak azzal hajlando foglalkozni, ami a nagyon szuken vett hivatalos feladatkore.De te is biztos lattal mar csomo 22 evest, aki bejelenti az elete elso allasinterjujan, hogy 'en nem koder akarok lenni, hanem architekt'. Az _osszes_ ilyen esetrol az derult ki nekem, hogy igazabol oket nem erdekli a technologia, es bar programozonak jelentkeznek, a leheto leggyorsabban el akarnak huzni valami olyan munkakorbe, ami jol fizet, de nem kell kodot irni. Egyebkent ugye a menedzsmentre is igaz, hogy a legrosszabb menedzserek azokbol kerulnek ki, akik az elso pillanattol menedzserek akartak lenni (szerintem a jo menedzsment a 'szolgalo' menedzsment, azaz amikor a vezeto megcsinalja a szar munkat, hogy a csapata csinalhassa az erdekes munkat).
-
Hja, sok igazság van abban, amit írsz. Viszont azt is látni kell, hogy a programozási feladatok olyan méretűre nőttek, amelyeket már csak kooperációban lehet megoldani, ezért szétszakadt a szakma ezekre a részterületekre. Egy ideális világban nyilván mindenki piszok jó üzleti és technikai skillekkel rendelkezne, de azt te is tudod jól, hogy ez nem a jelenkor realitása. És így jutunk el oda, hogy én már örülök annak, ha egy BA-nak IT végzettsége van, ha egy architect ténylegesen dolgozott is az iparban, és ha egy fejlesztő képes komplex üzleti problémákat legalább alap szinten megérteni. Ez már egy elég jó alap az értékteremtéshez.
-
válasz
#79484416 #19891 üzenetére
> Előbbiek hidalják át a szakadékot szakterület (pénzügy/műszaki témák/stb.) és az IT közt, a tervezők leginkább az algoritmizálással, a nagyobb képpel dolgoznak és az ő outputjukból dolgoznak a programozók, akik mindezt kódsorra fordítják.
ezek a programozas kulonbozo reszei -- kicsit ahhoz tudnam hasonlitani, mint amikor valaki azt mondja, hogy o egy front-end programozo, ugye az valojaban azt jelenti, hogy nem ert a back-endhez
ennek mintajara, az ondefiniciok szerint:
- a 'business analyst' az, aki jol akar keresni IT-ben, de nem ert a programozashoz
- az 'architekt' az, aki regebben meg tudott programozni, de mara megunta vagy sose volt jo benne
- a 'koder' az, aki lusta ahhoz, h a programnyelveken kivuli dolgokat is megtanulja> Ebben a felállásban az üzleti problémák értelmezése a szervezők dolga (volt?).
ja, ebbol szulettek a 'gyonyoru' rendszerek
-
válasz
#79484416 #19885 üzenetére
Én azt hittem, az automatizálásnak a rendszergazdák lesznek az első áldozatai, nem a fejlesztők.
A rendszergazda szakma reneszánszát éli, csak ma már devopsnak hívják.Tényleg kihal a programozó szakma és géppel helyettesítik?
Ahogy emvy is írta, a programozás jobb esetben nem arról szól, hogy kódsorokat írunk, hanem értelmezünk üzleti problémákat, amelyekre elég jó megoldásokat szállítunk. Erre az AI nagyon-nagyon sokáig, sőt, talán sohasem lesz képes. Egy tool, amit lehet használni, és kész. -
válasz
#79484416 #19885 üzenetére
Ugyanaz, mint ami idaig. Az automatizalt feladatokra toredekannyi ember is eleg lesz. Ezert nincsenek ma mar 'HTML fejlesztok', meg webshop-programozok (vagyis csak nagyon keves). A programozokat mindig is azert fizettek, hogy formalizalni tudjanak problemakat es a problemak megoldasat, ez a problemakor nem fog eltunni. Tehat ahogy mindig is, azok fognak gyoztesen kijonni a szitubol, akik nem abban jok, hogy megtanultak valamelyik nyelv szintaxisat, hanem abban, hogy melyen megertik a domain problemakat.
-
pmonitor
aktív tag
válasz
#79484416 #19883 üzenetére
miközben szerintem azt se tudja, mi minden kellene alá...
Olvastad ezt a posztom?
Időközben megtaláltam itt a smooth-ot és a boca-t.
Hirtelen megpróbáltam lefordítani a smooth-ot. Az meg mást hiányol. Túl hamar írtam. Hosszabb időt kell ezzel eltölteni...Az túlzás, hogy hisztizem, de az igaz, hogy túl korán írtam. De amint látom, ti is csak trollkodtok. Ahelyett, hogy leírnátok, hogy hogyan kell.
Bocs, találkoztam ma egy másik hasonszőrű futóbolonddal és elfelejtettem, hogy ez se százas
-->> ez egyértelműen trollkodás.Ide sem érdemes jönni kérdezni. Mondjuk ezt már rég tudtam. Viszont azt persze állítják, hogy az int őse az object C#-ban!! Segítőkészség meg egy szál se!
-
pmonitor
aktív tag
válasz
pmonitor #19877 üzenetére
Időközben megtaláltam itt a smooth-ot és a boca-t.
Hirtelen megpróbáltam lefordítani a smooth-ot. Az meg mást hiányol. Túl hamar írtam. Hosszabb időt kell ezzel eltölteni...@nemethg66: már írtam, hogy a számítógép nem olvas doksit. Erre jó példa volt az, hogy az int-nek őse-e az object.
Mert amit sztanozs írt, az azt jelentené, hogy pl. az int egyszer értéktípus, máskor pedig referenciatípus. De a kettő kizárja egymást.
-
pmonitor
aktív tag
válasz
sztanozs #19874 üzenetére
Most így hirtelen megnéztem ezt a a freac-ot. Az első problémája ez volt:
Error C1083 Cannot open include file: 'smooth.h': No such file or directory freac DLL
Meg még hiányolja a boca.h-t is. Egy kis ideig azt csináltam, hogy a neten megkerestem az ilyen nevű file-okat, de csak egyre több hibát ír ki. Szóval ezzel lehetne mit boxolni.
Azt nem értem, ha már fellövik a github-ra, akkor miért nem töltenek fel egy működő változatot? Ahol max. csak elgépelés van, de file-ok nem hiányoznak? Vagy akkor miért teszik fel úgy, hogy egy fényévre van a fordíthatóságtól?
Úgyhogy ezt feladom. -
VikMorroHun
őstag
válasz
adamthebrave #19856 üzenetére
Egy ötlet: lehet oldalanként nyomtatni (LibreOfficeban biztosan, gondolom, Wordben is). Mi van, ha beírod abba a mezőbe, hogy "1,1,1"? Elvileg ki kellene nyomtatnia 3 példányt az első oldalból (és semmi mást). Most nem tudom tesztelni, mert van itthon nyomtató, csak kábel nincs hozzá.
-
pmonitor
aktív tag
válasz
sztanozs #19874 üzenetére
Öröm és boldogság. Az innen letölthető 3.100-as verzió fordul 32 és 64 bitesre egyaránt. És még működnek is.
A Itt beletettem az audioconv mappában.
És még jóval kisebb méretűek annál, amit a netről töltöttem le. A netről letöltöttek mérete:
32 bites: 412 K.
64 bites: 1441 K.A 3.100 as verzóval fordítva:
32 bites: 250 K.
64 bites: 320 KAzért érthetetlen, hogy ekkora különbségek vannak a file-ok között. Főleg a 64 bites esetében a 320 K vs. 1441 K nagyon durva különbség.
De a legfőbb, hogy sikerült egy 32 és 64 biten is működő forráskódot találnom/összeraknom.
Ezért imádom a programozgatást. Mert nagyon jó tud lenni, amikor valami működőt sikerül összeraknom. Most már lehet magát a kódot nézegetni. Hogy milyen elven működik. -
pmonitor
aktív tag
válasz
sztanozs #19840 üzenetére
Nem az volt a baj, hogy nem msvc-vel fordítottam. Egy csomó elírási hiba volt benne. Backslash-ek helyett sima perjel volt. "libmp3lame.lib" helyett pl. "libmp3lame-static.lib"-et készített stb... Végülis pár óra szöszmötölés után létrehoztam ezt a működő verziót. Ezzel csak annyi gond van, hogy 32 biten működik, 64 biten nem. Úgyhogy az éles projektben hagyom a netről letöltött változatokat. Annak mind1, hogy 32 vagy 64 bit.
De legalább most már azt is tudom, hogy msvc-vel is lehet fordítani...
Csak sajnos a betegségem/állapotom miatt egyszerre nem tudok sokáig koncentrálni, mert hamar elfáradok. De azért a saját tempómban csinálom. Azért köszi a választ. -
coco2
őstag
válasz
#79484416 #19870 üzenetére
A látszat néha csal. Az adott mennyiségben nyomtatás adatfeldolgozási szempontból pont zéró probléma. Arra való a printer, hogy megcsinálja. És megcsinálja az, ha meg tudod kérni rá.
Barkács megoldások számára az adatok automatizálhatósága az elsődleges probléma. Ott tud elbukni a történet, hogy a rögzített adatok alapján előreszámítható-e az igény, vagy szeszélyes tényezők vannak a munkamenetben?
-
coco2
őstag
válasz
#79484416 #19868 üzenetére
Ok, a kérdező majd úgyis elolvassa, neked pedig a rövid válaszom, hogy igen, próbáltam már üzemi körülmények között, és onnét származnak a címke nyomtatás, a csv file-ok felhasználása, meg hogy kezdők oktatása érdekében csináljanak egy videót betanításként a bu*i maszkos időkben.
-
coco2
őstag
válasz
#79484416 #19866 üzenetére
Üzemi körülmények között gyártás esetén azt például címke nyomtatásnak hívják, és ráragasztják a dobozra. Attól lesz utána olajozottabb a munkamenet, nem a kézben tartott papírtól, amit mindenki máshol hagy el napközben, vagy különben is rácelluxozza a dobozra. Nagyon el lennék tévedve?
Ha jól értettem, az adatot excel-be rögzíted be. Az excel tud CSV kimenetet adni. Még akkor is, ha utána word-re konvertálod, és nyomtatsz belőle a jelenleg kiforrott munkamenet szerint, másodlagos munkamenetként tudsz "használhatóbb" irányban adatot küldeni az excel-ből, amiből utána lehet címkét nyomtatni, vagy normálisabban feldolgozni az adatot. A csv file hétköznapibb nevén egy egyszerű szöveg file (nézz bele notepaddal). Különös tulajdonsága a könnyű feldogozhatósága barkács módszerekkel.
Azt persze nem tudom, mi a munkamenet, konkrétan mit hogyan csináltok. Ti tudjátok kitalálni, mitől lenne tényleg olajozott a napi munka, vagy egy kívülálló akkor tudja nektek súgni más cégektől látott tapasztalat alapján, ha lát mondjuk egy videót a teljes folyamatról, milyen adatokat hogyan kezel a gyártásotok, esetleg valaminek a bevitelét is automatizálni lehet. Ha van rá időd / energiád, gyártani kellene egy videót mobil telefonnal, feltölteni YT-re (ingyenes szolgáltatás), aztán felkoppantani ide YT linket.
-
coco2
őstag
válasz
adamthebrave #19863 üzenetére
Semmi közöm hozzá, de papírmentes irodáról nem hallottunk még? Tényleg kell az az adat papírra kinyomtatva? Vagy úgyis ott van mindenkinél tablet, mobiltelefon, akármi, és rá tud nézni egy website-ra?
-
adamthebrave
csendes tag
válasz
axioma #19861 üzenetére
Köszönöm, hogy foglalkoztok vele, leírom a konkrét feladatot.
Mi egy üléshuzatot és ülésfűtést gyártó cég vagyunk, majdnem 1 000 különböző modellel, amiből kb. 50 félét gyártunk hetente vegyes összetételben, mindig más megrendelési számmal.
Készítek egy egyszerű excel táblát, ahová beírom a megrennelt modellek cikkszámát, a hozzájuk tartozó megrendelési számot és melléírom, hogy az adott mennyiség hány dobozba fér bele. Ebből generálok egy körlevelet Wordben, amit aztán exportálok PDF-be.
Ez utóbbi szám lesz a nyomtatandó oldal mennyisége, vagyis minden héten változik.
Hogy miért nem tudom a generált körlevél oldalait egyesével nyomtatni, azt én sem értem, de sajnos így van.
-
btraven
őstag
Dos-os játék, rpg, dungeon-ok vannak, sajnos a neten nincs meg az összes térkép. Én meg nem szeretek térképeket rajzolni. Viszont a játék nagyon tetszik. Gondoltam ki lehetne szedni a térképeket az adatfájlokból.
Na de hogyan? Erre van valami ötlet?itt egy szint alaprajza (néhány térkép fent van a neten [link] ):
Van egy (dos) exe fájl, meg van több adat fájl, akkor hogy lehet visszafejteni milyen szintek vannak az adat fájlban?
Ezt már valaki megcsinálta pedig, excel-ben rajzolva, tehát nem lehetetlen [link] :
Ez nem a fenti térképnek az adata, hanem egy másik térképnek. -
axioma
veterán
válasz
adamthebrave #19856 üzenetére
Ha a sablon kvazi-fix, es az oldalszam generalasonkent azonos [pl. 3. oldal mindig 5x], akkor csinald meg 1x azt h a sablon nyomtatos valtozata a kello darabszor egymas utan tartalmazza az adott oldalakat. Ha ritkan valtozik a sablon, akkor ez a nyomtato-sablon is.
Ha mas a modositas, nyomtatas mintazat, akkor azt is tedd hozza, de elsore ezt a feladatot tudtam mogekepzelni. -
coco2
őstag
válasz
adamthebrave #19858 üzenetére
Hát.. nem tudom, minek erőlteted akkor. Ha úgyis oldalanként kell külön mennyiséget nyomtatni, konvertáld oldalanként, aztán nyomtasd kézileg. 20 külön oldal nem a világ vége. Más lenne a szitu, ha úgy kapnád készen az anyagot, hogy egy 635 oldalas pdf, és azt kellene külön nyomtatgatnod agyvízfelforrásig. Az tényleg igényelne megfontolásokat. De 20 oldalnyi? Azt még túl lehet élni.
-
adamthebrave
csendes tag
Köszönöm a részletes választ, sajnos nem tudok programozni, bár meg is tanulhatom... a copy/paste más helyeken megy
Nem ragaszkodom a Wordhöz, de az általam ismert és elérhető programok közül ezek adták a (fél)megoldást.
Nincs programozó, egy kis 40 fős gyártó cég vagyunk, ahol én vagyok minden (is).
-
coco2
őstag
válasz
adamthebrave #19856 üzenetére
Ha barkácsolni akarsz, legalább copy/paste szintjén érteni kellene a c#-t (vagy rábízhatod valakire a környezetedben), és akkor van például Spire.PDF, bár nem éppen olcsó céges célra jogtisztán. Egy másik lehetőség kézileg csinálni.
Ha véletlenül ismer valaki PDF libet, ami normális, és olcsó, majd jelzi.
Még valami. Lehet sokkal olcsóbban is csinálni programozottan, de akkor ki kellene hagyni a word-öt, és programozottan gyártani a körleveleket valami sablon + tartalom alapján. Van egy programozótok a cégnél irodai célokra állandósítva, ilyesmivel simán el kell tudnia boldogulni.
-
adamthebrave
csendes tag
Sziasztok, nem vagyok programozó, nem is értek hozzá, több hónapnyi google-ozás után sem tudtam megoldani a problémát.
Wordben körlevél-készítő funkcióval generálok egy - mondjuk - 20 oldalas dokumentumot, aminek minden oldalából különböző példányszámot szeretnék nyomtatni. Magában a Wordben már ez sem lehetséges, mert a nyomtatópanelen hiába jelölöm ki az adott részt, csak az egész dokumentumot hajlandó nyomtatni.
Átkonvertálom pdf-be, akkor tudom oldalanként nyomtatni, de sajnos minden oldal 5 kattintás, és ha pl nem találom el a 'kijelölt oldal' kis gombot, akkor az egész doksit nyomtatja, ebbe az utóbbi időben sajnos többször belefutottam.
Javaslotokat szeretnék kérni a minél egyszerűbb nyomtatásra.
Köszönöm, szép napot. -
coco2
őstag
válasz
feka007 #19851 üzenetére
Megtanulnod csak azt kell, amit használni akarsz majd. A chatgpt végső soron össze tud gyűjteni iskolapéldákat, és a megoldásaikat, és az iskolában mással találkozni nem fogsz. Ha onnét kikerülve sem fogsz programozási példákkal találkozni, amiknél hangsúlyos lesz, hogy meg kell tudnod oldani, akkor tényleg semmi szükséged rá.
-
feka007
veterán
válasz
axioma #19809 üzenetére
A válaszból megértettem a megoldást, azért köszöntem meg. Az előbbi válaszok ezzel szemben nem sokat segítettek, hiába próbáltam azok alapján előrébb jutni.
Szerintem még mindig jobb, mintha chatGPT-be beírtam volna az assignmentet. Bár úgyis az a jövő, hogy csak be kell írni oda a paramétereket majd, aztán lektorálni a kódot, akkor meg nem is értem, miért sz.rakodjak vele, igazad van
-
pmonitor
aktív tag
válasz
sztanozs #19848 üzenetére
Az igaz, hogy a probléma az unboxing miatt van. Ezzel egyetértek. De sztem. ez egyértelműen bizonyítja, hogy "alapesetben" nincs unboxing, mivel nincs object(pl. két long típus esetén nincs jelen egy object sem). Ezért nem őse az értéktípusoknak az object. Mert akkor az első ciklusnál is lenne boxing-unboxing. De természetesen nem így van. Ezért mondom, hogy az object csak kompatibilis az értéktípusokkal, de nem őse nekik.
-
sztanozs
veterán
válasz
pmonitor #19843 üzenetére
A problema nem az object/struct miatt van, hanem az unboxing miatt, mivel az egyik objektumod object tipusu, ezert az erteket explicite be-, es kicsomagolod (20., 89. es 93. sor). Ez viszi el a plusz idot, nem a GC:
.method private hidebysig static
void Main (
string[] args
) cil managed
{
.custom instance void System.Runtime.CompilerServices.NullableContextAttribute::.ctor(uint8) = (
01 00 01 00 00
)
// Method begins at RVA 0x2094
// Header size: 12
// Code size: 171 (0xab)
.maxstack 6
.entrypoint
.locals init (
[0] int64 i,
[1] int64 j,
[2] int64 m,
[3] class [System.Runtime]System.Diagnostics.Stopwatch sw,
[4] int64 n,
[5] object k,
[6] int64 p,
[7] bool,
[8] bool
)
// {
IL_0000: nop
// long num = 0L;
IL_0001: ldc.i4.0
IL_0002: conv.i8
IL_0003: stloc.0
// long num2 = 0L;
IL_0004: ldc.i4.0
IL_0005: conv.i8
IL_0006: stloc.1
// long num3 = 0L;
IL_0007: ldc.i4.0
IL_0008: conv.i8
IL_0009: stloc.2
// Stopwatch stopwatch = Stopwatch.StartNew();
IL_000a: call class [System.Runtime]System.Diagnostics.Stopwatch [System.Runtime]System.Diagnostics.Stopwatch::StartNew()
IL_000f: stloc.3
// for (num3 = 0L; num3 < 3000000000u; num3++)
IL_0010: ldc.i4.0
IL_0011: conv.i8
IL_0012: stloc.2
// (no C# code)
IL_0013: br.s IL_0020
// loop start (head: IL_0020)
// num = num3;
IL_0015: nop
IL_0016: ldloc.2
IL_0017: stloc.0
// num2 = num;
IL_0018: ldloc.0
IL_0019: stloc.1
// for (num3 = 0L; num3 < 3000000000u; num3++)
IL_001a: nop
IL_001b: ldloc.2
IL_001c: ldc.i4.1
IL_001d: conv.i8
IL_001e: add
IL_001f: stloc.2
// for (num3 = 0L; num3 < 3000000000u; num3++)
IL_0020: ldloc.2
IL_0021: ldc.i4 -1294967296
IL_0026: conv.u8
IL_0027: clt
IL_0029: stloc.s 7
// long elapsedMilliseconds = stopwatch.ElapsedMilliseconds;
IL_002b: ldloc.s 7
IL_002d: brtrue.s IL_0015
// end loop
IL_002f: ldloc.3
IL_0030: callvirt instance int64 [System.Runtime]System.Diagnostics.Stopwatch::get_ElapsedMilliseconds()
IL_0035: stloc.s 4
// for (num3 = 0L; num3 < 3000000000u; num3++)
IL_0037: ldc.i4.0
IL_0038: conv.i8
IL_0039: stloc.2
// (no C# code)
IL_003a: br.s IL_0053
// loop start (head: IL_0053)
// object obj = num3;
IL_003c: nop
IL_003d: ldloc.2
IL_003e: box [System.Runtime]System.Int64
IL_0043: stloc.s 5
// num2 = (long)obj;
IL_0045: ldloc.s 5
IL_0047: unbox.any [System.Runtime]System.Int64
IL_004c: stloc.1
// for (num3 = 0L; num3 < 3000000000u; num3++)
IL_004d: nop
IL_004e: ldloc.2
IL_004f: ldc.i4.1
IL_0050: conv.i8
IL_0051: add
IL_0052: stloc.2
// for (num3 = 0L; num3 < 3000000000u; num3++)
IL_0053: ldloc.2
IL_0054: ldc.i4 -1294967296
IL_0059: conv.u8
IL_005a: clt
IL_005c: stloc.s 8
// long elapsedMilliseconds2 = stopwatch.ElapsedMilliseconds;
IL_005e: ldloc.s 8
IL_0060: brtrue.s IL_003c
// end loop
IL_0062: ldloc.3
IL_0063: callvirt instance int64 [System.Runtime]System.Diagnostics.Stopwatch::get_ElapsedMilliseconds()
IL_0068: stloc.s 6
// Console.WriteLine("{0} {1} {2} {3}", num2, num3, elapsedMilliseconds, elapsedMilliseconds2 - elapsedMilliseconds);
IL_006a: ldstr "{0} {1} {2} {3}"
IL_006f: ldc.i4.4
IL_0070: newarr [System.Runtime]System.Object
IL_0075: dup
IL_0076: ldc.i4.0
IL_0077: ldloc.1
IL_0078: box [System.Runtime]System.Int64
IL_007d: stelem.ref
IL_007e: dup
IL_007f: ldc.i4.1
IL_0080: ldloc.2
IL_0081: box [System.Runtime]System.Int64
IL_0086: stelem.ref
IL_0087: dup
IL_0088: ldc.i4.2
IL_0089: ldloc.s 4
IL_008b: box [System.Runtime]System.Int64
IL_0090: stelem.ref
IL_0091: dup
IL_0092: ldc.i4.3
IL_0093: ldloc.s 6
IL_0095: ldloc.s 4
IL_0097: sub
IL_0098: box [System.Runtime]System.Int64
IL_009d: stelem.ref
// (no C# code)
IL_009e: call void [System.Console]System.Console::WriteLine(string, object[])
// Console.ReadKey();
IL_00a3: nop
IL_00a4: call valuetype [System.Console]System.ConsoleKeyInfo [System.Console]System.Console::ReadKey()
IL_00a9: pop
// }
IL_00aa: ret
} // end of method Program::MainAz optimalizalt valtozatot nezve jol lahthato a ket "felesleges" utasitas:
// loop start (head: IL_0018)
IL_0011: ldloc.1
IL_0012: stloc.0
vs// loop start (head: IL_003e)
IL_002d: ldloc.1
IL_002e: box [System.Runtime]System.Int64
IL_0033: unbox.any [System.Runtime]System.Int64
IL_0038: stloc.0 -
pmonitor
aktív tag
válasz
#79484416 #19838 üzenetére
a számítógép az utasításaid és nem a kívánságaid szerint működik.
Nézzük, hogy működik a számítógép. Van a következő C# kód:
using System;
using System.Diagnostics;
namespace ConsoleApp1
{
internal class Program
{
static void Main(string[] args)
{
long i = 0, j = 0, m = 0;
Stopwatch sw = Stopwatch.StartNew();
for (m = 0; m < 3000000000; ++m)
{
i = m;
j = i;
}
long n = sw.ElapsedMilliseconds;
object k;
for (m = 0; m < 3000000000; ++m)
{
k = m;
j = (long)k;
}
long p = sw.ElapsedMilliseconds;
Console.WriteLine("{0} {1} {2} {3}", j, m, n, p - n);
Console.ReadKey();
}
}
}A második ciklus 2-3 szoros idő alatt fut le, mint az első.
Ez eddig tény.-----------------------------------------------------------------------------------------------------------
Szerintem ez csak úgy lehetséges, hogy az első ciklusban nincs sem object, sem ValueType, sem boxing, sem unboxing, sem semmi. Ott csak egy szimpla struct van. Csupaszon.
A második ciklusban valóban létrejön az object, a ValueType, van boxing és unboxing. De "k" nem long, hanem Object, ami egy becsomagolt long-ot tartalmaz.
Ez az én véleményem. Ami ugyan nem tény, de meg lehet cáfolni értelmes magyarázattal. Ezeket szívesen fogadom.
-----------------------------------------------------------------------------------------
sztanozs #19840: ha lesz energiám és időm, akkor még foglalkozom vele. De ránézésre úgy van, ahogy írod. Köszi előre is.
-
coco2
őstag
válasz
pmonitor #19836 üzenetére
A c# struct érték típus. Érték szerint adódik át, és nem referencia szerint. Itt találod az msdn-en a figyelmeztetést:
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/struct
Apropó, unsafe erőforrásokat leszámítva minden a gc felügyelete alá tartozik.
-
pmonitor
aktív tag
válasz
sztanozs #19834 üzenetére
Ezzel próbálkozom ezzel társítva, de nekem sajnos nem jött össze.
-
sztanozs
veterán
válasz
pmonitor #19832 üzenetére
Attol meg hogy nem orokol... Inkabb olvasdd el a specifikaciot:
https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/language-specification/structs#1643-inheritanceEs meg:
The common type system
It's important to understand two fundamental points about the type system in .NET:It supports the principle of inheritance. Types can derive from other types, called base types. The derived type inherits (with some restrictions) the methods, properties, and other members of the base type. The base type can in turn derive from some other type, in which case the derived type inherits the members of both base types in its inheritance hierarchy. All types, including built-in numeric types such as System.Int32 (C# keyword: int), derive ultimately from a single base type, which is System.Object (C# keyword: object). This unified type hierarchy is called the Common Type System (CTS). For more information about inheritance in C#, see Inheritance.
[link] -
pmonitor
aktív tag
Én programozásra gondoltam. De mind1. A lame_enc.dll-es megoldás is megfelel, ha más nincs.
A C#-ot illetően meg akkor, ha nem örököl a "struct" semmit, akkor hogy örökölne bármit is az "object"-től? Ráadásul az object az egy osztály. Attól meg főleg hogy örökölne, mikor még másik "struct"-tól sem örökölhet?
-
coco2
őstag
válasz
pmonitor #19830 üzenetére
>A wav -> mp3 konverzióra is van vmi. értelmes válaszotok?
Bár kissé offtopic, de tessék:
https://cloudconvert.com/wav-to-mp3
A c#-t illetően meg tényleg nincsen igazad. Az egy byte kódos környezet. VM futtatja. Absztrakt minden. Az egyetlen terület, ahol c# kód valódi integert (alias nyers memóriát) kezelhet, unsafe blokk-on belül tud előfordulni. Azon kívül nem.
-
-
dabadab
titán
-
dqdb
nagyúr
"C#’s type system is unified such that a value of any type can be treated as an object. Every type in C# directly or indirectly derives from the object class type, and object is the ultimate base class of all types. Values of reference types are treated as objects simply by viewing the values as type object. Values of value types are treated as objects by performing boxing and unboxing operations (§8.3.13)."
Lehet, hogy szólni kellene a Microsoftnak, hogy hibás a C# nyelv specifikációja, mert random nickek az interneten jobban értenek hozá
-
pmonitor
aktív tag
válasz
dabadab #19820 üzenetére
Ha az object a struct őse lenne, akkor pl. ez miért nem működik?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace GenericTest
{
interface ITorol
{
void delete();
}
class GenerikusTipus<T>
{
T adat;
public GenerikusTipus(T adat)
{
this.adat = adat;
}
public T GetErtek()
{
return adat;
}
public void TorlunkHaTudja()
{
if (adat is ITorol)
(adat as ITorol).delete();
}
}
struct Valami : ITorol
{
public int ertek;
public Valami(int ertek)
{
this.ertek = ertek;
}
public void delete()
{
ertek = 0;
}
new public string ToString()
{
return ertek.ToString();
}
}
class Program
{
static void Main(string[] args)
{
Valami v = new Valami(5);
GenerikusTipus<Valami> genTip = new GenerikusTipus<Valami>(v);
Console.WriteLine(genTip.GetErtek().ToString());
genTip.TorlunkHaTudja();
Console.WriteLine(genTip.GetErtek().ToString());
Console.ReadKey();
}
}
}Mert ugye class esetén működik. Innen is látszik, hogy a struct és a class teljesen más típus!
De még az is tény, hogy a struct NEM örököl. Semmitől! Nemhogy az object-től! -
dabadab
titán
válasz
pmonitor #19818 üzenetére
Ez egy kiváló példája a Csubakka-védelemnek
-
pmonitor
aktív tag
válasz
pmonitor #19818 üzenetére
Valamint ezt is figyelmetekbe ajánlom.
Na, ezért mondom, hogy dumálni könnyű! De látsziok, hogy nem sokat kódoltatok C#-ban!
-
dabadab
titán
válasz
pmonitor #19815 üzenetére
A ValueType Osztály hogy lenne már érték típus?
Szóval nem sikerült betolni a google translate-be a nevét és azt az egy sornyi kódot se sikerült lefuttatnod, ha már egyszer a dokumentáció elolvasása ("Inheritance Object -> ValueType", "ValueType overrides the virtual methods from Object with more appropriate implementations for value types.") egyértelműen meghaladja a képességeidet. Gratulálok!
-
pmonitor
aktív tag
válasz
disy68 #19813 üzenetére
A ValueType Osztály hogy lenne már érték típus?
Ajánlom figyelmedbe ezt a diskurzust.
Úgyhogy hülyeség, amit írt.
-
disy68
aktív tag
válasz
pmonitor #19810 üzenetére
"Pl. egy magát profinak beállító emberke azt állítja, hogy C#-ban az int őse az object."
mivel igaza is van, dokumentálva is van rendesen
a .net-ben az int ami az Int32 Struct egy ValueType, aminek az őse az Objectde ha annyira kódot szeretnél, akkor tessék:
Assert.IsTrue(typeof(object).IsAssignableFrom(typeof(int)));
-
axioma
veterán
válasz
pmonitor #19810 üzenetére
De te nem egy iskolai oran tanulsz programozast (valoszinuleg raadasul kesobb ezt szakmakent szeretne hasznalni), mint a kerdezo, es lattad a berakott kodjat, nagyon nem latta at az alapokat sem. Sok-sok kerdezessel elorebb jutott volna, most igy csak kesz a hazi, ha akarja nem kell gondolkodnia semmin.
-
pmonitor
aktív tag
válasz
axioma #19809 üzenetére
Én a saját példámból indulok ki. Én egy "működő"* kódbol szoktam kiindulni, és azt próbálom megérteni. Főleg a buktatóit. Én nem szeretek "rizsából" tanulni. Főleg, ha látszik a rizsából, hogy valaki még nem is foglalkozott a témával. Pl. egy magát profinak beállító emberke azt állítja, hogy C#-ban az int őse az object. Közben több, mint 100 K pontot összegyűjtött az ilyen "szakmai" tudásával(persze mind rizsával). Na, az ilyenek miatt vallom én azt, hogy aki nem ír példakódot, ő számomra nem szaki, főleg nem profi. Csak ezeket állítja magáról. Az a helyzet, hogy ilyent állítani(dumálni) könnyű.
*: működő kódnak mondom én azt is, hogy ha nem is copy paste működik ugyan, de rövid idő alatt működővé lehet tenni. Tehát pl. elgépelés az oka a nem működésnek.
-
axioma
veterán
válasz
feka007 #19807 üzenetére
Ilyenkor olyan kivancsi lennek, mi volt a kod sorsa... copy-paste, solved, vagy a miertek kideritese is? Gyanus az ido nagysaga es a hsz rovidsege alapjan, hogy az elobbi. Ami nem tul jo hozzaallas egy ilyen tanulasi folyamathoz.
Ha tevedtem, akkor tekintsuk a hsz-t nem erre az esetre vonatkozonak, csak altalanos jelenseg feletti morgolodasnak. -
pmonitor
aktív tag
Nemrég tettem közzé egy audió konvertáló programot, amit a weben "találtam". Az mp3 -> wav konvertáló része működik, mint a zsír. Azonban a wav -> mp3 részével 2 probléma is van. Az egyik, hogy másik fél által készített dll-t kell hozzá használni(lame_enc.dll). A másik, hogy meglehetősen lassú. A harmadik, hogy még így sem találtam olyan forrást, ami VS-ben lefordult volna. Tehát igazából az open source nekem mégsem open source. Ha valaki sikeresen lefordította már a lame_enc.dll-t VS-ben, örülnék, ha megosztaná vel(em/ünk), hogy honnét töltötte le a forrást, és hogy a fordításnak mik a buktatói.
Egyébként, mivel ennek a konvertálása lassú is, ezért olyan megoldás is érdekelne, amely az említett dll nélkül tud wav -> mp3 konvertáló forrást.
"Legrosszabb" esetben marad ez. -
sztanozs
veterán
válasz
feka007 #19800 üzenetére
Eloszor is letre kell hoznod a listat, ami ugy latom meg, es utana meg kell vizsgalnod, hogy az adott pozicio oszthato-e 2-100-ig es ha igen meg kell valtoztatnod az allapotat.
trukkozes (xor) nelkul:# ne definiald felul a list utasitast
lista=[1] * 100
for i in range(100):
for oszto in range(2,101):
if (i+1) % oszto == 0:
lista[i] = 1 - lista[i]
# xor:
# lista[i] ^= 1
for i in range(100):
# print(f"{i+1}. cella: {('csukva', 'nyitva')[lista[i]]}")
# vagy meg csunyabban
# print(i+1, "cella", "cnsyuiktvvaa"[lista[i]::2])
if lista[i]==1:
print(f"{i+1}. cella: nyitva")
else:
print(f"{i+1}. cella: csukva") -
hiperFizikus
senior tag
válasz
feka007 #19800 üzenetére
Én az ilyeneket úgy szoktam csinálni, hogy neki állok, mint ahogyan te is . Ha sikerül elboldogulnom vele, akkor annyiban hagyom . Ha meg nem, akkor átírom 5 db olyan function-ba, amelyikbe csak 1 db for ciklus jut ! Így már könnyebb összehangolni őket ! Majd ha jól mennek, akkor vissza írom őket egy nagy 5x egybeágyazott for ciklusba, ami már csak kevés illesztésből meg van !
Köztünk csak az a különbség, hogy én már régtől nem írok gyakorlatokat, hanem mindent élesben csinálok .
-
cattus
addikt
válasz
feka007 #19800 üzenetére
A feladat szerint 100 szolga nyitja-csukja az ajtókat, szóval ha így csinálnád akkor száz egymásba ágyazott ciklust kéne írnod.
Az elgondolás jó, hogy nyitva állással inicializálod a tömböt. A feladat leírásában felfedezhető egy mintázat. Az első szolga az összes ajtó állapotát megváltoztatja, a második csak minden másodikat, a harmadik minden harmadikét, stb. Ezeket vagy leírod egyesével, vagy írsz rájuk két ciklust, ahol a külső végigmegy a szolgákon, a belső meg végigfuttatja a szolgákat a tömbön. Plusz a boolean tömböt használsz, elég megflipelni az értékeket (
list[i] = !list[i]
), nem kell if ellenőrzést hívni. -
axioma
veterán
válasz
feka007 #19800 üzenetére
Nem jo a programszerkezet! A minden 2.-at bezaras az nem a kinyitos cikluson belul van!
Ezek kulon ciklusok. Azert is lehet azonos ciklusvaltozo. De mind az elsotol [0. indextol] indul!
Ja es a list valtozonevet most irtsd ki a szotaradbol - az kulcsszo, csak felul tudod definialni...hint, nem igy oldod meg:
lst=[1]*100
for i in range(0,len(lst),2):
lst[i]=0
for i in range(0,len(lst),3):
if lst[i]==1:
lst[i]=0
else:
lst[i]=1
for i in range(0,len(lst),4):
if lst[i]==1:
lst[i]=0
else:
lst[i]=1
...Erre a formatumra meg mar van egy egyszerusitett leirasod...
@cattus nem akartam belezavarni az
lst[i]=1-lst[i]
-vel...
Új hozzászólás Aktív témák
Hirdetés
● olvasd el a téma összefoglalót!
- DUNE médialejátszók topicja
- Milyen autót vegyek?
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Kínai és egyéb olcsó órák topikja
- BestBuy topik
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- ASZTALI GÉP / ALKATRÉSZ beárazás
- Fizetős szoftverek ingyen vagy kedvezményesen
- iRacing.com - a legélethűbb -online- autós szimulátor bajnokság
- Gmail
- További aktív témák...
- Ohh Lenovo ThinkPad P15 G2 Tervező Vágó Laptop -75% 15,6" i5-11500H 32/1TB RTX A2000 4GB /1 Millió/
- UHH! HP EliteBook 850 G8 Fémházas Multimédiás Laptop 15,6" -40% i7-1165G7 16/512 Iris Xe FHD EU-HUN
- IBM PS/1 2168-552 486SX-25
- ASUS ROG Strix RTX 2080 Ti OC 11GB
- Acer Swift 3 (SF314 54) i5 / 8GB RAM / SSD / FullHD / kiváló állapotban!
- Csere-Beszámítás! RTX Számítógép játékra! R5 5600X / RTX 3080 / 32GB DDR4 / 1TB SSD
- Dell Latitude 5495 Full HD IPS Ryzen 5 pro 2500u Radeon Vega Mobile Gfx i5-8350u verő Bp MPL Foxpost
- Bomba ár HP Pro X360 11 G1 - Intel N4200 I 4GB I 128GB SSD I 11,6" HD Touch I Cam I W10 I Gari
- HP 200W (19.5V 10.3A) kis kék, kerek, 4.5x3.0mm töltők + tápkábel, 928429-002
- LG 48C3 - 48" OLED evo - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - A9 Gen6 CPU
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest