Archiv diskusního fóra o matematice, 2006–2026
Ahojte nevite nahodu nekdo jak udelat proceduru max3 pomoci curryngu,ze se ma zjistit max 3 cislice prave pomoci curryngu,normalne proceduru bez pomoci curryngu tu vim ale s tim to si nevim rady.Dekuji moc.
Offline

A kde je konkrétně problém? Třeba procedura pro nalezení většího čísla ze dvou zadaných by vypadala takto:
span style="color: #808080; font-style: italic;">;; vypíše 5Offline
Takze kdyz mam naprogramovat proceduru curry-max3,pomoci niz bude proveden currying max3 pro hledani maxima ze tri prvku,tak to bude obdobne ze
Offline
takze ten muj problem ten priklad co mam by mel vypadat takhle:
span style="color: #808080; font-style: italic;">;; vypíše 7 Offline

Ne, zkoušela sis to projet ve schemu? Hodí ti to bad syntax, protože za ifem mohou následovat pouze dvě větve, kdežto ty tam máš tři (a, b, c). Ale to zanoření lambd tam máš správně.
Offline
ahaa,jenom dve,tak ti dekuji za osvetleni,jsem totoz zatim jen zacatecnice vis,ale jak to mam teda tedka udelat,aby to bylo spravne,nevis?
Offline

If má snad ve všech programovacích jazycích prakticky stejnou syntaxi: if <podmínka> <true> <false>. Když je <podmínka> pravdivá, provede se větev <true>, když je nepravdivá, provede se (pokud je v kódu) větev <false>. Jinou větev tam ani logicky dostat nelze.
V zásadě mě napadají dva způsoby řešení, ale asi by se jich našlo ještě víc. Komplikované řešení je přes několik ifů a podmínek typu když je a>b a zároveň je a>c, potom je největší a apod. Druhá možnost, značně jednodušší, je napsat si ještě proceduru na zjištění maximálního čísla ze dvou vložených, která ti to značně zjednodušší. Dostál to myslím ukazoval i na nějakém cvičení.
Offline
Offline

ee :-). Teda skoro. Tu proceduru máš špatně, protože ta procedura nic nevrací. A máš tam špatně závorky, na konci jich pár chybí. Zkus si vážně ten kód hodit nejdřív do schemu, vypíše ti základní chyby. Momentálně ti tam chybí ty větve <true> a <false>, viz výše.
Jinak myšlenka toho řešení je taková: Máš tři čísla, a, b, c . Maximální číslo najdeš tak, že porovnáš číslo a s maximální hodnotou čísel b, c, kterou zjistíš právě pomocí procedury max2. Když je a větší, vypíšeš a. Když je větší maximum z b, c, vypíšeš maximum z b, c. Je to jednudché jako facka :-).
Jestli nerozumíš syntaxi, prohlédni si nějaké vzorové příklady, hlavně na podmínky - if. Bralo se to na konci první přednášky [PDF].
Offline
No vidis ja zapomela,sem to psala ve spechu vis:-).Ted sem z toho teda peken zmatena:-(Vim ze je to lehky priklad,ale ty mas urcite zkusenosti s programovanim nebo snecim podobnym,ja teprve zacinam a reknu ti ze je to pekne tezky,hlavne to musi clovek pochopit.
Offline

Nóóóó ééééé....... Já už z Paradigmat 1 mám jeden zápočet :o).
Jestli jsi doteď něco ze schemu nepochopila, tak věř, že už bude jen hůř a hůř a látka bude stále těžší a méně chápavější. Takže když si necháš ujet vlak hned na začátku, nemáš šanci to dohnat. Tudíž jestli chceš tenhle předmět udělat, ponoř se na hodně dlouho do těch Vychodilových skript (je to skvělá zábava, fakt, já to přečetl loni asi třikrát) a pár nocí si vyhraď pouze na radovánky se schemem. Při zápočtech a zkouškách se příklady píší přímo z hlavy na papír, bez možnosti kontroly dr.schemem, který by tě třeba upozornil na nějaké chyby, takže když ten jazyk nebudeš znát dokonale včetně všech výjimek a krizových a mezních situací, neuděláš to.
Offline
ty to opakujes?,takze tam ani nemusis chodit ze kdyz ho uz mas ne.Hmm asi jo,mela bych nad tim hoodne posedet,jenze je toho hodne,kdyz budu sedet jen nad timhle taknebudu mit cas na to ostatni ze:-(.Uvidime.Nemohl by si mi prosim te napsat jak by to melo spravne byt,ze by si mi to vysvetlil,byla bych ti mooc vdecna.
Offline

Tak já si tipnu:
Offline
myslis ze je to takhle ale jeste se to musi nejak zmenit ze,kdyz to mam mit proceduru max3
Offline

Respektive já to mám udělané takhle:
Offline
Aha,ale neni to zbytecne slozi¨t,na to bych neprisla teda:-),to predtim od kondra to funguje.
Offline