<?xml version="1.0"?>
<flowgorithm fileversion="2.11">
    <attributes>
        <attribute name="name" value=""/>
        <attribute name="authors" value="fox"/>
        <attribute name="about" value=""/>
        <attribute name="saved" value="2020-01-10 08:18:34 odp."/>
        <attribute name="created" value="Zm94O1VLMzE4UFI7MjAxOS0xMi0zMDsxMTowNDoyMyBkb3AuOzIyOTY="/>
        <attribute name="edited" value="Zm94O1VLMzE4UFI7MjAyMC0wMS0xMDswODoxODozNCBvZHAuOzIxOzI0NTU="/>
    </attributes>
    <function name="Main" type="None" variable="">
        <parameters/>
        <body>
            <declare name="kod" type="Integer" array="False" size=""/>
            <declare name="a" type="Integer" array="False" size=""/>
            <declare name="b" type="Integer" array="False" size=""/>
            <declare name="c" type="Real" array="False" size=""/>
            <output expression="&quot;Zadejte k&#243;d operace (1 &#8230; s&#269;&#237;t&#225;n&#237;, 2 &#8230; ode&#269;&#237;t&#225;n&#237;, 3 &#8230; n&#225;soben&#237;, 4 &#8230; d&#283;len&#237;):&quot;" newline="True"/>
            <input variable="kod"/>
            <comment text="Podprogram (funkce) pro zad&#225;n&#237; &#269;&#237;sla"/>
            <assign variable="a" expression="ZadejCislo(&quot;A&quot;)"/>
            <assign variable="b" expression="ZadejCislo(&quot;B&quot;)"/>
            <if expression="kod == 1">
                <then>
                    <comment text="Podprogram (funkce) pro se&#269;ten&#237; 2 zadan&#253;ch &#269;&#237;sel. Podprogram m&#225; 2 vstupy - hodnota ulo&#382;en&#225; v prom&#283;nn&#233; 'a' (p&#345;edstavuje skute&#269;n&#253; parametr) se nakop&#237;ruje do form&#225;ln&#237;ho parametru 'aa', hodnota 'b' se nakop&#237;ruje do parametru 'bb'. Hodnota sou&#269;tu ulo&#382;en&#225; v lok&#225;ln&#237; prom&#283;nn&#233; 'cc' je v&#253;stupem funkce. V&#253;stupn&#237; hodnota funkce je po ukon&#269;en&#237; funkce ulo&#382;ena do prom&#283;nn&#233; 'c'."/>
                    <assign variable="c" expression="SectiParametry(a,b)"/>
                </then>
                <else>
                    <if expression="kod == 2">
                        <then>
                            <comment text="Podprogram (funkce) rozd&#237;lu zadan&#253;ch &#269;&#237;sel"/>
                            <assign variable="c" expression="OdectiParametry(a,b)"/>
                        </then>
                        <else>
                            <if expression="kod == 3">
                                <then>
                                    <comment text="Podprogram (funkce) n&#225;soben&#237; zadan&#253;ch &#269;&#237;sel"/>
                                    <assign variable="c" expression="NasobParametry(a,b)"/>
                                </then>
                                <else>
                                    <if expression="kod == 4">
                                        <then>
                                            <comment text="Podprogram (funkce) pod&#237;lu zadan&#253;ch &#269;&#237;sel"/>
                                            <assign variable="c" expression="VydelParametry(a,b)"/>
                                        </then>
                                        <else>
                                            <comment text="U&#382;ivatel zadal jin&#253; k&#243;d ne&#382; 1 a&#382; 4"/>
                                            <output expression="&quot;Zadali jste &#353;patn&#253; &#269;&#237;seln&#253; k&#243;d!&quot;" newline="True"/>
                                        </else>
                                    </if>
                                </else>
                            </if>
                        </else>
                    </if>
                </else>
            </if>
            <comment text="Podprogram (procedura) pro v&#253;pis textu a hodnoty v&#253;sledku"/>
            <call expression="ZobrazVysledek(c)"/>
            <comment text="Ukon&#269;en&#237; hlavn&#237;ho programu"/>
        </body>
    </function>
    <function name="NasobParametry" type="Real" variable="cc">
        <parameters>
            <parameter name="aa" type="Integer" array="False"/>
            <parameter name="bb" type="Integer" array="False"/>
        </parameters>
        <body>
            <comment text="Deklarace lok&#225;ln&#237; prom&#283;nn&#233; 'cc' ... slou&#382;&#237; pro ulo&#382;en&#237; hodnoty n&#225;sobku na&#269;ten&#253;ch hodnot p&#345;edan&#253;ch z hlavn&#237;ho programu ulo&#382;en&#253;ch do form&#225;ln&#237;ch parametr&#367; 'aa' a 'bb'"/>
            <declare name="cc" type="Real" array="False" size=""/>
            <comment text="Proveden&#237; n&#225;soben&#237; hodnot ulo&#382;en&#253;ch v form&#225;ln&#237;ch parametrech funkce a ulo&#382;en&#237; do lok&#225;ln&#237; prom&#283;nn&#233; 'cc'"/>
            <assign variable="cc" expression="aa * bb"/>
            <comment text="Hodnota v 'cc' je v&#253;stupem funkce"/>
        </body>
    </function>
    <function name="OdectiParametry" type="Real" variable="cc">
        <parameters>
            <parameter name="aa" type="Integer" array="False"/>
            <parameter name="bb" type="Integer" array="False"/>
        </parameters>
        <body>
            <comment text="Deklarace lok&#225;ln&#237; prom&#283;nn&#233; 'cc' ... slou&#382;&#237; pro ulo&#382;en&#237; hodnoty rozd&#237;lu na&#269;ten&#253;ch hodnot p&#345;edan&#253;ch z hlavn&#237;ho programu ulo&#382;en&#253;ch do form&#225;ln&#237;ch parametr&#367; 'aa' a 'bb'"/>
            <declare name="cc" type="Real" array="False" size=""/>
            <comment text="Proveden&#237; ode&#269;ten&#237; hodnot ulo&#382;en&#253;ch ve form&#225;ln&#237;ch parametrech funkce a ulo&#382;en&#237; do lok&#225;ln&#237; prom&#283;nn&#233; 'cc'"/>
            <assign variable="cc" expression="aa - bb"/>
            <comment text="Hodnota v 'cc' je v&#253;stupem funkce"/>
        </body>
    </function>
    <function name="SectiParametry" type="Real" variable="cc">
        <parameters>
            <parameter name="aa" type="Integer" array="False"/>
            <parameter name="bb" type="Integer" array="False"/>
        </parameters>
        <body>
            <comment text="Deklarace lok&#225;ln&#237; prom&#283;nn&#233; 'cc' ... slou&#382;&#237; pro ulo&#382;en&#237; hodnoty sou&#269;tu na&#269;ten&#253;ch hodnot p&#345;edan&#253;ch z hlavn&#237;ho programu ulo&#382;en&#253;ch do form&#225;ln&#237;ch parametr&#367; 'aa' a 'bb'"/>
            <declare name="cc" type="Real" array="False" size=""/>
            <comment text="Proveden&#237; sou&#269;tu hodnot ulo&#382;en&#253;ch ve form&#225;ln&#237;ch parametrech funkce a ulo&#382;en&#237; do lok&#225;ln&#237; prom&#283;nn&#233; 'cc'"/>
            <assign variable="cc" expression="aa+bb"/>
            <comment text="Hodnota v 'cc' je v&#253;stupem funkce "/>
        </body>
    </function>
    <function name="VydelParametry" type="Real" variable="cc">
        <parameters>
            <parameter name="aa" type="Integer" array="False"/>
            <parameter name="bb" type="Integer" array="False"/>
        </parameters>
        <body>
            <comment text="Deklarace lok&#225;ln&#237; prom&#283;nn&#233; 'cc' ... slou&#382;&#237; pro ulo&#382;en&#237; hodnoty pod&#237;lu na&#269;ten&#253;ch hodnot p&#345;edan&#253;ch z hlavn&#237;ho programu ulo&#382;en&#253;ch do form&#225;ln&#237;ch parametr&#367; 'aa' a 'bb'"/>
            <declare name="cc" type="Real" array="False" size=""/>
            <comment text="Test, zda nedo&#353;lo k d&#283;len&#237; nulov&#253;m jmenovatelem"/>
            <if expression="bb == 0">
                <then>
                    <comment text="Jmenovatel je 0"/>
                    <output expression="&quot;B nesm&#237; b&#253;t 0&quot;" newline="True"/>
                </then>
                <else>
                    <comment text="Proveden&#237; pod&#237;lu hodnot ulo&#382;en&#253;ch v form&#225;ln&#237;ch parametrech funkce a ulo&#382;en&#237; do lok&#225;ln&#237; prom&#283;nn&#233; 'cc'"/>
                    <assign variable="cc" expression="aa / bb"/>
                </else>
            </if>
            <comment text="Hodnota v 'cc' je v&#253;stupem funkce"/>
        </body>
    </function>
    <function name="ZadejCislo" type="Real" variable="xx">
        <parameters>
            <parameter name="NazevParametru" type="String" array="False"/>
        </parameters>
        <body>
            <declare name="xx" type="Integer" array="False" size=""/>
            <comment text="V&#253;pis definovan&#233;ho textu spolu s textem ulo&#382;en&#253;m v 'NazevParametru'"/>
            <output expression="&quot;Zadejte &quot; &amp; nazevParametru &amp; &quot;:&quot;" newline="True"/>
            <comment text="Na&#269;ten&#237; hodnoty do prom&#283;nn&#233; 'xx'"/>
            <input variable="xx"/>
            <comment text="P&#345;i&#345;azen&#237; hodnoty v 'xx' do v&#253;stupu funkce"/>
        </body>
    </function>
    <function name="ZobrazVysledek" type="None" variable="">
        <parameters>
            <parameter name="cc" type="Real" array="False"/>
        </parameters>
        <body>
            <comment text="V&#253;pis textu a hodnoty v&#253;sledku ulo&#382;en&#233;ho ve form&#225;ln&#237;m parametru"/>
            <output expression="&quot;V&#253;sledek C: &quot; &amp; cc" newline="True"/>
            <comment text="Ukon&#269;en&#237; procedury (nen&#237; &#382;&#225;dn&#253; v&#253;stup do hlavn&#237;ho programu)"/>
        </body>
    </function>
</flowgorithm>
