Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Пример контрольных вопросов






1. Что такое ветвления применительно к алгоритмам и программам решения задач?

2. С помощью каких блоков можно организовать ветвления в блок-схеме?

3. Какая программа называется циклической разветвляющейся?

4. С помощью каких операторов можно организовать ветвления в программах на языке Паскаль?

5. Что называют особыми точками (при решении расчетных задач)?

6. Как разбивается интервал существования функции на подинтервалы с учетом исходных условий при изображении схемы областей существования функции?

7. Как отображают на схеме областей существования функции знаки < =, > =, <, >?

8. Какая точка называется особой и как она отображается на схеме областей существования функции?

9. Формат условного оператора if.

10. Что такое составной оператор?

11. Какие операторы в Паскале называются сложными (структурированными)?

 

Рекомендуемая литература

1. Сердюченко В.Я. Розробка алгоритмiв та програмування на мовi Turbo-Pascal / Укр. мовою - Х: ВКП " Парiтет" ЛДТ, 1995.

2. А.И. Марченко. Программирование в среде Borland Pascal 7.0. -К: ЮНИОР, 1996

3. Turbo-Pascal 7.0 -К.: Торгово-издательское бюро BHV, 1996


 

ПРИМЕР ВЫПОЛНЕНИЯ ЗАДАНИЯ

 

Условие задания

Составить блок-схему алгоритма и программу решения задачи вычисления значений функции y=f(x), заданной на интервале х=[-2; 2] несколькими аналитическими выражениями, с шагом изменения аргумента при расчетах h=0, 5.

Вид функции:

 

 

Выполнение задания

 

На рис 2. представлено разбиение области существования функции Y на подинтервалы существования функций f1(x), f2(x), f3(x).

Граничная точка х=-2 входит (исходый расчетный интервал – закрытый), а граничная точка х=0 не входит в область существования функции f1 (с учетом первого условия “если”).

Граничная точка х=0 входит в область существования функции f2(x), а граничная точка х=1 не входит в области существования функций ни f1(x), ни f3(x) по условиям “если”, следовательно, точка х=1 является особой точкой по условиям, а если присмотреться к расчетным формулам f2(x) и f3(x), то она является особой точкой и по смыслу выражений (деление на ноль).

Граничная точка х=2 входит в область существования функции f3 (исходый расчетный интервал – закрытый).

 

 
 


f1(x) f2(x) f3(x)

X

x=-2 x=0 x=1 x=2

 

Рис. 2 – Наглядная схема области существования функции y=f(x)

 

Один из ряда возможных вариантов блок-схемы алгоритма вычислительного процесса представлен на рис. 3. В блок-схеме можно увидеть четыре ветви внутри расчетного цикла, определяющего множественные расчеты на заданном интервале с шагом: три ветви – расчетные, еще одна – для выдачи сообщения об отсутствии решения в особой точке.

Ветвления в блок-схеме внутри цикла организованы с помощью блоков-ромбиков с логическими условиями внутри и с двумя выходами, один из которых перечеркнут (выход по “нет”), а другой без перечеркивания (выход по “да”). В программе эти блоки реализуются операторами if … then … else …. Циклический процесс с предусловием в блок-схеме также организован с помощью блока-ромбика в начале процесса, на который осуществляется передача управления после формирования очередного нового значения аргумента х и который определяет либо продолжение работы цикла, либо выход из цикла по завершению перебора значений аргумента на заданном интервале. В программе такой конструкции подходит специальный оператор цикла с предусловием while … do ….

Текст программы, соответствующий разработанной блок-схеме, приводится после блок-схемы, вместе с каркасом протокола работы.


 

 
 

 

 


 

 

Рис. 3 – Блок-схема алгоритма разветвляющегося процесса расчета y=f(x).


Текст программы на языке Pascal

 

Program Zadacha2;

Uses crt;

var x, xn, xk, h, y: real;

Begin clrscr;

writeln('введите значения xn, xk, h'); readln(xn, xk, h);

x: =xn;

while (x< =xk+h/2) do

begin

if x=1 then writeln('x=', x: 4: 2, ' особая точка')

else

begin

if x< 0 then y: =sin(x)/x

else

if x< 1 then y: =2*x/(1-x)

else y: =x/(x-1);

writeln('x=', x: 4: 2, ' y=', y: 10: 3)

end;

x: =x+h

end

writeln('Конец работы программы’);

writeln (‘Нажмите Enter для выхода из окна результатов');

readln;

End.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.008 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал