Èíôîðìàòèêà


              

Ðåøåíèå ïðèêëàäíûõ çàäà÷ - ÷àñòü 11


Sd =

Sd + d                                                  Sd = Sd + d

êöèêë                                                            loop

êîí                                                                  return

àëã «ïîäñ÷åò ðàñõîäîâ»                              rashs ' ïîäñ÷åò ðàñõîäîâ

íà÷                                                                  '

çàãðóçêà_ðàñõîäîâ                                       restore rach 'ðàñõîäû

Sr := 0                                                           Sr = 0

öèêë                                                              do

÷òåíèå (ñòàò, r)                                       read stat$, r

ïðè ñòàò

= «» âûõ                                     if st$ = «» then exit do

âûâîä (ñòàò, r)                                          ? st$, r

Sr =

Sr + r                                                    Sr = Sr + r

êöèêë                                                             loop

êîí                                                                  return

       

Ïðàâèëüíîñòü ñîñòàâëåííîãî êîìïëåêñà àëãîðèòìîâ è ïðîãðàììû ðàñ÷åòà äîñòàòêà ñåìüè ìîæíî ïðîâåðèòü ïî îïèñàíèþ ðåçóëüòàòîâ èõ âûïîëíåíèÿ:

«äîñòàòîê ñåìüè»                  «ïîäñ÷åò äîõîäîâ»                «ïîäñ÷åò ðàñõîäîâ»

Ïîäñ÷åò äîñòàòêà

Äîõîäû ñåìüè:                       Sd0

= 0 [k = 0]                        Sr0

= 0 [i = 0]

<ïîäñ÷åò_äîõîäîâ>

Äîõîäîâ = <Sd>

Ðàñõîäû ñåìüè:                         [k =(1...N)]                              [i =(1...M)]

<ïîäñ÷åò_ðàñõîäîâ>                <èìÿk> <dk>                           <ñòàò1> <r1>

Ðàñõîäîâ = < Sr>                     Sdk

= Sd/k-l/+dk                        Sri

== Sri-1 + ri

{ S = Sd - Sr

Äîñòàòîê = <S>

Äëÿ îáîñíîâàíèÿ ïðàâèëüíîñòè âñåãî êîìïëåêñà àëãîðèòìîâ è ïðîãðàììû â öåëîì íåîáõîäèìî ïîêàçàòü ïðàâèëüíîñòü êàæäîãî èç âñïîìîãàòåëüíûõ àëãîðèòìîâ: «ïîäñ÷åò äîõîäîâ» è «ïîäñ÷åò ðàñõîäîâ».




Ñîäåðæàíèå  Íàçàä  Âïåðåä