Дана Программа на Языке Паскаль Program A2


Лабораторная работа 8
Июль 4, 2016 – 11:41
16 З

Часто в программе обнаруживаются однотипные участки, которые выполняют одни и те же вычисления, но с различными данными. Такие части программы целесообразно оформлять в виде подпрограмм. В языке Pascal существует два вида подпрограмм: процедуры и функции. Перед выполнением данной работы необходимо изучить правила описания процедур и функций, механизм передачи параметров, ознакомиться с понятием локальной и глобальной переменной.

Контрольные вопросы

  1. Для чего нужны в программе процедуры и функции?
  2. В чем отличие между процедурой и функцией?
  3. Чем отличаются формальные и фактические параметры?
  4. Чем отличаются параметры-значения и параметры-переменные?
  5. Как объявляются глобальные и локальные переменные? Каково правило видимости этих переменных?
  6. Почему при обращении к процедуре, аргумент, передаваемый параметру-переменной, может быть только переменной, а не константой или выражением?

Пример

Пример1. Найти сумму положительных элементов в массиве.

Этапы решения задачи:

  1. Алгоритм решения довольно прост - в цикле будем "пробегать" массив, сравнивая его ячейки с 0 и суммировать, если они >0.
  2. Составим блок-схему программы
    Уточним из каких блоков состоит блок"Суммирование положительных ячеек"
    Содержание этих блоков простое, поэтому не стоит их уточнять.
  3. Напишем программу на языке Паскаль

program example; type Tarray = array[1..100] of integer; Var v: Tarray; N, i, s:integer; Procedure vvod_data(var m:Tarray;n:integer); Var i:integer; Begin Writeln('Введите ', n, ' чисел через пробел'); For i:= 1 to n do read(m[i]); End; Function summ(m:TArray):integer; Var s:integer; Begin S:=0; For i:= 1 to n do if m[i]>0 then s:= s+m[i]; Summ:=s; End; begin write('Введите размерность массива N= '); readln(n); vvod_Data(v, n); s:= summ(v); writeln('Сумма= ', s); end.

Source: valera.asf.ru
Похожие публикации