![](/user_photo/_userpic.png)
- •Оглавление
- •Лабораторная работа №1 «Запись арифметических выражения на языке Python. Обработка исключений. Запись информации в текстовый файл. Создание пользовательских функций»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Лабораторная работа №2 «Программирование алгоритмов разветвляющихся структур. Нахождение максимального и минимального значения»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Лабораторная работа №3 «Создание классов. Создание экземпляров классов. Создание конструкторов»
- •Часть 1
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов.
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов.
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов.
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов.
- •2 Часть
- •Задание на разработку проекта
- •Арифметическое выражение лр1: Арифметическое выражение лр2:
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Проверка правильности работы
- •Лабораторная работа №4 «Создание меню в Python-программе. Инкапсуляция»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Доказательство правильности работы
- •Лабораторная работа №5 «Табулирование функции»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Лабораторная работа №6 «Работа с библиотеками Python»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Лабораторная работа № 7 «Создание приложений, использующих итеративные циклические структуры»
- •Задание на разработку проекта
- •Разработка алгоритма
- •3. Выполнение проекта и получение результатов
- •4.Доказательство правильности работы программ
- •Лабораторная работа №8 «Программирование Python-приложений с использованием библиотеки Tkinter»
- •1.Задание на разработку проекта
- •2.Разработка алгоритма
- •3.Выполнение проекта и получение результатов
- •4.Доказательство правильности работы программ
- •Лабораторная работа №9 «Работа с кортежами»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результата
- •Доказательство правильности работы программы
- •Лабораторная работа №10 «Работа со словарями»
- •1 Часть
- •Задание на разработку проекта
- •2. Разработка алгоритма
- •Выполнение проекта и получение результата
- •Доказательство правильности работы программы
- •2 Часть
- •Задание на разработку проекта
- •Разработка проекта
- •Выполнение проекта и получение результатов
- •Лабораторная работа №11 «Работа со списками»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов:
- •Лабораторная работа №12 «Базовые алгоритмы обработки списков и их сортировка»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов:
- •Лабораторная работа №13 «Работа со вложенными последовательностями»
- •Задание на разработку проекта
- •Разработка алгоритма
- •Выполнение проекта и получение результатов
- •Дополнительное задание «Реализация пошаговой детализации»
- •Задание на разработку проекта
- •Разработка алгоритма
- •3. Выполнение проекта и получение результатов
Выполнение проекта и получение результатов
Ниже представлены результаты работы программы (Рисунок 1, Рисунок 2):
Рисунок
2 - Записанные в Excel
результаты программы
Рисунок
1
- Результат
работы программы
Лабораторная работа № 7 «Создание приложений, использующих итеративные циклические структуры»
Задание на разработку проекта
Создать проект для вычисления и отображения на экране тех членов последовательности, значения которых по модулю больше =0.0001, при x=1.5
Для выполнения задания требуется разработать:
Функцию func(x, e), предназначенную для вычисления натурального логарифма, воспользовавшись разложением в ряд.
В функции func(x, e) осуществить вывод значения функции после подстановки корня.
Разработанную функцию поместить в модуль
Записать полученные ответы в Excel файл, а также считать данные из Excel файла.
Формализация и уточнение задания:
Для решения поставленной задачи необходимо вывести рекуррентную формулу вычисления члена последовательности.
Очевидно, что выражение для n-го члена заданной последовательности имеет вид:
Тогда формула для (n+1) члена последовательности имеет вид:
Разделив an+1 на an получим:
Откуда получаем следующую рекуррентную формулу:
В основной части программы осуществить ввод данных и вывод значении функции после подстановки искомого корня.
Разработка алгоритма
Блок-схема функции func(), предназначенная для вычисления натурального логарифма представлена на рисунке 1.
Рисунок 12 - Блок-схема функции func(), предназначенная для вычисления натурального логарифма
На рисунке 2 представлена блок-схема основной части программы.
Рисунок 13 - Блок-схема основной части программы
Ниже представлен код пользовательской функции, а также код основной части программы.
Код пользовательской функции
import openpyxl
def func(x, e):
workbook = openpyxl.load_workbook('C:\\lr7s.xlsx')
sheet = workbook.active
sheets = workbook.sheetnames
n = 0
q = ((2*n+1)*(x-1)**2)/((2*n+3)*((x+1)**2))
s = 0
a = (x-1)/(x+1)
while abs(a) > e:
s = s + a
a = a*q
n = n + 1
print(n, s)
cell=sheet.cell(row=n+1,column=1)
cell.value=n
cell=sheet.cell(row=n+1,column=2)
cell.value=s
sheet.merge_cells('A5:B5')
cell = sheet.cell(row = 5, column =1)
cell.value = 'Значение выражения: '
cell = sheet.cell(row=5, column=3)
cell.value = 2*s
workbook.save('C:\\lr7s.xlsx')
return s
Код основной части программы:
from func import *
import openpyxl
x = float(input("Введите начальное значение x: "))
e = float(input("Введите значение точности e: "))
g = func(x, e)
print('Приближенное значение ln(x) при x = 1.5 равно: ', '{0:.14f}'. format(2*g))
#Чтение из файла
workbook = openpyxl.load_workbook('C:\\lr7s.xlsx')
worksheet = workbook.active
for i in range(0, worksheet.max_row):
for col in worksheet.iter_cols(1, worksheet.max_column):
print(col[i].value, end='\t\t')
print("")