Загрузка...

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


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

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

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

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

1.1. Ввести и выполнить программу 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. Результаты работы программы 1 до и после указанных  изменений. (только последняя строка).
  2. Результаты работы программы из Help.
  3. Последовательность действий при копировании примера из Help.
  4. Индивидуальное задание.
  1. Вопросы по лабораторной работе
  1. Описать работу программу 1.
  2. Директива препроцессора #define.
  3. Как скопировать пример из Help?(Приложение 5).
  4. Как подключить библиотеку математических функций?
  5. Оператор ветвления if и его модификации.

6.Как выполняется оператор while(…)?

  1. Как выполняется оператор do … while(…)?

ПРИЛОЖЕHИЕ.

  1. Оператор while(<логическое выражение>){<операторы>} выполняется так: вычисляется <логическое выражение>.Если оно истинно,  то выполняются <операторы> и управление передается  на  начало  цикла while. Если оно ложно, то происходит выход из цикла.
  2. Оператор do {<операторы>} while(<логическое выражение>) выполняется так: выполняются <операторы>, затем вычисляется <логическое выражение>.Если оно истинно,то управление передается на начало цикла do. Если оно ложно, то происходит выход из цикла. Как для оператора while, так и для do while  если  в  качестве    <операторов> есть только один оператор то фигурные  скобки  {}    можно не ставить.
  3. Директива препроцессора #define <идентификатор> <макроподстановка> работает так: вместо <идентификатора> во всей программе подставляется <макроподстановка>. Пример:     #define PI 3.1415926 Теперь в программе вместо цифр 3.1415926 можно писать PI 3.14. Функции, определенные в головном файле 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.

Загрузка...