Файл: Основы программирования на языке Pascal (Знакомство с системой программирования в Pascal).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 13.03.2024

Просмотров: 33

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Оператор цикла с параметром (перечислением) организует выполнение одного оператора (простого или составного) заранее известное число раз или когда необходимо использовать в теле цикла информацию о номере очередной итерации.

Существует две формы записи этого цикла:

Первая форма

for <счетчик1> := <значение1> to <конечное_значение> do <оператор1>;

После каждой итерации значение <счетчик1> будет увеличиваться на 1.

<значение1> — это начальное значение счетчика.

Это может быть переменная или число.

<конечное_значение>: как только значение <счетчик1> станет больше <конечное_значение>, выполнение цикла прекратится.

Если требуется написать несколько операторов в теле цикла, используем begin и end.

И <счетчик1>, и <конечное_значение>, и <значение1> - переменные целого типа.

Чаще всего в качестве счетчика используется переменная i.

Вторая форма

for <счетчик2> := <значение2> downto <конечное_значение> do <оператор1>;

После каждой итерации значение <счетчик2> будет уменьшатся на 1.

<значение2> — это начальное значение счетчика.
<конечное_значение> : как только значение <счетчик2> станет меньше <конечное_значение>, выполнение цикла прекратится.

Два важных примечания:

  1. Цикл повторяется, пока значение значение счетчика лежит в отрезке [значение ; конечное_значение].
  2. Изменять значение счетчика внутри тела нельзя.  

Оператору цикла с параметром соответствует следующая блок – схема:

Для i от m1 до m2

Оператор(ы)

Оператор(ы) после выполнения цикла

Рисунок 5. Блок –схема цикла с параметром

 Пример 1.

Задача: Составьте программу, которая считает среднее арифметическое чисел в интервале от 150 до 340.

Решение:

1.Анализ условия задачи.

Если дан ряд величин, то величина, заключённая между наименьшей и наибольшей из данных, называется «средней».

Средняя арифметическая (или среднее арифметическое)- получается от сложения данных величин и деление суммы на число этих величин.

Ср.ар.= a1+a2+…+an

n

где, a1,a2,…….,an – данные величины, а n-их число.

Пусть S-сумма слагаемых, n- их число, S1-среднее арифметическое.

S=150+151+152+…+338+339+340.

150-первое слагаемое.

151-второе слагаемое.

153-третье слагаемое.

………………………

338- (n-2) слагаемое.


339- (n-1) слагаемое.

340- n слагаемое.

S1=S/n.

Так как сумма слагаемых (в интервале только целые чисел) и их общее число имеют значения целых чисел, то и в программе их значения будут такого же типа. Соответственно среднее арифметическое – действительное число.

2.Разработка словесного алгоритма (математической модели).

В начале необходимо найти сумму чисел в интервале, причём точное количество суммирования слагаемых нам известно. Так же можно подсчитать количество таких слагаемых. А затем используя формулу Sl=S/n найдём среднее арифметическое.

3.Графическое изображение решения задачи (блок-схема).

s:=0

n:=0

Для i от 150 до 340

s:=s+i

n:=n+1

s1

Рисунок 6. Решение задачи с помощью блок - схемы

4.Разработка программного кода, трассировка программного кода.

Program Sum1;

Var s, i, n: integer;

s1:real;

Begin

s:=0; n:=0;

For i:=150 to 340 do begin

s:=s+i;

n:=n+1;

end;

s1:=s/n;

Writeln (‘Среднее арифметическое чисел равно ’, s1:5:2);

end.

Трассировка:

s:=0; n:=0;

Для i от 150 до 340

i=150 i=151 i=152 …………… i=340

s=0+150 s=150+151 s=131+152 …………… s= +340

n=o+1 n=1+1 n=2+1 …………... n= +1

s1=/

вывод s1.

5.Набор программы в среде программирования.

Рисунок 7. Набор программы в Pascal

6.Отладка и компиляция.

Осуществляется нажатием клавиши F9.

7.Запуск программы на исполнение.

Выполняется нажатием комбинации клавиш Ctrl-F9.

Просмотр результата выполнения программы Отладка Мой экран. Выход – нажатие любой клавиши.

Пример 2.

Задача: Вывести на экран буквы от Z до A.

Решение:

1.Анализ условия задачи.

