ЛАБОРАТОРНАЯ РАБОТА 4. ИСПОЛЬЗОВАНИЕ МАТЕМАТИЧЕСКИХ ФУНКЦИЙ ИЗ MATH.H ДЛЯ ВЫЧИСЛЕНИЙ


ЦЕЛЬ РАБОТЫ: Изучить работу со встроенными библиотечными функциями из MATH.H.

  1. Порядок выполнения работы.

Зайти в директорию BC31\BIN. Запустить bc.

1.1. Ввести и выполнить пpогpамму 1. Записать в отчет послед-

нюю строку, выдаваемую программой.

— изменить программу 1  так:  вместо  while(…)  {…}

подставить:

while(total += current *= 2.0, count++ < KLET)

printf(«%4d   %15.2e  %13.2e  %13.2e\n»,count,current,total,total/UR);

— изменить  программу  1  так:   вместо    printf(…);

while(…) {…} подставить:

do

printf(«%4d   %15.2e  %13.2e  %13.2e\n»,count,current,total,total/UR);

while(total += current *= 2.0, count++ < KLET);

Объяснить разницу между работой всех трех вариантов.

1.2. Скопировать из Help пример для функции sin и выполнить

его для значений  х = 0.5, 2.0, -0.75.

/* Текст программы 1.*/

/* Расчет количества зерен пшеницы */

#include <stdio.h>

#define KLET 64

#define UR 7E14

int main(void)

{

int count=1;

double current,total;

total=current=1.0;

printf(«\nНомер Число зерен Сумма зерен Доля от годо-\n»);

printf(«клетки                        вого урожая  \n»);

printf(«%4d   %15.2e  %13.2e  %13.2e\n»,count,current,total,total/UR);

while (count<KLET)

{

count++;

current=2.0*current;

total=total+current;

printf(«%4d   %15.2e  %13.2e  %13.2e\n»,count,current,total,total/UR);

}

return 0;

}

  1. Содержание отчета.
  1. Результаты pаботы пpогpаммы 1 до и после указанных  изме-

нений. (только последняя строка).

  1. Результаты pаботы пpогpаммы из Help.
  2. Последовательность действий при копировании примера из

Help.

  1. Индивидуальное задание.

ИНДИВИДУАЛЬНЫЕ ЗАДАНИЯ.

  1. Составить программу, для которой вводится число, а  выдается

его модуль. (abs(),labs())

  1. Составить программу, для которой вводятся границы и шаг изме-

нения аргумента функции косинуса, а  выводится  таблица  значений

аргумента и соответствующих им значений функции. Выяснить ограни-

чения функции и аргумента. (cos())

  1. То же, что и 2, но для синуса.(sin())

4.То же, что и 2, но для тангенса.(tan())

5.Преобразовать вводимую строку символов в коде  ASCII  в  число.

(atoi(),atof())

6.Вводятся числа X и Y. Рассчитать X * exp(Y).

7.То же, что и 2, но для логарифма.(log(),log10())

8.Для прямоугольного треугольника даны катет и  гипотенуза.  Рас-

считать второй катет.(sqrt())

9.Составить программу для округления введенного числа как вверх,

так и вниз.(floor(),ceil())

10.Разделить вводимое число на целую и дробную части.(modf())

11.Вычислить значения функции y = 4x^3 — 2x^2 + 5 для значений х,

изменяющихся от -3 до 1, с шагом 0.1. (pow())

12.Вычислить значения функции y = 4x^3 — 2x^2 + 5 для значений х,

изменяющихся от -3 до 1, с шагом 0.1. (poly())

13.Вычислить длинное целое число из вводимых с клавиатуры цифр  и

вывести его на экран. (pow10())

  1. Вопросы по лабораторной работе.
  1. Как выполняется оператор while(…)?
  2. Как выполняется оператор do … while(…)?
  3. Описать работу программу 1.
  4. Директива препроцессора #define.
  5. Как скопировать пример из Help?(Приложение 5).
  6. Как подключить библиотеку математических функций?

ПРИЛОЖЕHИЕ.

  1. Оператор while(<логическое выражение>){<операторы>} выполняет-

ся так: вычисляется <логическое выражение>.Если  оно  истинно,

то выполняются <операторы> и управление передается  на  начало

цикла while. Если оно ложно, то происходит выход из цикла.

  1. Оператор do {<операторы>} while(<логическое выражение>) выпол-

няется так: выполняются <операторы>, затем вычисляется  <логи-

ческое выражение>.Если оно истинно,то управление передается на

начало цикла do. Если оно ложно, то происходит выход из цикла.

Как для оператора while, так и для do while  если  в  качестве

<операторов> есть только один оператор то фигурные  скобки  {}

можно не ставить.

  1. Директива препроцессора #define <идентификатор> <макроподста-

новка> работает так: вместо <идентификатора> во всей  програм-

ме подставляется <макроподстановка>. Пример:

#define PI 3.1415926

Теперь в программе вместо цифр 3.1415926 можно писать PI.

  1. Функции, определенные в головном файле math.h:

abs       acos      asin      atan      atan2     atof      cabs

ceil      cos       cosh      exp       fabs      floor     fmod

frexp     hypot     labs      ldexp     log       log10    matherr

modf      poly      pow       pow10     sin       sinh      sqrt

tan       tanh

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

5.1 В одном из окон иметь часть файла Help с необходимым

примером;

5.2 В меню EDIT выполнить COPY EXAMPLE. Необходимый текст

примера окажется в окне CLIPBOARD. Для проверки последней операции

выполнить в меню EDIT режим Show clipboard.

5.3 Перейти (F6) в то окно, куда необходимо переслать при-

мер из Help.

5.4 Для пересылки примера из окна CLIPBOARD  в необходимое

окно использовать в меню EDIT режим Paste.

 a Q            [1]A *.FRMР Ъ» L     h   /    >     M *.MAC Р d*.MACk Р o 0¬   s   Д Р Ь»Ц Р Ъ»Ъ   < Б        [1] A *.FRM