Vydělávej až 160.000 Kč měsíčně! Akreditované rekvalifikační kurzy s garancí práce od 0 Kč. Více informací.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Libor Šimo (libcosenior):30.4.2013 7:47

Vie niekto z vás preložiť tento kód do matematiky? Zatiaľ som nepochopil ako pracuje.

#include <stdio.h>
#define _ F-->00||F-OO--;

int F=00,OO=00;

main()
{
    F_OO();
    printf("%f\n",4.*-F/OO/OO);
}

F_OO()
{
            _-_-_-_
       _-_-_-_-_-_-_-_-_
    _-_-_-_-_-_-_-_-_-_-_-_
  _-_-_-_-_-_-_-_-_-_-_-_-_-_
 _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
 _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
 _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
 _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
  _-_-_-_-_-_-_-_-_-_-_-_-_-_
    _-_-_-_-_-_-_-_-_-_-_-_
        _-_-_-_-_-_-_-_
            _-_-_-_
}
Editováno 30.4.2013 7:51
Odpovědět
30.4.2013 7:47
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Odpovídá na Libor Šimo (libcosenior)
Luboš Běhounek Satik:30.4.2013 9:10

Odhaduje PI podle té vyčárkované plochy

Nahoru Odpovědět
30.4.2013 9:10
https://www.facebook.com/peasantsandcastles/
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Luboš Běhounek Satik
David Hartinger:30.4.2013 9:14

Wow, sice znám vztah mezi PI a obsahem a obvodem, ale z toho kódu bych to nepoznal :D

Nahoru Odpovědět
30.4.2013 9:14
You are the greatest project you will ever work on.
Avatar
Luboš Běhounek Satik:30.4.2013 9:15

Dá se to přepsat třeba na tenhle tvar:

#include <stdio.h>
#define _ plocha-->0||plocha-r--; // makro, kazde podtrzitko v kodu se nahradi timto kodem

int plocha=0,r=0;

void spocitej()
{
             _-_-_-_
        _-_-_-_-_-_-_-_-_
     _-_-_-_-_-_-_-_-_-_-_-_
   _-_-_-_-_-_-_-_-_-_-_-_-_-_
  _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
  _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
 _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
 _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
 _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
 _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
  _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
  _-_-_-_-_-_-_-_-_-_-_-_-_-_-_
   _-_-_-_-_-_-_-_-_-_-_-_-_-_
     _-_-_-_-_-_-_-_-_-_-_-_
         _-_-_-_-_-_-_-_
             _-_-_-_

}

void main()
{
     spocitej();
     printf("%f\n",4.0*-plocha/(r*r));
     getchar();
}
Nahoru Odpovědět
30.4.2013 9:15
https://www.facebook.com/peasantsandcastles/
Avatar
Odpovídá na Luboš Běhounek Satik
Luboš Běhounek Satik:30.4.2013 9:28
#define _ plocha-->0||plocha-r--;

Odzávorkované, aby bylo vidět, co k čemu patří:

(plocha--)>0||plocha-(r--);

Ta část za || se (kvůli optimalizacím) provede jen když první část vyjde false - tedy když obsah proměnné
plocha <= 0 .

Např. první řádek funkce spocitej() se pak rozvine do

plocha-->0||plocha-r--;-plocha-->0||plocha-r--;-plocha-->0||plocha-r--;-plocha-->0||plocha-r--;
Editováno 30.4.2013 9:28
Nahoru Odpovědět
30.4.2013 9:28
https://www.facebook.com/peasantsandcastles/
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Luboš Běhounek Satik
David Hartinger:30.4.2013 10:20

Aha, to makro mi tam chybělo :D Dík.

Nahoru Odpovědět
30.4.2013 10:20
You are the greatest project you will ever work on.
Avatar
Lukáš Hruda
Tvůrce
Avatar
Lukáš Hruda:30.4.2013 10:57

To je ale dobrá prasárna :D Ale vypadá to pěkně s tim kolečkem vevnitř :)

 
Nahoru Odpovědět
30.4.2013 10:57
Avatar
Libor Šimo (libcosenior):30.4.2013 18:05

Mňa by celkom zaujímalo, ktorá hlavička to vymyslela. 8-)

PS.
Pokúšal som sa napísať program, ktorý by priebežne vypisoval aktuálne hodnoty premenných plocha a r (podľa Satik-a), ale nejak sa mi nedarilo.

Editováno 30.4.2013 18:09
Nahoru Odpovědět
30.4.2013 18:05
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Lukáš Hruda
Tvůrce
Avatar
Odpovídá na Libor Šimo (libcosenior)
Lukáš Hruda:30.4.2013 18:37

Stačí když změníš to makro:

#define _ plocha-->0||plocha-r--; printf("%d  %d\n",plocha,r);
 
Nahoru Odpovědět
30.4.2013 18:37
Avatar
Libor Šimo (libcosenior):30.4.2013 19:51

Super jednoduché. Díky.
Stále zisťujem ako do toho málo vidím.

Ešte by ma zaujímalo, ako napadlo Satik-a zmeniť:
printf("%f\n",4.-F/OO/OO);
na
printf("%f\n",4.0
-F/(OO*OO));

Nahoru Odpovědět
30.4.2013 19:51
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Honza Bittner
Tvůrce
Avatar
Odpovídá na Libor Šimo (libcosenior)
Honza Bittner:30.4.2013 19:56

jelikož

15/3/5 = 1;
a
15/(3*5) = 1;

Editováno 30.4.2013 19:56
Nahoru Odpovědět
30.4.2013 19:56
FIT ČVUT alumnus :-) Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/tenhobi/ama.
Avatar
Honza Bittner
Tvůrce
Avatar
Honza Bittner:30.4.2013 19:58

když nějaké číslo_X dělíš číslem_a a výsledek pak číslem_b tak to je stejné jako vydělit číslo_X součinem čísla_a a čísla_b

Nahoru Odpovědět
30.4.2013 19:58
FIT ČVUT alumnus :-) Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/tenhobi/ama.
Avatar
Odpovídá na Honza Bittner
Libor Šimo (libcosenior):1.5.2013 6:27

Ďakujem. Predpokladám, že je to jedna zo základných znalostí základnej školy, ale od tej som už vzdialený 40 rokov, tak prepáčte za neznalosť.:[

Nahoru Odpovědět
1.5.2013 6:27
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Avatar
Honza Bittner
Tvůrce
Avatar
Odpovídá na Libor Šimo (libcosenior)
Honza Bittner:1.5.2013 10:53

:D .... nevím jestli se to učí na ZŠ ale dá se to odvodit :)

Je to to samé jako když máš X - A - B = Y .. tak funguje X - (A+B) = Y

:P
Nahoru Odpovědět
1.5.2013 10:53
FIT ČVUT alumnus :-) Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/tenhobi/ama.
Avatar
Odpovídá na Honza Bittner
Libor Šimo (libcosenior):2.5.2013 9:51

Je na čase aby som to uzavrel a odpovedal na moju pôvodnú otázku. :)
Preložené do matematiky to znamená, že funkcia F_OO() za pomoci makra #define _ F-->00||F-OO--; vráti hodnoty:
F = -201
OO = -16
Vzorec 4.*-F/OO/OO teda 4 * -(-201) /-16 / -16
= 3,140625

Nahoru Odpovědět
2.5.2013 9:51
Aj tisícmíľová cesta musí začať jednoduchým krokom.
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 15 zpráv z 15.