Fujitsu 809 Share Posted October 16, 2015 Végül is talán kézenfekvő lett volna nőgyógyásznak tanulni, minekutána úgyis egész nap a "munkadarabon" jár az eszem, de valószínűleg ez nem pont erről szól. Viszont azt támogatnám, hogy az urológiai vizsgálatokat fiatal, dekoratív hölgyek végezzék. Link to comment Share on other sites More sharing options...
TheSaurida 36 Share Posted October 19, 2015 Én a három gyerek során végigültem párszor a sort a nőgyógyászat előtt... hát... (noch dazu, Baranyában). Nem csak csinos fiatal hölgyek ültek ott, sőt. Csoda, hogy van olyan nőgyógyász, aki (ennek ellenére?) megnősül. <off> Egy másik, régi vicc abból az időből, amikor a fizetést még kápéban kaptuk: Tömött busz/villamos, egyszer csak egy fiatal nő felszisszen: - De uram, mit képzel?! - Ne haragudjon, kisasszony, tévedni tetszik... Ma kaptunk fizetést, elfogyott a papírpénz, berolnizott húszasokban kaptam meg a pénzt, az van a zsebemben, és azt tetszett érzékelni... - Akkor gratulálok, jó munkahelye van, ha így két megálló között fizetésemelést kapott... Az urológiai vizsgálatról jutott eszembe. Nővér: Marikám, vagy hozd ide a szemüvegemet, vagy vizsgáld meg te az urat, mégiscsak fiatalabb vagy nálam húsz évvel.</off> Link to comment Share on other sites More sharing options...
Fujitsu 809 Share Posted October 19, 2015 Ejnye, nem szép dolog, hogy itt offolsz. Ha már urológia, nem árt tudni, hogy a prosztata egészségének megőrzésére az egyik legfontosabb módszer, hogy rendszeresen üríteni kell. Az urológusok ezt azzal magyarázzák, hogy felépítését tekintve a dülmirigy nagyon hasonló szerv, mint a nyálmirigy, csak utóbbinak megvan az az óriási előnye, hogy rendszeresen üríteni tudja a váladékát a szájüregbe; így azzal nem is nagyon szokott probléma lenni. A prosztatában viszont ott pang az anyag, hamar erjedésnek indul, táptalaja lesz a baktériumoknak, aztán a többi jön magától. Karcinogénnek is tartják úgy mellesleg. Szóval bár a különféle világvallások dogmáinak lefektetői még nem nagyon tudtak erről, azért tudjunk róla, hogy nem valami okos dolog őrizgetni magunkban a miniszterelnököt. Link to comment Share on other sites More sharing options...
TheSaurida 36 Share Posted October 19, 2015 Igaz, igaz... mintha csak magam mondtam volna... Na jó, írjunk gyorsan C/C++-ban egy dülmirigy-ürítő programot. (A szájüregről is eszembe jutott valami, de hagyjuk.) Link to comment Share on other sites More sharing options...
Fujitsu 809 Share Posted October 19, 2015 Megírta már a Jóisten, az a firmware fut az agyunkban. A konfig persze egyénenként különbözik kissé. Igaz az is, néhányaknál pár változót kioptimált a fordító... Igen, az ideális az, ha a dülmirigyet is a szájüregbe lehet üríteni, de az egy sokváltozós sztori. Mondjuk ebben az országban erőteljes túlkínálat van hivatásos terapeutákból. Ide mondjuk nem ártana áthallgatni egy félévet Erasmusszal. Link to comment Share on other sites More sharing options...
TheSaurida 36 Share Posted October 19, 2015 Jóisten = Első Programozó? Link to comment Share on other sites More sharing options...
Fujitsu 809 Share Posted October 19, 2015 Első mérnök. Erről jutott eszembe a klasszikus vicc, amikor hárman vitatkoznak, hogy ki tervezte az emberi testet: – Szerintem gépészmérnök volt, nézzétek ezeket a csuklókat, illesztéseket! – így az egyik. – Szerintem villamosmérnök lehetett, milliónyi elektromos kapcsolatot tervezett bele – mondja a másik. – Biztos, hogy építész volt – ellenkezik a harmadik. – Ki más tervezné a szennyvízcsatornát a szórakoztatóközpont mellé? Erről meg most az ugrott be, hogy felvettem az elolvasandóim listájára Giulia Endersnek, egy cuki frankfurti medikuscsajnak a könyvét a bélrendszerről (magyarul Bélügyek címmel jelent meg). Kíváncsi leszek, mi újat fogok megtudni. Link to comment Share on other sites More sharing options...
[OP]Destroy-man 160 Share Posted October 19, 2015 Megírta már a Jóisten, az a firmware fut az agyunkban. Szóval a GC is implementálva van az agyunkba. Csak néha (kellő alkohol fogyasztása mellett) szivárogtatja a memóriát is. Link to comment Share on other sites More sharing options...
kléni 7 Share Posted February 26, 2016 Programozni tanuló gyerekek azt a feladatot kapták, hogy írjanak egy programot, amely beolvas egy pozitív számot (N), és kiírja az annál kisebb pozitív páratlan számokat növekvő sorrendben (ez mindig (int)n/2 darab szám). A kiírt számok között legalább egy szóköz vagy újsor karakter van, és ezenkívül bárhol előfordulhat tetszőleges számú szóköz vagy újsor karakter, de bármilyen más kimenet tiltott (pl. "Kérem N értékét"). A gyerekek programjait automatikusan szeretnénk ellenőrizni, ehhez a kimenetüket az ellenőrző programunk standard bemenetére irányítottuk. Az Ön feladata egy olyan C függvény megírása az ellenőrző programhoz, amely eldönti a standard bemenetről, hogy az egy helyes kimenet-e. A függvény paraméterül kapja N értékét, visszatérési értéke pontosan igaz, ha a bemenetről olvasott fájl egy helyes kimenet. Tipp: a scanf függvény visszatérési értéke sikeres beolvasás esetén a behelyettesített változók darabszáma (egy szám beolvasásakor 1), fájl vége esetén EOF. Már megoldottam a feladatot getchar() használatával. De szerintetek hogyan lehetne ezt a feladatot scanf() alkalmazásával megoldani? Edit: megoldódott. Elég egy scanf("%c", &ch), onnantól meg már ugyanaz, mint a getchar()-os megoldásom. Csak amikor scanf-ben gondolkodtam, akkor %d-re gondoltam, ami átugorná a whitespaceket. (szeretjük a hozzászólás törlési lehetőséget.) Link to comment Share on other sites More sharing options...
payskin 905 Share Posted February 27, 2016 Nem kell ezt törölni, hátha hasznos lesz másnak is Link to comment Share on other sites More sharing options...
Fujitsu 809 Share Posted February 27, 2016 Ha karakterként olvasol, akkor ahhoz, hogy számot kapj, a karakterekből helyiértékenként össze kell raknod a számot (hiszen nyilván több számjegyű értékek is előfordulhatnak). Magyarán levonsz az éppen olvasott karakterértékből 49-et ('0'-t), és ezt még súlyoznod kell az aktuális helyiérték szerint; és ha végeztél a számmal, ezeket a súlyozott értékeket szummázod. Ez a getcharos út egy szám kinyerésére; de ahogy te használod a scanf függvényt, az is ugyanez. (Ha balról jobbra olvasod a számjegyeket, akkor a súlyozás kicsit bonyolultabb lesz, mert meg kell tudni azt is, hány számjegyből áll a szám.) Ha adott formátumban jönnek a számok a bemenetre (ahogy esetedben is), akkor ez megkerülhető a scanf-fel, amivel egyből számként tudod kezelni az értéket. Ez sokkal egyszerűbb. Link to comment Share on other sites More sharing options...
kléni 7 Share Posted February 27, 2016 #include <stdio.h> int helyes(int n) { char ch; char lastCh = ' '; int i = -1; int j = 1; int ls; while ((ch = getchar()) != EOF) { if (ch != ' ' && ch != '\n') { ls = lastCh == ' ' || lastCh == '\n'; if (ch < '0' || ch > '9' || (ls && ch == '0')) return 0; if (ls) { if (i != -1) { if (i != j || j >= n) return 0; j += 2; } i = 0; } i *= 10; i += ch - '0'; } lastCh = ch; } return i == (n % 2 ? n - 2 : n - 1); } int main(void) { printf("%d\n", helyes(7)); return 0; } Így oldottam meg, és a (ch = getchar()) részt lecserélve scanf("%c", &ch)-ra ugyan úgy menne. @Fujitsu: tényleg egyszerűbb scanf("%d", &ch)-t használni, de ha egy \t van a két szám között, át fogja ugorni, pedig akkor hibát kell adni. A többi számként formázott beolvasás is így működik, és nem tudok arról, hogy ki lehetne zárni ebből a szóközön és \n-en kívül a többi whitespace karaktert. Link to comment Share on other sites More sharing options...
Fujitsu 809 Share Posted February 27, 2016 Mert miért kéne kizárni? Miért kéne hibát dobni a tabulátorra? Ha tetszőleges számú szóközt üthetek két szám között, akkor miért érdekel engem a tabulátor? Micsoda marhaság már ez? A scanf nem arra van, hogy karakterenként olvass vele. Az a getchar vagy a getc(stdin). Szerintem itt bizony pont az a lényeg, hogy egyből számként olvass; ezért is írták, hogy a scanf a fájl végén EOF-fal tér vissza. Ha mindenképp így kell megcsinálni, akkor lehet azt, hogy a getcharral olvasok, csekkelem, hogy épp mit; ha épp számot, akkor a számjegyeket benyomom egy sztringbe. Ha véget ért a számolvasás, akkor a sztringből sscanf-fel kikapom a számot, oszt’ jónapot. De persze jó az is, hogy számjegyenként összerakod. Egy jó tanács: ha szoftverrel akarsz foglalkozni, szokj rá arra, hogy olyan kódot írsz, amit rajtad kívül mások is el tudnak olvasni. Általánosságban véve elmondható, hogy a futóindexeket leszámítva nem szeretjük az egy-két karakteres változóneveket, mert a farkam sem tudja, hogy mit akarsz jelölni velük. Olyan elnevezéseket használj, amik rövidek, de egyértelműek – utóbbi a legfontosabb. (Az egyértelműség szkópja pedig azokra terjed ki, akiknek a kódot írod.) Nem lenne egy hátrány az sem, ha zárójeleznéd a kondíciókat. És ha nem muszáj, ne használd a fórum kódbeágyazó funkcióját, mert az egy rakás szar. Inkább használd pl. a pastebint. Link to comment Share on other sites More sharing options...
kléni 7 Share Posted February 27, 2016 A feladat kiírásában az van, hogy szóköz vagy újsor. Ki vagyok én, hogy olyan programot írjak, ami ettől eltér? Link to comment Share on other sites More sharing options...
Fujitsu 809 Share Posted February 27, 2016 Hát én ezt magamban úgy fordítanám, hogy white space; de ha szó szerint értelmezzük, akkor tényleg csak ezek lehetnek. Írd meg mindkét módon, oszt' válasszon a tanár. A karakterenkénti scanf-nek viszont nincs értelme; akkor már inkább használd az sscanf-et, ahogy írtam. Link to comment Share on other sites More sharing options...
arpsoft 12 Share Posted February 28, 2016 Namost nekem már a feladat kiírásával gondom akadt. 1. Honnan tudom, hogy helyes az eredmény, ha nem tudom, melyik számot adták meg a gyerekek a programjuknak? Értsd: benne van-e az összes szám a kimenetben. 2. A kiírás szerint bárhol előfordulhat szóköz illetve új sor. Akár a számokon belül is. Honnan tudom, hogy hol kezdődik és hol végződik mondjuk egy 4 jegyű szám, amiben van 2 új sor? Amennyiben ez mind nem így értelmezendő, én előállítanám magamnak a helyes karaktersorozatot úgy, hogy nincs benne egy szóköz meg új sor sem, kiirtanám a bemenetről is ezeket, aztán összehasonlítanám a két eredményt. Link to comment Share on other sites More sharing options...
Fujitsu 809 Share Posted February 28, 2016 Az N-t, vagyis hogy melyik számig kell felírni a sort, paraméterül kapja a függvény. Az meg azért elég triviális, hogy a számok számjegyei között nem lehet szóköz vagy új sor, ha egyszer az a szeparátor karakter. Persze lehetne pontosabb a feladat szövege, de engem pl. jobban zavar, hogy nincs kikötve, N értéke mekkora lehet. (Az int, az nekem lehet 2 vagy 4 bájtos is, ráadásul ha csak pozitív egész lehet, akkor unsigned.) De mivel ez valami iskolai feladat lesz, nem érdemes fennakadni most ezeken. A te ötletedhez kell dinamikus memóriakezelés, és ha az N véletlenül egy 32 bites unsigned int, akkor akár (2^32 – 1) / 2 * 4 bájtnyi memória, azaz 8 GB RAM nem is lesz elég. Felejtő. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now