Необходимо вывести буквы латинского алфавита в обратной последовательности.

2.Разработка словесного алгоритма (математической модели).

Число общего вывода букв известно. Вывод осуществляется в обратном порядке, поэтому приращение параметра равное -1,и начальное значение больше конечного (т.е. m1>m2).При нахождении каждой буквы вывод на экран осуществляется сразу.

3.Графическое изображение решения задачи (блок-схема).

Для i от Z до A

i

Рисунок 8. Решение задачи с помощью блок - схемы

4.Разработка программного кода, трассировка программного кода.

Program ;

Var i:=char;

Begin

For i:=’Z’ to ‘A’ do

Write (i);

Writeln;

End.

Трассировка:

Для i от Z до A

Вывод Z


Вывод W

Вывод V

……………….

Вывод B

Вывод A

5.Набор программы в среде программирования.

6.Отладка и компиляция.

Осуществляется нажатием клавиши F9.

7.Запуск программы на исполнение.

Выполняется нажатием комбинации клавиш Ctrl-F9.

Просмотр результата выполнения программы Отладка Мой экран. Выход – нажатие любой клавиши.

2.3 Методические рекомендации по решению задач с использованием цикла с постусловием

Оператор цикла с постусловием (последующим условием) как правило, используется, если цикл должен выполняться не менее одного раза. Условие завершения цикла проверяется после выполнение тела цикла.

Repeat— полная противоположность while. Repeat — это цикл, в котором условие стоит после тела . Причем оно выполняется тогда и только тогда, когда результат условия false; как только логическое выражение становится true, выполнение цикла прекращается.

Repeat имеет формат:

repeat { повторяй … }
<оператор 1>;
< оператор 2>;

until {до…} <условие>

Begin и end не требуются.

Оператору цикла с постусловием соответствует следующая блок – схема:

Рисунок 9. Блок — схема оператора цикла с постусловием

Задача: Дана не пустая последовательность целых чисел оканчивающихся нулём. Найти сумму всех чисел последовательности.

Решение:

1.Анализ условия задачи.

Дана последовательность чисел, последнее число которой равно нулю (можно взять все числа целого типа). Нужно найти их сумму.

2.Разработка словесного алгоритма (математической модели).

Число чисел неизвестно. Будим вводить число и суммировать его столько раз, пока не просуммируем последнее число ноль.

3.Графическое изображение решения задачи (блок-схема).

4.Разработка программного кода, трассировка программного кода.

Program Posl;

Var a, s :integer;

Begin

s:=0;

Repeat

Readln (a);

s:=s+a;

Until a=0;

Writeln;

Writeln (s);

End.

Трассировка:

s:= 0

ввод 4 ввод 1 …………… ввод 0

s:=0+4 s:=4+1 …………... s:=40+0

4<>0 1<>0 …………… 0=0

Вывод 40

5.Набор программы в среде программирования.

6.Отладка и компиляция.

Осуществляется нажатием клавиши F9.


7.Запуск программы на исполнение.

Выполняется нажатием комбинации клавиш Ctrl-F9.

Просмотр результата выполнения программы Отладка Мой экран. Выход – нажатие любой клавиши.

2.4. Методические рекомендации по решению задач с использованием цикла с предусловием

Оператор цикла с предусловием (предварительным условием) как правило используется, если число повторений цикла заранее неизвестно.

While — это цикл, в котором условие стоит перед телом. Причем тело цикла выполняется тогда и только тогда, когда условие true; как только условие становится false, выполнение цикла прекращается.

While имеет формат:

while < условие> do <оператор 1>;  {Пока … делай ….}

Данный цикл подходит только для одного оператора, если необходимо использовать несколько операторов в своем коде, необходимо заключить их в операторные скобки — begin и end; .

Пример.

Задача: Лыжник, начав тренировки в первый день пробежал 10 км. Каждый следующий день он увеличивал пробег на 10% от последующего дня. Определить в какой день пробег лыжника превысит 20 км.

Решение:

1.Анализ условия задачи.

Обозначим расстояние, которое бежит лыжник в каждый день х. В первый день х=10. Известно, что каждый следующий день он увеличивал пробег на 10% предыдущего, поэтому каждый последующий день равен на 0,1*x больше. Нужно вывести число дня по порядку, в который значение x превысит 20.

