Загрузка данных
<mxfile host="app.diagrams.net">
<diagram name="Array-Task3-Standard" id="arr-task3-std">
<mxGraphModel dx="1200" dy="800" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1169" pageHeight="827" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<!-- ========================================== -->
<!-- ЛЕВАЯ ЧАСТЬ: main -->
<!-- ========================================== -->
<!-- Начало main -->
<mxCell id="m_start" value="начало" style="rounded=1;whiteSpace=wrap;html=1;arcSize=50;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="180" y="30" width="140" height="35" as="geometry" />
</mxCell>
<!-- Цикл ввода массива A -->
<mxCell id="m_loop_in" value="i := 0..9, 1" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="170" y="90" width="160" height="40" as="geometry" />
</mxCell>
<mxCell id="m_in_elem" value="вв. A[i]" style="shape=parallelogram;perimeter=parallelogramPerimeter;whiteSpace=wrap;html=1;fixedSize=1;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="180" y="155" width="140" height="35" as="geometry" />
</mxCell>
<!-- Вызов multNegative -->
<mxCell id="m_call_p" value="P := multNegative(A, 10)" style="shape=process;whiteSpace=wrap;html=1;backgroundOutline=1;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="150" y="225" width="200" height="40" as="geometry" />
</mxCell>
<!-- Вызов buildArrayB -->
<mxCell id="m_call_b" value="buildArrayB(A, B, 10, P)" style="shape=process;whiteSpace=wrap;html=1;backgroundOutline=1;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="150" y="295" width="200" height="40" as="geometry" />
</mxCell>
<!-- Цикл вывода массива B (обычный шестиугольник) -->
<mxCell id="m_loop_out" value="i := 0..9, 1" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="170" y="365" width="160" height="40" as="geometry" />
</mxCell>
<mxCell id="m_out_elem" value="выв. B[i]" style="shape=parallelogram;perimeter=parallelogramPerimeter;whiteSpace=wrap;html=1;fixedSize=1;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="180" y="435" width="140" height="35" as="geometry" />
</mxCell>
<!-- Конец main -->
<mxCell id="m_end" value="конец" style="rounded=1;whiteSpace=wrap;html=1;arcSize=50;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="180" y="515" width="140" height="35" as="geometry" />
</mxCell>
<!-- Линии main -->
<mxCell id="l1" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;" edge="1" parent="1" source="m_start" target="m_loop_in">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="l2" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;" edge="1" parent="1" source="m_loop_in" target="m_in_elem">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="l3" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;exitX=0;exitY=0.5;entryX=0;entryY=0.25;" edge="1" parent="1" source="m_in_elem" target="m_loop_in">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="120" y="173" />
<mxPoint x="120" y="100" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="l4" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;exitX=1;exitY=0.5;entryX=0.5;entryY=0;" edge="1" parent="1" source="m_loop_in" target="m_call_p">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="370" y="110" />
<mxPoint x="370" y="210" />
<mxPoint x="250" y="210" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="l5" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;" edge="1" parent="1" source="m_call_p" target="m_call_b">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="l6" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;" edge="1" parent="1" source="m_call_b" target="m_loop_out">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="l7" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;" edge="1" parent="1" source="m_loop_out" target="m_out_elem">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="l8" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;exitX=0;exitY=0.5;entryX=0;entryY=0.25;" edge="1" parent="1" source="m_out_elem" target="m_loop_out">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="120" y="453" />
<mxPoint x="120" y="375" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="l9" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;exitX=1;exitY=0.5;entryX=0.5;entryY=0;" edge="1" parent="1" source="m_loop_out" target="m_end">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="370" y="385" />
<mxPoint x="370" y="495" />
<mxPoint x="250" y="495" />
</Array>
</mxGeometry>
</mxCell>
<!-- ========================================== -->
<!-- ПРАВАЯ ЧАСТЬ: buildArrayB -->
<!-- ========================================== -->
<mxCell id="fb_start" value="buildArrayB(A, B, N, P)" style="rounded=1;whiteSpace=wrap;html=1;arcSize=50;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="640" y="30" width="190" height="35" as="geometry" />
</mxCell>
<mxCell id="fb_loop" value="i := 0..N-1, 1" style="shape=hexagon;perimeter=hexagonPerimeter2;whiteSpace=wrap;html=1;fixedSize=1;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="655" y="95" width="160" height="40" as="geometry" />
</mxCell>
<mxCell id="fb_cond" value="A[i] > 0" style="rhombus;whiteSpace=wrap;html=1;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="660" y="165" width="150" height="55" as="geometry" />
</mxCell>
<mxCell id="fb_yes" value="B[i] := A[i] + P" style="rounded=0;whiteSpace=wrap;html=1;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="570" y="250" width="130" height="35" as="geometry" />
</mxCell>
<mxCell id="fb_no" value="B[i] := A[i]" style="rounded=0;whiteSpace=wrap;html=1;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="770" y="250" width="130" height="35" as="geometry" />
</mxCell>
<mxCell id="fb_merge" value="" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fillColor=#000000;" vertex="1" parent="1">
<mxGeometry x="732" y="325" width="6" height="6" as="geometry" />
</mxCell>
<mxCell id="fb_ret" value="возврат" style="rounded=1;whiteSpace=wrap;html=1;arcSize=50;strokeWidth=1.5;" vertex="1" parent="1">
<mxGeometry x="850" y="390" width="130" height="35" as="geometry" />
</mxCell>
<!-- Связи buildArrayB -->
<mxCell id="fbl1" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;" edge="1" parent="1" source="fb_start" target="fb_loop">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="fbl2" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;" edge="1" parent="1" source="fb_loop" target="fb_cond">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="fbl3" value="да" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;exitX=0;exitY=0.5;entryX=0.5;entryY=0;" edge="1" parent="1" source="fb_cond" target="fb_yes">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="fbl4" value="нет" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;exitX=1;exitY=0.5;entryX=0.5;entryY=0;" edge="1" parent="1" source="fb_cond" target="fb_no">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="fbl5" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;exitX=0.5;exitY=1;entryX=0.5;entryY=0;" edge="1" parent="1" source="fb_yes" target="fb_merge">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="635" y="305" />
<mxPoint x="735" y="305" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="fbl6" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;exitX=0.5;exitY=1;entryX=0.5;entryY=0;" edge="1" parent="1" source="fb_no" target="fb_merge">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="835" y="305" />
<mxPoint x="735" y="305" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="fbl7" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;exitX=0;exitY=0.5;entryX=0;entryY=0.25;" edge="1" parent="1" source="fb_merge" target="fb_loop">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="540" y="328" />
<mxPoint x="540" y="105" />
</Array>
</mxGeometry>
</mxCell>
<mxCell id="fbl8" style="edgeStyle=orthogonalEdgeStyle;rounded=0;html=1;strokeWidth=1.2;exitX=1;exitY=0.5;entryX=0.5;entryY=0;" edge="1" parent="1" source="fb_loop" target="fb_ret">
<mxGeometry relative="1" as="geometry">
<Array as="points">
<mxPoint x="915" y="115" />
</Array>
</mxGeometry>
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>