Информатика


              

Решение прикладных задач - часть 5


                   

        товар                 цена             кол-во

яблоки

8000

3

бананы

4000

2

арбузы

1000

20

Приведем постановку задачи и описание способа ее решения.

Постановка задачи                                                    Способ решения

Определение суммарной

и максимальной стоимости товаров.

Дано:

(D1, ...,

DN) - данные о товарах,

где D = [Tov, C, M] - состав данных,                      s0 = 0

Tov - товар, С - цена товара,                                    от k = 1 до N цикл

М - количество товара,                                             sk

= sk-1 + СkМk

Треб:                                                                           если k = 1 то

Sum - суммарная стоимость товаров,                     mах1

= С11М11

TovMax - товар максимальной                                инеc СkМk > mахk-1 то

стоимости.

Где:                                                                             mахk

= СkМk

Sum = C1M1 + С2М2

+ ... + СNМN,                             все

TovMax: C×M = Мах(С1М1, ... ,СNМN).                     кцикл

При:

N > 0.

Прежде чем приступить к составлению алгоритмов и программ, убедимся в правильности выбранного способа решения. Для этого проверим результаты на первых шагах, в середине и в конце вычис­лений. На первом шаге при k = 1 результат

s1

= s0 + С1М1 = С1M1,

max1

= С1М1.

На втором шаге вычислений будут получены следующие значе­ния:

s2

= s1 + С2М2 = C1M1

+ С2М2,

max2 =    С2М2, при С2М2 > max1      = Мах(mах1, С2М2),

    max1, при С2М2

£ max1      = Мах(mах1, С2М2).

На третьем и последующих шагах в общем случае будут получать­ся результаты:

sk

= sk-1 + CkMk = C1M1 + … + CkMk,

maxk

= Max(maxk-1, СkМk) = Мах(С1М1, ..., СkМk).

Для доказательства этих утверждений необходимо предположить, что они выполняются для случая k-1:

sk-1

=C1M1 +...+ Ck-1Mk-1,

maxk-1

=  Max (C1M1, …,Ck-1Mk-1),

и подставить эти выражения в соотношения для sk и mахk:




Содержание  Назад  Вперед