Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Условные конструкции

Автор:   •  Ноябрь 7, 2019  •  Лабораторная работа  •  393 Слов (2 Страниц)  •  290 Просмотры

Страница 1 из 2

ГУАП

КАФЕДРА № 41

ОТЧЕТ

ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

доцент, к.т.н.

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №2

УСЛОВНЫЕ КОНСТРУКЦИИ

по курсу: ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР. №

М621

подпись, дата

инициалы, фамилия

Санкт-Петербург

2018

Постановка задачи.

Задание №9, вариант  14.

Вычислить значение функции рез ( ) при условии, что функция вычисляется по формуле:

1 1(  ), при        < 1

рез (  ) = {  2 2(   − 1), при 1 ≤        ≤ 2

3 3(   − 2), при        > 2

Для данного варианта:

1 = 5, 2 = 5, 3 = 2.5; 2

[pic 1]

  +1

2(  ) = 4  2 − 1

Т.к. функция содержит дробь - возможны случаи, при которых будет происходить попытка деления числа на 0. Необходимо учесть эти случаи при разработке программы.

Математическая модель.

Необходимо подставить соответствующие варианту задания константы в основную функцию и выполнить преобразования.

5 ∙   +12 , при        < 1

[pic 2]

рез ( ) = {(−7) ∗ (4(   − 1)2 − 1), при 1 ≤ ≤ 2 5 ∗ (2(   − 2) − 1), при > 2

  +110 , при        < 1

[pic 3]

рез ( ) = { −28(   − 1)2 + 7, при 1 ≤ ≤ 2 10(   − 2) − 5, при > 2

Функция определена на всей числовой прямой.

Из преобразованной функции видно, что при x = -1

на 0.


будет происходить деление

Описание разработанной программы.

Входные переменные:

Имя переменной

Тип переменной

Назначение

x

float

Хранит значение переменной

выходные переменные:

Имя переменной

Тип переменной

Назначение

fx

float

Хранит результат вычисления

функции

Описание алгоритма.

[pic 4]

Начало

Ввод x

да

нет

x равен -1

[pic 5]

Вывод сообщения

да

x меньше 1

нет

об ошибке

fx=10/(x+1)

да

x больше 2

нет

fx=10*(x-2)-5        fx=-28*((x-1)**2)+7

Вывод fx

Конец

Листинг программы.

def LAB2_VAR_914(x):

fx = 0.0;

if x == -1 :

print ('Ошибка! Деление на 0 недопустимо.')

else :

if x < 1 :

fx= 10/(x+1)

else :

if x>2:

fx=10*(x-2)-5

else: fx= -28*((x-1)**2)+7

return fx

def TEST_LAB2_VAR_914():

fx = LAB2_VAR_914(x=-6)

if fx != -2.0:

print('Тест №1 не пройден')

else: print('Тест № 1 пройден')

fx= LAB2_VAR_914(x=1)

if fx != 7.0:

print('Тест №2 не пройден')

else: print('Тест №2 пройден')

fx= LAB2_VAR_914(x=5)

...

Скачать:   txt (5.6 Kb)   pdf (312.2 Kb)   docx (608.6 Kb)  
Продолжить читать еще 1 страницу »
Доступно только на Essays.club