Хелпикс

Главная

Контакты

Случайная статья





Инструкция по выполнению практической работы № 7



 

Дата по расписанию: 05.11.2020

Группа: 1-ОПУТ-20

Дисциплина (МДК, ПМ): ОДБ.02 Информатика и ИКТ

 

Инструкция по выполнению практической работы № 7

Практическая работа № 7.Табулирование функции с использованием оператора цикла с параметром.

Цель занятия:

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

Теоретические сведения

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

Поскольку в качестве параметра в операторе for не может быть использована переменная действительного типа (например, переменная x), то введем дополнительную переменную i, значение которой будем изменять от 1 до Nx с постоянным шагом 1. Значение Nx равно числу повторений цикла при законе изменения параметра x=x0(hx)xn и определяется формулой

где [z] означает целую часть числа z.

Для переменной x перед циклом зададим ее начальное значение x0, а в теле цикла будем производить ее модификацию (изменение). Закон изменения параметра i цикла укажем в заголовке цикла. В результате получаем схему алгоритма циклической структуры, для которой запишем программу табулирования функции

при x=x0(hx)xn в виде:

Program  Tab;

Const    hx=Pi/5;

     x0=-Pi;

     xn=Pi;

Var      x,y:real;

     i,nx:integer;

 

Begin  writeln;

   writeln('  Автор – Иванов И.П., студент гр. 1-ОПУТ-20');

   writeln('  Вариант No 22');

   writeln(' Программа для заполнения таблицы значений функции');

   writeln(' |x-2            x>2.5');

   writeln('Y= |1+x*x       0<=x<=2.5');

   writeln(' |x*ln|cos(x)|     x<0');

   writeln('на отрезке [-Pi; Pi] сшагом Pi/10');

   writeln;

 

                   x:=x0;

                   nx:=trunc((xn-x0)/hx+1e-6)+1;

                   fori:=1 tonx do

                   begin{начало цикла}

                                          ifx>2.5

                                          then

                                                          y:=x-2

                                          else ifx<2.5

                                                                  then

                                                                                 y:=x*ln(abs(cos(x)))

                                                                  else

                                                                                 y:=1+x*x;

                                          Writeln('X=',x:4:4,' Y=',y);

                                          x:=x+h

                              end; {конец цикла}

   Readln

End.

В программе использована стандартная функция Trunc(x), результат которой есть наибольшее целое число меньшее или равное x. Аргумент функции Trunc дополнен слагаемым 1Е-6, который, не изменяя полученного результата, позволяет избежать ошибки представления вещественных значений x0, hx и xn.

Программу составлять в одном из приложений:

1. PascalABC.NET (для ПК) - http://pascalabc.net/ssyilki-dlya-skachivaniya

2. Pascal N-IDE (устройства с Android) - https://play.google.com/store/apps/details?id=com.duy.pascal.compiler&hl=ru

 

 


Задание: необходимо протабулировать функцию , т. е. получить таблицу ее значений на отрезке  с постоянным шагом .

 



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.