|
Упражнения. 1. Составить программу, которая для каждой из пяти данных матриц (разных размеров) строит вектор из наименьших по абсолютной величине элементов каждого столбца. 2. Написать программу, которая по данным координатам п точек Mt, Мп строит вектор (гъ гп), где — расстояние от точки Mi до наиболее удаленной от нее точки М/. 3. Составить программу, которая для п данных точек проверяет, что проекции любых двух из этих точек на данную прямую ах + by + с = 0 отстоят друг от друга на расстояние не больше данного л Имеющийся в Алголе аппарат процедур предназначен главным образом для того, чтобы отдельные части программ можно было описывать более или менее независимо от программы в целом. Впоследствии такая часть программы может быть многократно использована в одной или в разных программах. Процедура задается описанием процедуры. Его главной составной частью является оператор, называемый телом процедуры. Некоторые идентификаторы, встречающиеся в теле процедуры, могут быть объявлены формальными параметрами. Это значит, что при выполнении процедуры (точнее, ее тела) эти идентификаторы заменяются другими идентификаторами или выражениями, или же им присваиваются некоторые начальные значения, не указанные в самой процедуре. Чтобы заставить процедуру выполниться, в программе должно содержаться обращение к ней, представляющее собой либо оператор процедуры, либо указатель функции. В обращении к процедуре задаются фактические параметры этого обращения — те идентификаторы и выражения, которые либо подставляются вместо формальных параметров, либо задают их начальные значения. Прежде чем описать все это более подробно, покажем на примере, как самостоятельная программа может быть превращена в описание процедуры и тем самым подготовлена к включению в состав другой программы. Возьмем программу, уже неоднократно использованную во многих примерах, — программу вычисления суммы 1 + + 1/2 + ... + 1/п. Один из вариантов этой программы был таким: begin real s; integer /, n\ ввод (n); s:=0; for i:=Js step 1 until n do s:=s + l/i; вывод (s) end
|