- Magga: PLEX: multimédia az egész lakásban
- Brogyi: CTEK akkumulátor töltő és másolatai
- Pajac: tpm.msc
- M0ng00se: Hardvert áruhitelre?
- Steven: Sokat utazó kávéfüggők ide!
- f(x)=exp(x): A laposföld elmebaj: Vissza a jövőbe!
- sziku69: Fűzzük össze a szavakat :)
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Lalikiraly: SÜNI energiaital.
- Luck Dragon: Asszociációs játék. :)
Aktív témák
-
Tele von Zsinór
őstag
1, Igen, ez tény, de most mondjuk nem ez volt a cél, tökéletes volt a fix útvonal.
2, Ma tanultuk a függvényeket :)
3, Viszont azt még nem tudom, hogy függvénynek pontosan hogy is lehet paramétert átadni. Én arra gondoltam, hogy úgyis látja az összes változót, amit a program használ.
Köszi az épületes hozzászólást! -
Miracle
senior tag
''Ugy latom, ezt komolyan (nem pedig gunykent) irtad - am ez sajnos nincs igy a gyakorlatban.''
Az a tanár, akiről szó van, amikor én jártam, megemlítette, hogy GOTO van, de nem mondja el, nem kell. Ezek szerint szerencse.
''1. Eloadason megtudjuk, hogy a goto gonosz, semmikeppen nem szabad hasznalni. Aztan az eloado felir egy algoritmust, aminek kb a fele GOTO utasitasokbol all - ''khmm, ez igy volt egyszerubb'' ''
Itthon vagyunk. ilyen embereknek kell tanítani. ez a király. Most nem akartalak megsérteni, én is találkozok olyan kotatókkal, akik talán jobb lenne, ha nem oktatással keresnének pénzt(mármint a diákoknak) de valamiért az egyetem vezetőit kevéés érdekli, hogy valaki alkalmas-e a tanításra, az, hogy havonta publikál egy cikket fontosabb.
''2. Gyakrolaton kis papir, hogy milyen legyen a program (ne legye benne goto, legyen szigoruan tipusos, stb). Diak: ''Mi az a szigoruan tipusos?'' Gyakvezer: ''Ohm, khm, hat azt igy pontosan igazan nem is tudom'' ''
Az is szép, amikor nem felkészült gyakvezek tartanak gyakot. volt egyhez szerencsém, túléltem, azóta rendesen utánakérdezek a gyakveznek. a Miénk(bevezetés a programozáshoz tárgy) pl. olyan volt, hogy az otthon elkészített struktogrammot rendszeresen elcseszte, és amikor mi(a diákok) kijavítottuk, akkor általában nem fogta fel, hogy mivan, és vagy aztmondta, hogy mindegy(és táblát töröl), vagy majd holnapra megnézi. Egyszer a táblánál oldottam meg egy feladatot, és elmagyaráztam, hogy mit csinál, és ő volt az utsó a teremben, aki nem fogta fel, már azok is értették, akiknek később nem lett gyakjegyük.szar, hogy ilyenek tanítanak. -
dabadab
titán
''Arra celoztam, hogy a szoftverprojektek nagy resze modulokban irodik meg, egy programozo megir egy modult, ojjektumot, akarmit, abba mas nem nez bele.''
Ez azert nem nagyon mukodik evtizedekig futo projekteknel, de mar egy ev alatt is eleg jelentos szemelyi valtozasok lehetnek.
''es mivel a programozok nagy resze goto nelkul is nehezen olvashato kodot gyart, eleg surun egyszerubb ujrairni mint idegenkent megerteni, debuggolni, fejleszteni''
Szerintem azert a legtobb programozo inkabb nem irna ujra par ezer sor mukodo programot, csak azert, hogy kijavitson egy bugot (es persze a fonokei is ennek megfeleloen osztjak a budzset).
''Legalabbis en utalok mas fejevel gondolkodni, par honap szunet utan a sajat kodomat is nehezen latom mar at.''
Ugye, ugye, a GOTO-k ;] -
dabadab
titán
''akkor nálatok(...hol is?) nagyon jók a tanárok.''
Ugy latom, ezt komolyan (nem pedig gunykent) irtad - am ez sajnos nincs igy a gyakorlatban.
Kedvenc torteneteim (Kando):
1. Eloadason megtudjuk, hogy a goto gonosz, semmikeppen nem szabad hasznalni. Aztan az eloado felir egy algoritmust, aminek kb a fele GOTO utasitasokbol all - ''khmm, ez igy volt egyszerubb'' :)
2. Gyakrolaton kis papir, hogy milyen legyen a program (ne legye benne goto, legyen szigoruan tipusos, stb). Diak: ''Mi az a szigoruan tipusos?'' Gyakvezer: ''Ohm, khm, hat azt igy pontosan igazan nem is tudom''
Szoval a goto tiltasatol meg senki nem lesz jo tanar. -
dabadab
titán
válasz
Tele von Zsinór #16 üzenetére
Nem rossz, de ezen meg lehetne csiszolni.
Konkretan:
1. ha egy scriptben meg akarod hivni sajat magat, akkor a fixen (foleg eleresi utvonallal egyutt) bedrotozott nev helyett hasznald a $0 parametert (az az a nev, amivel meghivtak a scriptet)
2. de inkabb ne is hivja meg magat a script, mert az plusz egy bash betolteset is jelenti, vagyis nem tul hatekony, hasznalj inkabb fuggvenyeket, pl:
function qwe(){
echo $1
qwe ''${1}x''
}
3. az algoritmus se tul hatekony, jobban mukodne, ha ket elemet adnal at + egy szamlalot, hogy meg hany elemet kell kiszamolni. Ha pl a hatodik elemre vagy kivancsi, akkor igy neznek ki a fuggvenyhivas parameterei:
1 1 4
1 2 3
2 3 2
3 5 1
Es itt mar nem kellene tovabb hivni, mert a 3+5-bol kiszamolhato a hatodik elem.
(Persze a Fibonacci-sorozat szamolasa a tokeletes peldaja a ''rekurzivan is meg lehet csinalni, csak ugy bonyolultabb es kevesbe hatekony'' algoritmusoknak)
[Szerkesztve] -
dabadab
titán
''Mivel a forráskódok 98%-át nem azért írják, hogy azt később valaki megtanulja mint a verset, az áttekinthetőség imho feláldozható lenne a hatékonyság oltárán....''
Nekem az a dolgom, hogy par tiz megas forrasokban turkaljak (mokas dolog a '80-as evekben irt szubrutinokkal osszefutni :) ). Ha vki ezzel a felvetessel jonne, hogy az attekinthetoseg nem fontos, akkor... akkor nem ertenek vele teljesen egyet :)
A mikrokontrollerek nemileg elutnek a ''mainstream'' programozastol a HW korlatok miatt (es ezek a korlatok azert jotekony hatassal vannak a bonyolultsagra is), de egy ''igazi'' szamitogepen futo programnal maskepp neznek ki a dolgok.
''a nyolcvanas évek végén hátra kellett volna dőlni, hogy most már nyugi van, és hagyni, hogy a programozó hatékonyan végezze munkáját. Szabadon.''
Sut rolad a mikrokontrolleres hatter :) Egyebkent meg Dijkstra a ''Go To Statement Considered Harmful'' c. szosszenetet '68-ban tette kozze ([L]http://www.acm.org/classics/oct95/[/L]), szoval egyaltalan nem uj talalmany a dolog, es en a magam reszerol lelkesen tamogatom azon elkepzeleset, hogy Assemblynel magasabb szintu nyelveken az ember ne hasznaljon gotot. -
escie
őstag
az NYF-en...
amúgy tök komoly...
a tanár elmagyarázta, hogy ilyen is van. aztán kijelentette, hogy nála, ez meg is ér egy pecát, ha zh-n alkalmazzuk... :D
nem csak ezért nem szeretem használni(bár nem vagyok egy nagytudású programozó, inkább csak hobbi), hanem mert egyszerűen nem elegáns(szvsz.).
persze, ha pénzt kéne keresni programozással, nem hiszem, hogy az eleganciával törődnék, mindemellet kerülném, ahol lehet. -
Tele von Zsinór
őstag
Na igen, ez sem hülyeség. A gyakvez jó fej, előző órán sok kérdésére tudtam a választ, aztán a végén sikerült olyat kérdezni, amin sokat gondolkodott, és a végére sem volt biztos megoldás :).
-
Husky
aktív tag
Termeszetesen elismerem, hogy magasszinten priman lehet goto nelkul programot irni (~60
meganyi 'magasszintu' forraskodomban osszesen kettot talaltam), de akkor sem ertem, miert kell a
hasznalatat egyessel buntetni... :) .... Egyszeruen vannak esetek amikor a goto frappansabb mint
valami a=1; while(a) { .....a=0.....} megoldas... :)
A fenti 2 goto-s atlagomat rontva: viszont rengetegszer szoktam egy fuggvenybol tobb ponton is
kilepni, a sok return meg gyakorlatilag egyenerteku a goto end; end: return; szentsegtoressel. :D
> gondolod, hogy a szoftverek 98%át sosem fejlesztik tovább? szerintem inkább fordítva...
Arra celoztam, hogy a szoftverprojektek nagy resze modulokban irodik meg, egy programozo megir
egy modult, ojjektumot, akarmit, abba mas nem nez bele. (Jo, auditalt forraskodnal van szenvedo
alany is.) ... es mivel a programozok nagy resze goto nelkul is nehezen olvashato kodot gyart,
eleg surun egyszerubb ujrairni mint idegenkent megerteni, debuggolni, fejleszteni... Legalabbis en
utalok mas fejevel gondolkodni, par honap szunet utan a sajat kodomat is nehezen latom mar at. :D
> esetleg megérne egy témát a got vs no-goto?
Nah, flame monnyon le. En is csak azon akadtam ki, hogy a helyes programozas modszertana
helyett boszorkanyuldozest tanitanak az elsoeveseknek... :) -
Miracle
senior tag
válasz
Tele von Zsinór #16 üzenetére
Csa úgyis leszedte volna az agyadat. meg a gyakvezek is.
-
Tele von Zsinór
őstag
Igazatok van, ha ott a pandora, akkor mit keres az extrán?
[L]http://people.inf.elte.hu/maerlyn/fibo.sh[/L]
És látom, azért komoly viták merültek fel a cimkékkel kapcsolatban. Először azért gondoltam a cimkékre, mert még nem mélyültük el a linuxban annyira, hogy a bonyolultabb szerkezetekkel tisztában legyek. De előreolvastam egy kicsit, és ott találtam a case pontos szerkezetét, és végül az lett a megoldás. -
Miracle
senior tag
''Hajjaj, ezek szerint pl. 10 év sima assembly és 5 év mikrovezérlő programozgatás után az ember ''
akkor te abba a minimális százalékba tartozol, akinek a GOTO tényleg fontos, de azt be kell látnod, hogy a programozók nagyrésze valamilyen magasszintű nyelven, nem-hatékony szoftvereket fog írni, ott meg sokkal jobb a GOTOk nélkül.
''melldöngetve, akik még nem láttak pl. mikrovezérlőben FFT-t (na jó, egy F-et lehagyhatun''
szerintem lehet, hogy láttak, de észreverrék azt is, hogy a programozóknak nagyságrendileg kisebb hányada foglalkozik ilyenekkel, mint magyasabb szintű nyelveken való absztrakt programozással, így mondjuk egy teljesen alapsz szintű, bemelegító tárgyban, mint amilyen a ''programozási környezet'' állnéven emlegetett BASH(+DCL) scripting tárgy inkább a mainstream-felé kellene húzni, aki meg nem akar ide tartozni, az majd akkor döntse el, amikor már látja, hogy mizújs a nagyvilágban, és tudja, hogy ő meghal ha nem ultra-hatékony C programokat ír majd. a többség nem ilyen.
''Mivel a forráskódok 98%-át nem azért írják, hogy azt
később valaki megtanulja mint a verset, az áttekinthetőség imho feláldozható lenne a hatékonyság ''
gondolod, hogy a szoftverek 98%át sosem fejlesztik tovább? szerintem inkább fordítva...
''nnomindegy, ez amúgy is flame-téma, és amúgy is a gyakorlati és elméleti programozók közti bulinak számít... én meg egyik csoportba sem tartozom.''
még én sem, de hajlok az absztraktabb programozást támogatni. amúgy télleg flame, meg off, sorry akir zavar.
szerk : esetleg megérne egy témát a got vs no-goto?
[Szerkesztve] -
Husky
aktív tag
Hajjaj, ezek szerint pl. 10 év sima assembly és 5 év mikrovezérlő programozgatás után az ember
inkább már ne menjen programozónak, mert ha a JMP C-beli megfelelőjét meri használni, akkor jól
meghúzzák, mert absztrakció rulez... :(
Oké, végülis van valami ebben a kód-áttekinthetetlenségben, de sajna ezt mindig azok hirdetik
melldöngetve, akik még nem láttak pl. mikrovezérlőben FFT-t (na jó, egy F-et lehagyhatunk :D )...
aztán az utókorban csak az marad meg, hogy a GOTO rossz, nem pedig az hogy csak egy adott
rutinszint felett célszerű használni... ha ehhez még hozzáveszem hogy anno a 10: 20: 30: 40:
korszakban tényleg könnyű volt szénné goto-zni a kódot, és a goto-k csökkentését célzó hadjárat
végül megsemmisítési hadjárattá vált, akkor kicsit kezd olyan feelingem lenni, hogy a nyolcvanas
évek végén hátra kellett volna dőlni, hogy most már nyugi van, és hagyni, hogy a programozó
hatékonyan végezze munkáját. Szabadon. Mivel a forráskódok 98%-át nem azért írják, hogy azt
később valaki megtanulja mint a verset, az áttekinthetőség imho feláldozható lenne a hatékonyság
oltárán.... nnomindegy, ez amúgy is flame-téma, és amúgy is a gyakorlati és elméleti programozók
közti bulinak számít... én meg egyik csoportba sem tartozom. :DDD -
Miracle
senior tag
Nézd: Racionális érveket nem tudok mondani(nincs matematikailag levezetve, mert a hiba nem a GOTOval van, hanem a mi agyunkkal), csak a következőt:
1968ig a progrramozásban megjent __MINDEN__ olyan technika, technológia, amit ma is használunk, leszámítva talán a generatív programozást. de generikus már volt. egyszerűen minden. Mi volt azóta a fejlsődés? 2 iránya volt:
1: hatákonyság
2: Megnehezíteni, hogy a programozó hibázzon
és az utóbbi 20 évben az utóbbi messze hangsúlyosabbá vált, mint az előbbi.
A tapasztalat azt mutatta, hogy ahogy a szoftverek nőnek(míly meglepő) a az adott hibák, amelyek akár tetszik akár nem, ugyan olyan arányban fordultak elő kisebb, és nagyobb szofverekben, azaz nagyobb szoftverekben többször, mint a kisebbekben, egyre nehezebben javíthatók, mert egyre több idő kell a hiba megkereséshez, és még több a jvításához. És a programozás úttörői igen hamar levágták, hogy a GOTO messze a legynagyobb hibaforrás. A programozó örült, hogy megtakarított 200 ASM műveletet egy GOTOval, és hazudik az a programozó, aki nem szeret hatékony algoritmust írni, még a JAVA programozók is odafigyelnek erre, pedig ott általában tényleg keveset számít, és egy rosszúl elhelyezett GOTO, vagy russzul kitalált, vagy nem emgfelflően implementált invariáns hasravágta az egész szoftot, és hihetetlenül sok idő telt bele, mire megtalálták, hogy mi nem jó, mert az algoritmusok hatékonyak voltak, de nem voltak megfelflően absztraktak, azaz a programozó nem tudta elsőre átlátni, hogy mit akart az a hülye munkatársa csinálni azzal az össze-vissza lépkedő 8 GOTOval, hacsak nem írt mellé egy 8 oldalas commentet, amivel már könnyen meg lehetett érteni, a kommentek írása még a mainál is silányabban ment, pedig most sem olyan jó a kommentelési morál, élő példa vagyok én, ha csak egy kis esély is van rá, hogy egy adott kódot nem kell bemutatnom, vagy nem tartozik szorosan a kiírrt feladathoz nem kommentelem be, mert megy vele az időm, de ha nem csinálom meg is meg tudom magyarázni. tehát lehet, hogy egy 8 oldalas kommenttel már egyből lejönne a másik programozónak is, hogy mit akart az előző azzal a 8 gotoval, és hogy milyen über-király-táps-hatékony algoritmust is alkotott, de ha van benne egy icipici hiba, akkor azt javítani szenvedés, és a továbbfejlesztés megintcsak komoly nehézségekbe ütközik. a programozás-technológia az elmúlt 30 évben az egyre magasabb absztrakció felé lépett el(nem számolva a power-appokat fejlesztők elhanyagolható hányadával, akik C-ben, különböző ASM nyelveken, illetve hasonlókon programoznak) . a GOTO meg az absztrakció ellentéte, a legjobb az lenne, ha eredendően ki lehetne irtani az előbb említett csoport agyán kívül mindenkijéből, mert amikor 10en dolgoztok egy projekten, akkor elöhetnek a deviáns gondolatok a fejedben, amikor 8 órája az egyik társad kódját böngészed, aki(már nem dolgozik ott/beteg/szarik a fejedre) hogy miért nem működik a programja, és a GOTO-k miatt nincs szép tiszta algoritmusa, amit fel tudsz fogni első ránézésre, hanem végig kell bogyrásznod. a GOTOt felejtsd el. és arra ne építs, hogy az utóbbi csoporba fogsz tartozni, neked akkor kell a GOTO, mert
1: annak a valószínűsége kicsi
2: rászokni nem kerül sokba, leszokni róla viszont igen kemény. -
Husky
aktív tag
Magyarázza mán nekem el egyszer valaki racionális érvek segítségével, miért nem jó a goto.
Jó, egyszer egy pofa kitalálta, hogy az nem jó. De miért száműzzem én a goto-t csak azért mert
''magasszinten'' programozok, mikor legvégül úgyis csak JMP, JE, JNE, JC, JNC utasítások
halmaza lesz az egész kóceráj? -
escie
őstag
huhú, nálunk karó jár címkéért, meg goto-ért!! :D
-
Miracle
senior tag
válasz
Tele von Zsinór #8 üzenetére
és van annak valami oka, hogy nem a kitűnő Pandorára teszed fel egy cp paranccsal?
szerk: nomeg nekem nem jön be így sem... stop suxx, használd az egyetemi szervereket, azér vannak.
[Szerkesztve] -
Tele von Zsinór
őstag
Na, itt a link, várom a véleményeket:
[L]http://www.extra.hu/fasigabi/fibo.sh[/L]
Az extra kicsit állat,de le lehet az tölteni.
[Szerkesztve] -
eddie303
őstag
Még egy bíztató szó: Dobjad, érdekelne engem is, bár Linux nálunk csak 2. félévtõl lesz :)
-
Miracle
senior tag
válasz
Tele von Zsinór #5 üzenetére
''Ha érdekel valakit forráskód, belinkelhetem.''
dobjad! -
Tele von Zsinór
őstag
Nem vágom, kezdő vagyok linuxban, azaz elte progmaton gólya. Azonban mostanra a kérdés tárgytalan, sikerült megoldanom több egymásba rakott case-el, és remekül működik. Nagy számoknál lassú, de itt most nem a gyorsaság a cél. Ha érdekel valakit forráskód, belinkelhetem.
-
Miracle
senior tag
válasz
Tele von Zsinór #1 üzenetére
nem vágod te a shell scriptek lényegét... milyen függvény? hívja meg magát! maga a script a függvény. indítsa el magát úgy, hogy a paramétert csökkenti. ezzel viszont vigyázni kell, a shell nem a memória és processzordő-takarékosságáról híres, ha nincs a linuxod belőve pöpecül(ahogy az enyém sincs) be tudod egy évgtelen rekurzióval rohasztani annyira, hogy egyszerűbb legyen újraindítani.
és ha leírod azt, hogy goto, és nem VCL konzol előtt csücsülst, akkor üss a saját kezedre, de olyat, hogy fájjon. -
Flashy
veterán
bizonyos shellekben van goto parancs, másokban nincs. a goto-t amúgyis mindenhol üldözik. használj függvényeket, vagy while ciklust. a goto ciklusból úgyis valami feltétel hatására lépnél ki.
-
Flashy
veterán
válasz
Tele von Zsinór #1 üzenetére
mégse
[Szerkesztve] -
Tele von Zsinór
őstag
Hello,
valószínűleg kezdőnek tűnik a kérdés (mivel az is), de linux alatt egy parancsfileban hogy lehet cimkéket definiálni ill. odaugrani? Egy olyan progit kell írnom, ami kiszámolja az x-edig elemét a Fibonacci--sorozatnak, ezt én rekurzívan képzeltem el, ahhoz meg cimkék kellenének.
Zsinor
Aktív témák
Hirdetés
- Lenovo ThinkPad T14 3 Gen 16/256GB SSD, Újszerű, 1 Év Garanciával
- Xiaomi 15 Ultra 512GB, Kártyafüggetlen, 1 Év Garanciával
- Samsung Odyssey OLED G8! 32"/4k/240hz/0,03ms/10BIT/Freesync-G-sync/HDMI 2.1/Smart Monitor
- Új 512GB WD SN5000S Gen4 x4/ Steam Deck ready/ garancia/ ingyen fox
- i7 8700/ RX6500/ 32GB DDR4/ 512GB m.2/ garancia/ ingyen foxpost
- Több Lenovo Thinkpad x1 carbon gen 4 / 5 / 6 / 7 X1 Yoga gen3 6-9. gen i7, i5 procik
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
- Bomba ár! Lenovo ThinkPad T15 G1 - i5-10GEN I 16GB I 256GB SSD I 15,6" FHD Touch I Cam I W11 I Gari!
- Bomba ár! Lenovo ThinkPad P50 - i7-HQ I 16GB I 256SSD I Nvidia I 15,6" FHD I Cam I W10 I Gari!
- Alkatrészt cserélnél vagy bővítenél? Nálunk van, ami kell! Enterprise alkatrészek ITT
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PC Trade Systems Kft.
Város: Szeged