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

лаба2

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

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

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

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

КАФЕДРА № 41

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

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

ассистент

К.Н.Смирнов

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

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

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

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

Циклические конструкции.

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

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

СТУДЕНТ ГР. №

4616

А.В.Павлов

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

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

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

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

ЗАДАНИЕ 3.2.1:

Задана функция 𝑓(𝑥). Вычислите значение функции на интервале от a до b с шагом h. Значение аргумента, полученное на каждом шаге, и соответствующее значение функции сохраните в массиве.

𝑓(𝑥) = sin(2𝜋𝑥)

Где a=0, b=1, h=0.01

В данной программе х ограничен интервалам, с шагом 0.01. Используем тип данных с плавающей точкой, т.к как икс может принимать любое значение, как целое, так с плавающей точкой

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

У нас есть функция с синусом, которая принимает значения от 0 до 1 с шагом 0.01, воспользуемся формулой sin(2𝜋𝑥)= ЧЕ ТО ТАМ. Для проверки будем использовать x=0.25,x=0.5,x=0.75. Т.к при этих значениях функция имеет -1, 0, 1 соответственно

Псведокод:

Основная функция

Задаем начальные данные а=0,b=1,h=0.01, массив

Цикл работает пока a<=b в этом случаем выполняй уровнение sin(2*pi*a) и прибавляй к a 0.01 пока цикл не будет завершен

Тестовая функция

Задаем тестовый массив

Делаем значение проверки

Цикл выполняет от начального элемента массива до конечного

Если элемент массива есть в тестовом массиви то удали этот элемент, если тестовый массив меньше 0 то написать верно и прекратить цикл

Иначе ошибка

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

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

import math

#Решение

def LAB3_VAR21():

#начальные данные

a=0

b=1

h=0.01

#данные решения

mas=[]

while a<=b:

mas.append(math.sin(2*a*math.pi))

a+=h

return mas

print(LAB3_VAR21())

def TEST_LAB3_VAR21(mas):

#массив проверяеммых данных

mas_proverka=[1,0,-1]

#булево значение проверки есть ли эти значение в массиве

boole=False

#пербираем массив значений

for el in mas:

if el in mas_proverka:

mas_proverka.remove(el)

if len(mas_proverka)<=0:

print("Верно")

break

else:

print("Ошибка")

TEST_LAB3_VAR21([1,0,-1])

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

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

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

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

Назначение

mas

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

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

a

Целое число

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

b

Целое число

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

h

Целое число

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

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

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

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

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

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

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

1,0,-1

Верно

Пройден

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

5,5,5

Ошибка

Пройден

Ввод текста

1.2,0,тест

Ошибка

Пройден

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

  1. ВЫВОДЫ

js:location.href='/play/start/?level=12';

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