Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

лаба4

.docx
Скачиваний:
8
Добавлен:
25.12.2018
Размер:
52.93 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

КАФЕДРА № 41

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

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

ассистент

К.Н.Смирнов

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

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

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

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

Смешанные алгоритмы 2 .

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

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

СТУДЕНТ ГР. №

4616

А.В.Павлов

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

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

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

  1. ПОСТАНОВКА ЗАДАЧИ

ЗАДАНИЕ 5.14:

Составить программу, вычисляющую выражение:10 14 18 22

Сначала считается первая сумма, затем вторая, таким образом получаем

При K=4 и J=3 98 256 632 1504

  1. МАТЕМАТИЧЕСКАЯ МОДЕЛЬ

Имеем функцию с двумя суммами,

Псведокод:

Задаем массив и начальные значения

Ввод данных

Цикл от 1 до 2(включельно)

Добавляем нулевой массив

Перебираем от 1 до К+1

Перебираем от 0 до J+1

Добавляем значения в конец массива

Прибавляем шаг

Вызываем функцию

Печатаем результат

Проверка результата

  1. ОПИСАНИЕ РАЗРАБОТАННОЙ ПРОГРАММЫ

Код программы:

def LAB5_VAR14():

mass = []

x=1

x_max=2

h=0.05

K=int(input("K= "))

J = int(input("J= "))

if K <= 1 and J <= 0:

print('eror')

else:

#цикл х от 1 до 2

while x<=x_max+h:

#добавляем новый список в массив

mass.append(0)

#перебираем K:1 до К

for k in range(1,K+1):

#перебераем от J от 1 до J

for j in range(0,J+1):

#добавляем вычисления в последний список массива

mass[-1]+=((k+j)*x**(k+j)* 100 // 1 / 100)

x+=h

return mass

def TEST_LAB5_VAR14(mass):

test=[64.0,

80.36000000000001,

100.34,

124.58000000000001,

153.88,

188.95999999999998,

231.03000000000003,

280.99,

340.1600000000001,

409.96,

492.02,

588.02,

700.0,

830.1199999999999,

980.8899999999999,

1154.93,

1355.29,

1585.13,

1848.1799999999998,

2148.34,

2490.0]

for b in mass:

if b in test:

print("Верно",b)

else:

print("Ошибка",b)

TEST_LAB5_VAR14( LAB5_VAR14() )

Функция LAB5_VAR_14 функция внутри которой производится решение поставленной задачи. Внутри идет подсчет каждого элемента суммы по заданному условию

Используемые переменные:

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

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

Назначение

mass

Массив

Массив данных

h

Число с плавающей точкой

Хранит данные

x

Число с плавающей точкой

Хранит данные

x_max

Число с плавающей точкой

Хранит данные

J

Число с плавающей точкой

Хранит данные

K

Число с плавающей точкой

Хранит данные

  1. ОПИСАНИЕ ТЕСТОВОГО НАБОРА

Описание тестового случая

Входные данные

Ожидаемый результат

Результат теста

Правильные данные

[4,3], [64

80.40179908359377

100.40200170000006

124.65920116328132

153.9284736000001

189.07196044921892

231.07021990000027

281.0343748289066

340.2190848000005

410.0363696898444

492.0703125000008

588.0926689195323

700.0794112000012

830.2282339054703

980.977049100002

1155.0234985351588

1355.345510400003

1585.2229281960977

1848.2602393000045

2148.4104307757866

2490.0000000000064]

Верно

Пройден

Неправильные данные

[0,0], [eror]

Ошибка

Пройден

Ввод текста

[1, текст], [ошибка]

Ошибка

Пройден

  1. ПРИМЕРЫ РАБОТЫ ПРОГРАММЫ

  1. ВЫВОДЫ

В ходе лабораторной работы я научился создавать сложные смешанные алгоритмы

Соседние файлы в предмете Технология программирования