2.Разработка словесного алгоритма (математической модели).

Организуем увеличение переменной x на 0.1*x, с подсчётом дней. Выведем номер дня.

3.Графическое изображение решения задачи (блок-схема).

4.Разработка программного кода, трассировка программного кода.

Program Probeg;

Var i: integer; x: real;

Begin

x:=10;

i:=1;

while x>20 do begin

i:=i+1;

x:=x+0.1*x;

end;

Writeln (i);

end.

Трассировка:

x:=10

i:=1

Пока x>20

i:=1+1 i:=2+1 ……………. i:= +1

x:=10+0.1*10 x:=11+0.1*10 ……………. x:= +0.1*

вывод i

6.Отладка и компиляция.

Осуществляется нажатием клавиши F9.

7.Запуск программы на исполнение.

Выполняется нажатием комбинации клавиш Ctrl-F9.

Просмотр результата выполнения программы Отладка Мой экран. Выход – нажатие любой клавиши.

Вывод по главе. Таким образом, процесс выполнения задачи на компьютере включает ряд обязательных этапов: набор текста программы и запись его в именованный файл на диске; компиляция программы с обнаружением и исправлением синтаксических ошибок; тестирование; устранение семантических и алгоритмических ошибок; непосредственное выполнение программы с заданием реальных значений и получением результатов. Максимальные удобства для подготовки и отладки программ при программировании на Паскале предоставляет специальная интегрированная среда (совокупность взаимосвязанных сервисных программных средств, обеспечивающих всестороннюю поддержку процесса разработки программ). Умелое использование возможностей среды позволяет значительно упростить этапы проектирования, тестирования и отладки программ.


В языке Pascal существует три разновидности операторов цикла:

1) счетный оператор цикла (оператор цикла со счётчиком);

2) оператор цикла с предусловием;

3) оператор цикла с постусловием.

Счетный оператор цикла FOR реализует циклический процесс с известным числом повторений. Этот оператор имеет две формы записи. Первая форма позволяет наращивать <параметр цикла> на единицу и имеет вид

FOR<параметр_цикла>:=<min_значение>TO<max_значение>DO<оператор>;

Вторая форма позволяет уменьшать на единицу значение параметра цикла:

FOR <параметр цикла> := <max значение> DOWNTO.

Оператор цикла с предусловием используется в случае, когда число повторений цикла заранее не известно. При этом цикл управляется условием, записанным в начале цикла, и поэтому действия в цикле при некотором условии могут ни разу не выполниться. Структура этого оператора имеет вид

WHILE <условие> DO <оператор>;

Правило выполнения оператора цикла с предусловием. Если <условие> истинно, то выполняется <оператор>, стоящий за ключевым словом DO, если <условие> ложно, то происходит выход из цикла и выполняется следующий оператор программы.

Оператор цикла с постусловием производит проверку условия после выполнения операторов тела цикла. Поэтому тело цикла должно выполниться хотя бы один раз. Структура оператора имеет следующий вид:

REPEAT <оператор1>;

...

<оператор N>

UNTIL <условие_выхода >;

Правило выполнения оператора цикла. Выход из цикла происходит при истинности значения логического выражения <условие_выхода>, иначе операторы тела цикла повторяются.

ЗАКЛЮЧЕНИЕ

Из всей массы языков программирования для обучения можно выделить Pascal. Практическое решение задач с использованием языка программирования содействует процессу развития личности и овладением смежных дисциплин.

В ходе выполнения курсовой работы были решены цель и поставленные задачи:

1. В ходе подготовки выполнения курсовой работы была изучена и проанализирована литература методического и предметного содержания

2. Охарактеризован язык программирования Pascal. Выяснено, что система Pascal основана на языке Delphi Pascal и призвана осуществить постепенный переход от простейших программ к модульному, объектно-ориентированному, событийному и компонентному программированию, что любой естественный язык строится из элементарных составляющих — букв, образующих алфавит языка. Буквы используются для построения слов, слова складываются в предложения, а предложения образуют текст. Всякий язык программирования организован примерно так же. Имеется алфавит языка, то есть набор символов, которые можно использовать в программе. В системе Pascal ученик может выполнять так называемые проверяемые задания, обеспечивающие постановку задачи со случайными исходными данными, контроль операций ввода-вывода, проверку правильности решения, а также ведение протокола решения задач.