русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2015-07-23; просмотров: 3306; Нарушение авторских прав


Циклический вычислительный процесс − этопроцесс, при котором действия выполняются многократно по одному и тому же алгоритму при изменяющихся исходных данных.

Параметр цикла – это переменная, которая при каждом новом входе в цикл принимает новое значение, то есть управляет работой цикла.

Шаг – величина, на которую изменяется начальный параметр при выполнении цикла.

Условие задачи:

Вычислите значение функции:

Y=x2+sin(x+a),

если а=5,

1≤ х≤10 с шагом ∆х=2

х – параметр цикла

Для решения задачи использовать разные способы организации цикла:

1) Операторы условного (IF) и безусловного переходов (GOTO);

2) Цикл с предусловием (WHILE);

3) Цикл с постусловием(REPEATUNTIL);

4) Цикл с параметром (FOR)с вычислением количества повторений.

1 способ: Цикл с использованием операторов условного (IF)
и безусловного переходов (GOTO)

Если в программе после выполнения очередного оператора необходимо выполнить не следующий по порядку, а другой, помеченный для этого меткой, используется оператор безусловного перехода GOTO («переход на»). Переход возможен только в пределах блока.

Форма записи оператора безусловного перехода:

GOTO «Имя метки»;

«Имя метки» − может быть идентификатор или целые числа от 0 до 9999. Объявление меток проводится перед объявлением констант после заголовка программы. Объявление начинается с ключевого слова LABEL, затем указывается имя метки.

Пояснение:50 – имя метки.

Program Name1; Label 50; {раздел описания меток} Var X, А: integer; Y: real; Begin A:=5; X:=1; 50: Y:=X*X+sin(X+A); Writeln ('X=',X, '; Y=',Y:4:1); X:=X+2; if x<=10 then goto 50; readln; end.  

2 способ: Организация цикла с предусловием (WHILE)

Общий вид алгоритма цикла с предусловием

Предписывает выполнять тело цикла до тех пор, пока выполняется условие, записанное после слова While.



Общий вид записи:

While «Условие» do

«Тело цикла»;

«Условие» – выражение логического типа;

«Тело цикла» – простой или составной оператор.

В том случае, если в теле цикла имеется более одного оператора, в качестве оператора может выступать составной оператор с операторными скобками beginend.

Перед каждым выполнением тела цикла вычисляется значение выражения условия, если результат истина, то тело цикла выполняется. Если результат ложь, то происходит выход из цикла и переход к первому оператору после While оператора.

While, do – зарезервированные слова («Пока [выполняется условие]», «делать»).

Program Name2; Var X,А: integer; Y: real; Begin A:=5; X:=1; While X<=10 do begin Y:=X*X+sin(X+A); Writeln ('X=',X,'; Y=',Y:4:1); X:=X+2; end; readln; end.  

3 способ: Организация цикла с постусловием (REPEATUNTIL)

Общий вид алгоритма цикла с постусловием

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

Общий вид записи:

Repeat

«Тело цикла»;

until «Условие окончания цикла»;

«Тело цикла» − произвольная последовательность операторов;

«Условие» − выражение логического типа.

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

Repeatuntil − зарезервированные слова («Повторять», «пока не [выполнится условие]»).

Program Name3; Var X, А: integer; Y: real; Begin A:=5; X:=1; repeat Y:=X*X+sin(X+A); Writeln ('X=',X,'; Y=',Y:4:1); X:=X+2; until X>10; readln; end.  

4 способ: Организация цикла с параметром (FOR)

Общий вид алгоритма цикла с параметром

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

i –параметр цикла i1– начальное значение, i2 –конечное значение

Общий вид записи:

for «Параметр цикла»:=«Начальное значение» to (downto) «Конечное значение» do

«Тело цикла»;

В качестве параметра цикла можно использовать имя простой переменной целого типа, в качестве начального, конечного значений можно использовать константы, переменные, а также арифметические выражения только целого или перечислимого типа.

for, to, downto, do – зарезервированные слова («для», «до», «уменьшить до»,
«выполнить»).

Порядок выполнения действий:

До разработки алгоритма решения задачи необходимо вычислить количество повторений цикла К.

К – в данной программе будет означать конечное значение цикла.

1) Присвоение значения переменной А.

2) Присвоение переменной К значения, полученного до разработки алгоритма решения задачи.

3) Присвоение значения 1 переменной Х (начальное значение).

4) Организация цикла с параметром по переменной i (целое число).

5) Вычисление значения функции Y.

6) Вывод значения функции Y.

7) Добавление шага к переменной Х.

Program Name4; Var X, А, К i: integer; Y: real; Begin A:=5; K:=5; X:=1; for i:=1 to K do begin Y:=X*X+sin(X+A); Writeln ('X=',X, ';Y=',Y:4:1); X:=X+2; end; readln; end.  

Задание 4. Циклические вычислительные процессы. Решение задач,
содержащих вычисление конечных сумм и произведений

Условие задачи:

Вычислите конечное значение суммы функции

Для решения задачи использовать разные способы организации цикла:

1) Цикл с предусловием (WHILE);

2) Цикл с постусловием(REPEATUNTIL);

3) Цикл с параметром (FOR) со счётчиком (с шагом 1).

Пояснение:

1 способ: Цикл с предусловием (WHILE)

Обозначения:

А – вспомогательная переменная, в которой вычисляется слагаемое;

S – переменная, в которой происходит накапливание значений сумм.

Первое значение переменной S=0.

Program Summa1; Var X: integer; S, A: real; Begin X:=1; S:=0; While X<=20 do begin A:=1/(X*X); S:=S+A; X:=X+1; end; Writeln ('S=', S:4:2); readln; End.  

2 способ: Цикл с постусловием (REPEATUNTIL)

Program Summa2; Var X: integer; S, A: real; Begin X:=1; S:=0; repeat A:=1/(X*X); S:=S+A; X:=X+1; until Х>20; Writeln ('S=', S:4:2); readln; End.  

3 способ: Цикл с параметром (FOR) со счётчиком (с шагом 1)

Program Summa3; Var X: integer; S, A: real; Begin S:=0; for X:=1 to 20 do begin A:=1/(X*X); S:=S+A; end; Writeln ('S=', S:4:2); readln; End.  

Условие задачи:

Вычислите конечное значение произведения функции

Пояснение:

1способ: Цикл с предусловием (WHILE)

Обозначения:

А – вспомогательная переменная, в которой вычисляется множитель;

P – переменная, в которой происходит накапливание значений произведения.

Первое значение переменной P=1.

Program Summa1; Var N: integer; P, A: real; Begin N:=1; P:=1; While N<=10 do begin A:=N*N/(3+N); P:=P*A; N:=N+1; end; Writeln ('P=', P:4:2); readln; End.  

 

Остальные способы аналогично вычислению конечной суммы.



<== предыдущая лекция | следующая лекция ==>
Задание 2. Запись арифметических выражений в математической форме | Общий вид алгоритма разветвляющегося процесса


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.631 сек.