Új hozzászólás Aktív témák
-
Karma
félisten
válasz futo001 #1961 üzenetére
A WinMainnak kicsit más a szignatúrája, azért vernyog.
Ez a helyes:
int WINAPI WinMain(
HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPWSTR lpCmdLine,
int nShowCmd );Ld. itt.
Egyébként én a helyedben inkább a .NET Compact Frameworkkel kezdenék, kevésbé fájdalmas.
“All nothings are not equal.”
-
Karma
félisten
válasz Sk8erPeter #1968 üzenetére
Az átalakítás szempontjából marha mindegy lenne (ha a +1-es alfeladattól eltekintünk), hogy letárolja-e az egész nevet vagy sem. Meg az átlagszámításhoz se, ebben szerintem neki van igaza.
Viszont a többi feladathoz meg tényleg szükség van rá.
Ez a void atalakit(char[] nev) szignatúra meg üt.“All nothings are not equal.”
-
Karma
félisten
válasz Sk8erPeter #1970 üzenetére
Azt csak elírtam, nem azért idéztem. Egy ilyen átalakítást én nem feltétlen in-place csinálnék meg, tehát inkább egy char* transform(char* name) függvényt írnék, ha nem lenne ott a többi része.
De jogos, a névátrendezés és a maximum miatt két nevet el kell tárolni
“All nothings are not equal.”
-
Karma
félisten
válasz Sk8erPeter #1975 üzenetére
Egyébként eddig még nem láttam olyan Programozás tárgyat, ami programozni tanított volna. Láttam a BME-s Prog1-2-t, láttam fizikusoknak szánt progot (na ez durva volt, feladat: kommentezz végig egy WINAPI-val írt kódrészletet), és köze nincs hozzá. Ledarálják a nyelvet és szevasz, ha korábban nem tudtál imperatívan programozni, itt se szeded össze.
És nem, a hibaüzenetek meg include-ok helyes leírásának semmi köze a helyes programozáshoz szerintem. Papíron meg végképp nem.
A stack overflow más kérdés, ha helyesen elmagyarázták volna, akkor nem lenne probléma ennek a megértésével.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz Sk8erPeter #1993 üzenetére
Nem kell ennyire felszívni, csak segíteni akartam
“All nothings are not equal.”
-
Karma
félisten
válasz Sk8erPeter #2011 üzenetére
Feltételeztem, hogy a specifikációnak megfelelő bemenet érkezik
Meg az se árt, ha deklarálja a változótNem igazán akarom megírni az egész feladatot.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz Sk8erPeter #2014 üzenetére
Azért mégis más egy félmegoldás és egy rossz megoldás
Csak szórakozok, peace!
Egyébként én bírom a kritikát, de meg is védem amit írok.
Szívügyet meg nem csinálok belőle, Neked se kéne.cellpeti: Nem az a baj, hogy nem megy, hanem az, hogy még mindig nem megy, pedig már több mint fél éve kérdezgetsz alap dolgokat. Egyébként az újkiadású négyjegyű függvénytáblákban is benne van pár alap algoritmus (lineáris keresés, maximumkeresés, válogatás...), esetleg azt nézd meg.
Egyébként a későbbiekben ez csak rosszabb lesz.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz cellpeti #2017 üzenetére
De otthon olvasgathatod azért, és nem hiszem, hogy nagy költség lenne.
A maximumkeresés lényege, hogy:
1) Kinevezed a tömb első elemét maximumnak.
2) Egy ciklusban bejárod a tömböt, ha a maximumnál nagyobb számot találsz, az lesz az új maximum.
3) A végén visszaadod vagy a maximumot, vagy az indexét, attól függően mi kell.Pl. egészekre, feltételezve, hogy a tömb legalább egy elemű, és a legnagyobb elem indexét kell visszaadni (mint pl. a feladatodban is kell majd):
int max(int count, int* array)
{
int maxIndex = 0;
int i;
for (i = 1; i < count; i++)
{
if (array[i] > array[maxIndex])
{
maxIndex = i;
}
}
return maxIndex;
}Jester01: Kösz, behaluztam valamiért, hogy ennek van értelme.
Javítottam a hagyományos megoldásra.[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz Barthezz2 #2020 üzenetére
Én is nemrég írtam, hogy szerintem az egyetemi programozás oktatás igen... kritikán aluli, legalábbis programozni nem tanítanak rajta, csak ledarálják a régi/új nyelveket, és szevasz, csinálj amit akarsz. De ha az ember már az informatikus pályára lépett, valahogy meg kell tanulnia mindenképpen, mert létfontosságú.
“All nothings are not equal.”
-
Karma
félisten
-
Karma
félisten
-
Karma
félisten
Nem kötelező láncolt listát használnod, de vannak helyzetek, amikor az a legpraktikusabb. A kérdés az, hogy hány elemről van szó, illetve hogy milyen műveleteket akarsz rajtuk végezni.
Ugyanis 1) a struktúrákból is lehet tömböket csinálni a stacken, ha kevés darab lesz belőlük. 2) A heapen is csinálhatsz tömböt, ekkor ugye a méret nem akkora para. 3) Valamint ott vannak a láncolt listák, amit említettél. 4) Vannak hibrid megoldások, amikor egy tömbben ábrázolsz egy listát egy a következő elem sorszámát tartalmazó indexmezővel; és biztos van, ami nem jutott eszembe.
A műveleteket azért mondtam, mert a tömbökben gyors a navigáció, de lassú a törlés; a listákban gyors a beszúrás és törlés, de lassan lehet bejárni.
“All nothings are not equal.”
-
Karma
félisten
Sok megoldás van rá, pl. veszed az indexeket 1-től n-ig, megkevered őket, aztán ennek mentén kiírod. Ez láncolt listával halál, a tömb sokkal hatékonyabb most.
“All nothings are not equal.”
-
Karma
félisten
válasz Gyuri16 #2061 üzenetére
A C egyszeru, mint egy feltegla, csak jol kell banni vele. A Pascal se egyszerubb semmivel se, csak kezdobaratabb, mert nincsenek zarojelek - attol meg ugyanazokat az imperativ alapelveket kell hasznalni.
Magat a nyelvet a "programozzunk C nyelven" is eleg jol leirja.
“All nothings are not equal.”
-
Karma
félisten
válasz Gyuri16 #2065 üzenetére
A complexity magyarul bonyolultságelmélet.
Nem feltétlen az egyetemi oktatással van bajom, az első bekezdésed felétől kezdve aláírom, ezt tényleg oktatják és tényleg szükségesnek is érzem. A probléma viszont a legelején van a képnek.
"programozas tanitasnak szerintem az a celja, hogy az adott problemat (a megoldasat) meg tudd oldani az adott eszkozokkel, ehhez pedig kell egyreszt egy altalanos (nyelvtol fuggetlen) latasmod es egy jo problemamegoldo kepesseg."
Erre nem láttam még jó példát sehol se, legyen szó oktatási intézményről vagy írott anyagról. Pedig a legtöbb esetben már ennél a lépésnél elvérzik a kezdő ember, pedig ha meglenne a látásmód, a nyelv egy fél pillanat alatt jönne.
“All nothings are not equal.”
-
Karma
félisten
válasz klayton#1 #2076 üzenetére
Túlbonyolítod, utána meg elrontod.
Mivel karakterenként olvasol be (ez a túlbonyolítás, olvashatnál nagyobb egységet más függvénnyel), kézzel be kell raknod a lezáró 0-t a karaktersorozatod végére (ezt hagytad ki). Az strlen is ezt akarná használni, nomeg a kiírás is.
“All nothings are not equal.”
-
Karma
félisten
válasz Retekegér #2138 üzenetére
Milyen szinten? Alapozásnak szerintem ez egy elég jól sikerült könyv-kettős. Az első kötet végig alap-algoritmusokat gyakoroltat, a másodiknál már gondolkozni is kell néha (Meg nem is tetszett annyira.)
Ha valami higher level kéne, arra már nem tudok mit mondani.
Mondjuk valami webbel kapcsolat feladatsorra én is kíváncsi lennék, pl. amin lehetne GWT-t vagy Vaadint gyakorolni.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
Úgy tűnik nem.
Ez a GpsEllenoriz(gps) mi, és honnan jön? Mert nem teljesül a feltétel ránézésreEgyébként egy pár jótanács:
1) A programkódot a "Programkód" gomb megnyomása után másold be, hogy más is el tudja olvasni. A monospace sokat segít... Meg talán az indentáció is megmarad. Ugye indentálsz? Mert ha nem, akkor szokj rá.
2) Instant tarkónlövés, globális változó, amit utána érték szerint átadsz egy függvénynek, amit utána egy másik függvény ír... Legalábbis a bal esetében, a fordulasVolt globális változó értékét így nem fogod módosítani egyátalán... Az int* átadás kiment a divatból?
3) Még mindig nem tudom, a GpsEllenoriz(gps) mit csinál, de szerintem célravezetőbb lenne, ha csak egyszer futtatnád le ciklusonként, és a visszaadott struct példányt hasonlítgatnád a feltételben.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz FehérHolló #2278 üzenetére
A t[][] hogy a bús viharba lenne jó elgondolás? Kétdimenziós tömb átadásakor az első dimenziónak fix méretűnek kell lennie (pl.: t[5][]), különben a fordító nem fogja tudni az elemek méretét, így nem lehet tömb. Vagy pointermágia kell, vagy egydimenziós tömb és indexmágia.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz kingabo #2282 üzenetére
"A sizex-et add át egy lokális változónak, mert azt nem változtathatod."
WTF?! Érték szerinti átadásról hallottál-e már? Ha egy 4-es literált adsz be, akkor is működni fog, hiszen lokális változóként viselkedik. (Ráadás válasz: most buktál meg egy prog1 vizsgán ezért.) De basszus már majdnem elbizonytalanítottál.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz FehérHolló #2285 üzenetére
Az első verzió szerintem nem működne, a második viszont pontosan az az indexmágia, amit így ködösen megemlítettem
“All nothings are not equal.”
-
Karma
félisten
1) Kellene egy malloc függvény először. Legegyszerűbb esetben ennyi megoldja:
#include <stdlib.h>
2) Ezt sajnos nem tudom, de első próbának a pwm változód deklarálásához tenném. Azaz a bemásold sorodat kezdeném úgy, hogy volatile. Nem tudom, hogy a fordító hogy viselkedik pointerrel elért struktúráknál, nekiáll-e egyáltalán optimalizálni...
“All nothings are not equal.”
-
Karma
félisten
A volatile nem azért kell, hogy elérhesd interruptból (ahhoz csak "megfelelő" helyre kell tenned), hanem azért, hogy a fordító ne optimalizálja ki az olyan ifeket és for/while ciklusokat, ahol ennek a struktúrának az elemeit használod fel a feltételben.
Volatile nélkül ugyanis azt gondolhatja a fordító megfelelően magas -O szint mellett, hogy "na ez biztos nem változik meg, ez a feltétel felesleges, kidobom" - és csodálkozhatsz hogy nem reagál a program. A volatile ezt tiltja meg.
BTW szerintem egyszerűbb lenne, ha nem a heapen hoznád létre ezt a struktúrát. Végülis elég kicsi. Az interruptos elérés miatt lehet, hogy globális változónak praktikusabb (más fordítási egységben. pl. az interruptkezelődben meg externnel hivatkozol rá).
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
Ezt a cikket most találtam, érdemes elolvasni.
A kommentek között az eredeti kérdésedre is választ kapsz, idézem:Here is the best practice for use with structs that define memory-mapped I/O device registers:
typedef struct { ... } volatile newtype_t;
newtype_t * const p_newtype = (newtype_t *) BASEADDR;[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz WonderCSabo #2631 üzenetére
Egyébként a fordító (és a rendszer) szempontjából a karakterek is csak számok.
“All nothings are not equal.”
-
Karma
félisten
válasz kovacsakos91 #3072 üzenetére
Ennek a második kötetében előfordulnak ilyen jellegű feladatok, még ha nem is ilyen bő lére eresztve. Instant nosztalgia!
Illetve, kategóriánál maradva, nézz utána Nemes Tihamér OKSzTV feladatsoroknak, ott is voltak ilyenek jópár éve. Bonyolultságra és stílusra is hasonló.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
válasz kovacsakos91 #3080 üzenetére
Sajnos nem tudom, én amikor használtam könyvtárból vettem ki, úgy hét éve Kecskeméten
“All nothings are not equal.”
-
Karma
félisten
válasz WonderCSabo #3187 üzenetére
Konkrétan POSIX környezet kéne hozzá, így ha a Windows fontos, akkor vagy Cygwin alá kéne vinni a "fejlesztést", vagy ilyesmivel is lehet kísérletezni.
Én csak az előbbit tapasztaltam ki eddig munka közben.
“All nothings are not equal.”
-
Karma
félisten
válasz shinodas #3206 üzenetére
Az egész mögött egy pszeudo-véletlenszám generátor van, ami egy kezdőérték (seed) alapján generál számokat. (Nem valódi véletlenszámok, de ez most mindegy.)
A srand függvény szolgál ennek a seed értéknek a beállítására. A time(NULL) függvény az aktuális rendszeridőt adja vissza egy egész szám formájában (1970. január 1. óta eltelt másodpercek száma); ha ezt adod meg seednek, gyakorlatilag minden másodpercben más véletlenszámokat kapsz.
Azonos seed mellett meg ugyanazok a számsorozat jönne ki a rand() hívogatása során.
A rand() egyébként ez a seed meg a belső algoritmusa alapján egy 0 és RAND_MAX (legalább 32767, maximum MAX_INT, környezetfüggő) közötti egész számot ad vissza. Ha ennek veszed a kilences maradékát, 0 és 8 közötti számokat kapsz.
Szerk.: Eh, lassú voltam.
[ Szerkesztve ]
“All nothings are not equal.”
-
Karma
félisten
A rendszerlogban nem látszik valami más hiba? Egy kiírás látszik az uinput forrásából.
De tényleg az lenne a jobb, ha egy strace-t is feltáncolnál a PDA-ra, és azzal futtatnád.
[ Szerkesztve ]
“All nothings are not equal.”
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Bemutatkoztak a Microsoft aktuális Surface gépei
- A tüntetések ellenére is bővítheti német gyárát a Tesla
- Politika
- Kerékpárosok, bringások ide!
- PlayStation 5
- Még idén hozza a Lunar és Arrow Lake-et az Intel
- Még több AI-t hozna a Windowsba a Microsoft
- 2 nm-es chipeknél is modernebb lapkákat fejlesztenek az EU-ban
- Escape from Tarkov
- Milyen routert?
- További aktív témák...
- iPhone 15 Pro 128GB - full karcmentes, dobozos, 100% akku, garancia
- Zero 9 (Techlife X6) elektromos roller (35km táv, 45km/h sebesség)
- Dell G5 5590 15.6" FHD IPS i5-9300H GTX 1650 16GB 1TB magyar vbill ujjlolv új akku gar
- Xbox Series X 1TB - 9 hónap garancia, vállalkozástól!
- ESP8266 offline ETAHEN / GOLDHEN wifi modult
Állásajánlatok
Cég: Alpha Laptopszerviz Kft.
Város: Pécs
Cég: Promenade Publishing House Kft.
Város: Budapest