Navigation bar
  Print document Start Previous page
 71 of 144 
Next page End  

71
При решении сложных задач для проверки правильности составляемых алгоритмов и про-
грамм обязательны не только математическое описание постановки задач, но и описание выбран-
ных методов решения.
Приведем пример разработки программы обработки данных с математической постановкой
задачи и полным описанием метода решения.
Третья задача: определение самого легкого из учеников по данным из таблицы, содержа-
щей N строк:
фамилия   
рост    
вес
Иванов
185
85
Петрова
165
65
Сидоров
170
80
Постановка задачи
Сценарий
Дано: (D1, ..., D
N
) - данные учеников. 
    Данные об учениках
где D = [Fam, R,V] - состав данных, 
фамилия вес
Fam - фамилия, R - рост, V -вес
Треб.: Fam
m
- фамилия ученика.
   
<Fam1> <V1>                *
Где: m: V
m
= Min (V1 ..., V
N
). 
       …  …
При: N > 0.
<Fаm
N
> <V
N
>
Метод решения
самый легкий:
Min (V1,.. Vn):
Fam m > <Vm >
min = V1
от k = 1 до п цикл
Представление данных
если V
k
< min то
dan: 'данные учеников:
min: = V
k
data «Иванов», «Вова», 180,80
кцикл
data «»,»»,0 ,0
Выбранному сценарию, методу решения и представлению данных соответствуют следую-
щие алгоритм и программа на Бейсике.
Алгоритм
Программа
алг «самый легкий ученик»
' самый легкий ученик
нач
cls
вывод («Данные об учениках»)
   ? «Данные об учениках»
вывод («фамилия вес»)
   ? «фамилия вес»
N: = 0
   n = 0
цикл
   do
чтение (Fam, r, v)
      read famS, r, v
при Fam = «» выход
   if fam$ = «» then exit do
вывод (Fam, v)
     ? fam$, v, r
N:=N+1
     n = n+1
если N == 1 или V < Vmin то
     if n=l or v < vmin then
Vmin: = V
        vmin = v
Fmin: = Fam
        fmin$ = fam$
все
      end if
кцикл
   loop
вывод («самый легкий:»)
   ? «самый легкий:»
вывод (Fmin, Vmin)
   ? fmin$, vmin
кон
end
В общем случае систематический подход к решению задач на ЭВМ требует для проверки пра-
вильности алгоритмов и программ не только математической постановки задач, но и обязательно-
го описания выбранных методов решения.
Сайт создан в системе uCoz