![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Программирование разветвляющихся процессовСодержание книги
Поиск на нашем сайте
Разветвляющимися процессами называются такие вычислительные процессы, в которых имеет место разветвление выполняемой последовательности действий в зависимости от результата проверки какого-либо условия. Условный оператор имеет следующие формы записи: 1. if логическое выражение then оператор1 else оператор 2; 2. if логическое выражение then begin группа операторов 1 end begin группа операторов 2 end; 3. if логическое выражение then оператор; 4. if логическое выражение then begin группа операторов end. Если логическое выражение истинно, тогда выполняется оператор 1 или группа операторов 1, иначе выполняется оператор 2, или группа операторов 2, или оператор if пропускается и выполняется следующий за ним оператор. Пример. Составить программу вычисления следующей функции Программа var A, X, Y: real; Описание вещественных переменных begin Начало программы writeln ('Введите А, Х'); Вывод на экран фразы “Введите А,Х” readl (А, X); Ввод значений переменных if X>=A then Y:= А + SQRT (X - А) Вычисление Y по первой формуле else Y:= LN (ABS (X+A)) +SIN(X)* SIN(X); Вычисление Y по второй формуле writeln ('Y= ‘Y:1Q:2, ' X= ', X:5:2); ВыводY,X end. Конец программы Программирование разветвляющихся и циклических вычислительных процессов. Вычислительные процессы, в которых часть вычислений повторяется многократно, называются циклическими процессами. Виды операторов цикла. 1. Оператор цикла с предварительным условием. 2. Оператор цикла с последующим условием. 3. Оператор цикла с параметром. Оператор цикла с предварительным условием используется в тех случаях, когда заранее неизвестно число повторений цикла. Форма записи оператора цикла с предусловием: while логическое выражение do begin операторы циклической части программы (тело цикла) end; Если в циклической части оператора стоит всего один оператор, то операторные скобки begin и end можно не указывать. Оператор цикла с предварительным условием действует следующим образом. Предварительно проверяется логическое выражение. Если оно истинно, то выполняются операторы циклической части программы. Если логическое выражение ложно, то происходит выход из цикла. Если с самого начала значение логического выражения не является истиной, то операторы циклической части не выполняются ни разу.
Логическое выражение должно меняться в теле цикла, иначе цикл будет бесконечным и через некоторое время компьютер зависнет. Пример. Вычислить значения функции Y при изменении X от С до D с шагом Н. Программа var X, A. Y, C, D, H: real; begin writeln (‘Введите С, D, H, A’); readln (C, D, H, A); x:= C; while x <= D do begin if x > A then y:= x*cos(A*x) else y:=sin(x) + A*a; writeln (‘y= ‘,y:10:2, ‘ x= ‘,x:10:2); x:= x + H end; end. Оператор цикла с последующим условием имеет следующую форму записи: repeat тело цикла (выполняемые операторы) until логическое выражение. Данный оператор организует выполнение цикла, состоящего из любого числа операторов, с неизвестным заранее числом повторений. Тело цикла выполняется хотя бы один раз. Выход из цикла осуществляется при истинном значении некоторого логического выражения. Истинность логического выражения проверяется в конце каждой итерации. Пример. Вычислить значения функции Y при изменении X от С до D с шагом Н. Программа var X, A. Y, C, D, H: real; begin writeln (‘Введите С, D, H, A’); readln (C,D,H,A); x:= C; repeat if x > A then y:= x*cos(A*x) else y:= sin(x) + A*a; writeln (‘y= ‘,y:10:2, ‘ x= ‘,x:10:2); x:=x + H until x<=D end. Оператор цикла с параметром организует выполнение одного оператора заранее известное число раз. Существует два варианта оператора цикла с параметром. 1. for i:= a1 to a2 do begin тело цикла end; 2. fo r i:= a1 downto a2 do begin тело цикла end, где: i - параметр цикла, являющийся переменной порядкового типа; а1 - выражение, определяющее начальное значение параметра цикла; а2 - выражение, определяющее конечное значение параметра цикла. Цикл действует следующим образом. Вначале вычисляются и запоминаются начальное и конечное значения параметра цикла. Далее параметру i цикла присваивается начальное значение. Затем значение параметра i цикла сравнивается со значением а2. Пока параметр цикла остается меньше или равен конечному значению а2 (в первом варианте) и больше или равен конечному значению а2 (во втором варианте) выполняется в очередной раз операторы из тела цикла. В противном случае происходит выход из цикла. После выхода из цикла параметр цикла становится неопределенным. Пример. Вычислить значения функции Y при изменении X от С до D с шагом 1. Программа. var X, A. Y, C, D: real; begin writeln (‘Введите С, D, H, A’);
readln (C,D,H,A); for i:=C to D do begin if x > A then y:= x*cos(A*x) else y:=sin(x) + A*a; writeln (‘y= ‘,y:10:2, ‘ x= ‘,x:10:2); x:=x + H; end; readln end. Лабораторная работа 10 (2 часа) Borland Pasсal. Одномерные массивы Массив - это множество однотипных элементов. При описании массива необходимо указать общее число входящих в массив элементов и тип этих элементов. Например: var А: array [1..10] of real; В: array [1..5] of integer; Из описания массивов следует, что одномерный массив А состоит из 10 вещественных чисел, а одномерный массив В состоит из 5 элементов целого типа. При работе с массивами выполняются циклические действия. Пример. В массиве Р(20) найти количество положительных элементов и сформировать новый массив Р1, каждый элемент которого получается делением соответствующего элемента массива Р на найденное количество. Программа. var Р, Р1: array [1..20] оf real; begin writeln (‘Введите Р(20)’); for i:=1 to 20 do read P[i]; readln; K:= 0; for i:=1 to 20 do if P[i] > 0 then k:=k+1; for i:=1 to 20 do P1[i]:= P[i]/k; writeln (‘Исходный массив Р’); for i:=1 to 20 do write (P[i]:6:2); writeln; writeln (‘Количество положительных элементов = ’,k); writeln (‘Новый массив Р1’); for i:=1 to 20 do write (p1[i]:6:2); writeln; readln end. Двумерные массивы При описании двумерных массивов (матриц) необходимо указать границы изменения двух индексов и тип элементов матрицы. Например: var А: array [1..3, 1..5] of real; В: array [1..2,1..2] of integer; В данном примере матрица А состоит из трех строк и пяти столбцов. Все элементы матрицы А являются вещественными числами. Матрица В состоит из двух строк и двух столбцов. Все элементы матрицы В являются целыми числами. Пример. Составить программу, которая в матрице А(4,5) определит сумму элементов каждой строки, выберет среди этих сумм наибольшую и выведет на экран дисплея матрицу А, суммы строк, наибольшую сумму и номер строки с наибольшей суммой.
Программа. var А: array [1..4,1..5] of real; C, N, I, J: integer; max: real; begin writeln (‘Введите матрицу А(4,5)’); for i:=1 to 4 do for j:=1 to 5 do begin writeln (‘A(‘,i,’,’,j,’)=’); readln (a[i,j]) end; for i:=1 to 4 do begin C:= 0; for j:=1 to 5 do C:= C + A[i,j]; writeln ('Строка № ',i:10, 'сумма элементов = ', C:10:2); if i=1 then begin max:= C; n:= i end; if c > max then begin max:= C; n:= I end end; writeln (‘Матрица А’); for i:=1 to 4 do begin for j:=1 to 5 do write (A[i,j]:8:3); writeln end; writeln (‘Максимальная сумма: ’,S:8:3); writeln (‘Номер строки: ‘,N:3) end. Литература 1. Глушаков С. В. Персональный компьютер: Учеб. курс / С. В. Глушаков, И. В. Мельников. – Харьков; Ростов-на-Дону: Фолио: Феникс, 2000. – 520 с. 2. Информатика: Базовый курс, 2-е издание / Под ред. С. В. Симоновича.: Питер, 2007. – 640 с. 3. Кукарникова Т. Э. Информатика: Учеб. пособие. – Воронеж: Изд-во Воронеж. гос. ун-та, 2000. – 317 с. 4. Степаненко О. С. Персональный компьютер: Учеб. курс – 2-е изд. пересмотр. и доп. – М. и др.: Диалектика, 2001. – 383 с. 5. Левин А. Самоучитель Левина. Windows XP и Vista. – Спб.: Питер, 2008. – 624 с.
Учебное пособие
Груздев Владислав Николаевич
Информатика Часть 2. Приложения Word, CorelDraw, MathCad, Pascal
Практикум для вузов
Редактор
|
||||||
Последнее изменение этой страницы: 2016-12-16; просмотров: 1183; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.119.255.122 (0.007 с.) |