Файл: Лабораторная работа Вводвывод. Линейный алгоритм Создать программу, автоматизирующую процесс решение задачи в соответствии с.docx
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 25.10.2023
Просмотров: 325
Скачиваний: 3
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
Учебная практика по модулю ПМ02. Разработка внедрение и адаптация программного обеспечения отраслевой направленностиВыполнил – Лаврентьев А.А.Проверил(а) – Егорова Г.Н.Вариант 10Лабораторная работа 1. Ввод-вывод. Линейный алгоритмСоздать программу, автоматизирующую процесс решение задачи в соответствии с вариантом.
Задача 2x = int(input("Введите значение переменой x: "))y = int(input("Введите значение переменной y: "))if x or y and not(x):print("Выражение истинно")else:print("Выражение ложно")Решение похоже на 1,и тут тоже нужно сделать отступ чтобы код заработал.Задача 3x = input("Введите значение переменной x (true/false): ")if x.lower() == 'true':x = Trueelse:x = Falseif not(x or not(x)) and not (x):print("Выражение истинно")else:print("Выражение ложно")not(x or not(x)) - это отрицание выражения, которое означает: (x или не x), т.е. True в любом случае, кроме того, когда x = False.not (x) - это просто отрицание x. Если оба условия истинны, то выражение в if-конструкции вернет True. В остальных случаях будет False.Метод lower() — это строковый метод, который возвращает новую строку полностью в нижнем регистре. Если исходная строка содержит прописные буквы, в новой строке они будут строчными. При этом любая строчная буква или любой символ, не являющийся буквой, не изменяется.Лабораторная работа 3.1 Математические функцииНаписать программу для расчета по формулам в соответствии с вариантом, представленном в таблице.import mathalpha1 = float(input("Введите значение угла в градусах: "))sin_alpha = math.sin(math.radians(4*alpha1))cos_alpha = math.cos(math.radians(alpha1))z = sin_alpha + math.pow(cos_alpha, 4) * math.cos(math.radians(2*alpha1)) + math.pow(cos_alpha, 2)print("Значение выражения равно:", z)В начале надо установить модуль math для использования функций sin и cos. Затем запросить значение угла alpha1, переводим его из градусов в радианы и вычисляем значения sin alpha и cos alpha.Далее мы используем эти значения для вычисления переменной z по формуле. И потом выводим результат командой printТеперь, если ввести значение, например, 30, то программа выведет на экран значение выражения z, которое будет равно 1.8972754037844388Лабораторная работа 3.2 ВетвлениеСоставить программу, которая определяет, попадает ли точка с заданными координатами
X, Y в закрашенную область. Значение радиусавводится с клавиатуры.import mathx = float(input("Введите X: "))y = float(input("Введите Y: "))r = float(input("Введите радиус круга: "))if x <= 0 and y <= 0 and math.sqrt(x**2 + y**2) <= r:print("Точка ({}, {}) попадает в закрашенную область".format(x, y))elseprint("Точка ({}, {}) не попадает в закрашенную область".format(x, y))import math – Добавление библиотеки math для того, чтобы был доступ к математическим формуламfloat – функция чтобы можно было писать числа с запятой input – функция чтобы можно было получать вводимую с клавиатуры информациюif – если формула верна то оно выводит True, т.е. в случае из задачи print("Точка ({}, {}) попадает в закрашенную область".format(x, y))else- если формула не верна, то выводит print("Точка ({}, {}) не попадает в закрашенную область".format(x, y))math.sqrt – функция чтобы получить квадратный корень из числаЧто получилось:Задание 2Составить программу для вычисления значения функции в соответствии со своим вариантом. В качестве f(x) использовать по выбору: x2, ex. Значения переменных x,y,b вводит пользователь. Операция max-нахождение максимума, операция min – нахождения минимума. Эти операции реализовать самостоятельно через if.importmathx = float(input("Введите значение переменной x: "))q = float(input("Введите значение переменной q: "))b = input("Введите операцию (max или min): ")if abs(x*q) > 10:k = (x**2 + abs(q)) * math.exp(x**2+q)k = math.log(k, 10)elif abs(x*q) < 10:k = abs(x*q)else:k = 0if b == "max":result = max(k, x, q)elif b == "min":result = min(k, x, q)print("Результат =", result)Ключевое слово elif - это способ Python сказать, что “если предыдущие условные были неверными, тогда попробуйте это условное”.Лабораторная работа 4. ЦиклыЗадание 1. Создать программу, автоматизирующую процесс решение задачи в соответствии с вариантом.
Известны оценки по физике каждого из 20 учеников класса. Определить среднюю оценку. Решить задачу используя циклическую конструкцию for.grades = []for i in range(20):grade = int(input("Введитеоценкудляученика {}: ".format(i+1)))grades.append(grade)total_grades = sum(grades)num_grades = len(grades)average_grade = total_grades / num_gradesprint("Средняя оценка по физике: ", average_grade)Grades – с помощью этой функции мы создаем список для хранения оценокFor – цикл чтобы не печатать в ручную в коде, т.е. не нужно будет отдельно прописывать print для всех 20 учеников Задание 2. 2.Дано число A (> 1). Вывести наибольшее из целых чисел K, для которых сумма 1 + 1/2 + … + 1/K будет меньше A, и саму эту сумму.Решить задачу используя циклическую конструкцию while.A = int(input("Введитечисло A: "))summa = 0K = 1while summa < A:summa += 1/Kif summa > A:breakK += 1print("Наибольшее K:", round(K-1))print("Соответствующая сумма:", round(summa-1/(K-1)))round – использовал для того, чтобы число выводилось целое+= - это сокращенная запись операции сложения с присваиванием. Этот оператор позволяет прибавить значение справа от него к переменной слева и сохранить результат в этой же переменнойЛабораторная работа 5. СтрокиСоздать программу, автоматизирующую процесс решение задачи в соответствии с вариантом.S = input("Введите слово: ").lower() # Приводим слово к нижнему региструlast_letter = S[-1] # Получаем последнюю букву словаiflast_letterin "аеёиоуыэюя": # Проверяем, является ли последняя буква гласнойprint("Слово оканчивается на гласную букву")else:print("Слово оканчивается на согласную букву")метод lower() - используется для того, чтобы привести слово к одному (к нижнему) регистру, независимо от того, как именно оно было введеноlast _letter – нужен чтобы считывать последнюю букву в слове
Лабораторная работа 6. СпискиСоздать программу, автоматизирующую процесс решение задачи в соответствии с вариантом.Задание 1Создать список имен (должен получиться новый список, в котором длина слов – нечетное число). Начальный список: ['Чебурашка', 'Пьеро', 'Буратино', 'Василиса', 'Иван'].names = ['Чебурашка', 'Пьеро', 'Буратино', 'Василиса', 'Иван']odd_length_names = [name for name in names if len(name) % 2 != 0]print(odd_length_names)len(name) % 2 != 0 используется для проверки того, является ли длина имени нечётным числом.Оператор % используется для получения остатка от деления. Если длина имени является чётным числом, то при делении на 2 остаток будет равен 0, и условие len(name) % 2 != 0 не выполнится т.к. это значит что словоо четное. Если нечетная то выполнитсяЗадание 21. Определите, есть ли в списке повторяющиеся элементы, если да, то вывести на экран первое повторяющееся значение, иначе сообщение об их отсутствии.2. Дан одномерный список из 15 элементов. Элементам списка меньше 10 присвоить нулевые значения, а элементам больше 20 присвоить 1. Вывести на экран монитора первоначальный и преобразованный список в строчку.A = [21, 2, 3, 1, 8, 23, 43, 5, 6, 7, 0, 28, 25, 29, 43]# Выводим исходный список на экранprint("Исходныйсписок:")print(' '.join(map(str,A)))# Преобразуемсписок A согласноусловиюA = [0 if i < 10 else 1 if i > 20 else i for i in A]# Выводим преобразованный список на экранprint("Преобразованныйсписок:")print(' '.join(map(str,A)))# Проверяемналичиеповторяющихсяэлементовduplicates = set()for item in A:if A.count(item) > 1:duplicates.add(item)# Если есть повторяющиеся элементы, выводим первое повторяющееся значениеif duplicates:print("Первое повторяющееся значение:", duplicates.pop())else:print("Повторяющиеся значения отсутствуют")Лабораторная работа 7. СловарьИспользуя словарь реализовать поставленную задачу.Воспользовавшись записью СТУДЕНТ из варианта №1, определите, какой из предметов был сдан группой хуже всего.student1 = {"ФИО": "Осипов Денис Ильич",
-
В магазин привезли овощи. В первый день продали N% и еще S кг привезенных овощей, после чего в магазине осталось M кг овощей. Сколько килограммов овощей привезли в магазин?
Задача 2x = int(input("Введите значение переменой x: "))y = int(input("Введите значение переменной y: "))if x or y and not(x):print("Выражение истинно")else:print("Выражение ложно")Решение похоже на 1,и тут тоже нужно сделать отступ чтобы код заработал.Задача 3x = input("Введите значение переменной x (true/false): ")if x.lower() == 'true':x = Trueelse:x = Falseif not(x or not(x)) and not (x):print("Выражение истинно")else:print("Выражение ложно")not(x or not(x)) - это отрицание выражения, которое означает: (x или не x), т.е. True в любом случае, кроме того, когда x = False.not (x) - это просто отрицание x. Если оба условия истинны, то выражение в if-конструкции вернет True. В остальных случаях будет False.Метод lower() — это строковый метод, который возвращает новую строку полностью в нижнем регистре. Если исходная строка содержит прописные буквы, в новой строке они будут строчными. При этом любая строчная буква или любой символ, не являющийся буквой, не изменяется.Лабораторная работа 3.1 Математические функцииНаписать программу для расчета по формулам в соответствии с вариантом, представленном в таблице.import mathalpha1 = float(input("Введите значение угла в градусах: "))sin_alpha = math.sin(math.radians(4*alpha1))cos_alpha = math.cos(math.radians(alpha1))z = sin_alpha + math.pow(cos_alpha, 4) * math.cos(math.radians(2*alpha1)) + math.pow(cos_alpha, 2)print("Значение выражения равно:", z)В начале надо установить модуль math для использования функций sin и cos. Затем запросить значение угла alpha1, переводим его из градусов в радианы и вычисляем значения sin alpha и cos alpha.Далее мы используем эти значения для вычисления переменной z по формуле. И потом выводим результат командой printТеперь, если ввести значение, например, 30, то программа выведет на экран значение выражения z, которое будет равно 1.8972754037844388Лабораторная работа 3.2 ВетвлениеСоставить программу, которая определяет, попадает ли точка с заданными координатами
X, Y в закрашенную область. Значение радиусавводится с клавиатуры.import mathx = float(input("Введите X: "))y = float(input("Введите Y: "))r = float(input("Введите радиус круга: "))if x <= 0 and y <= 0 and math.sqrt(x**2 + y**2) <= r:print("Точка ({}, {}) попадает в закрашенную область".format(x, y))elseprint("Точка ({}, {}) не попадает в закрашенную область".format(x, y))import math – Добавление библиотеки math для того, чтобы был доступ к математическим формуламfloat – функция чтобы можно было писать числа с запятой input – функция чтобы можно было получать вводимую с клавиатуры информациюif – если формула верна то оно выводит True, т.е. в случае из задачи print("Точка ({}, {}) попадает в закрашенную область".format(x, y))else- если формула не верна, то выводит print("Точка ({}, {}) не попадает в закрашенную область".format(x, y))math.sqrt – функция чтобы получить квадратный корень из числаЧто получилось:Задание 2Составить программу для вычисления значения функции в соответствии со своим вариантом. В качестве f(x) использовать по выбору: x2, ex. Значения переменных x,y,b вводит пользователь. Операция max-нахождение максимума, операция min – нахождения минимума. Эти операции реализовать самостоятельно через if.importmathx = float(input("Введите значение переменной x: "))q = float(input("Введите значение переменной q: "))b = input("Введите операцию (max или min): ")if abs(x*q) > 10:k = (x**2 + abs(q)) * math.exp(x**2+q)k = math.log(k, 10)elif abs(x*q) < 10:k = abs(x*q)else:k = 0if b == "max":result = max(k, x, q)elif b == "min":result = min(k, x, q)print("Результат =", result)Ключевое слово elif - это способ Python сказать, что “если предыдущие условные были неверными, тогда попробуйте это условное”.Лабораторная работа 4. ЦиклыЗадание 1. Создать программу, автоматизирующую процесс решение задачи в соответствии с вариантом.
Известны оценки по физике каждого из 20 учеников класса. Определить среднюю оценку. Решить задачу используя циклическую конструкцию for.grades = []for i in range(20):grade = int(input("Введитеоценкудляученика {}: ".format(i+1)))grades.append(grade)total_grades = sum(grades)num_grades = len(grades)average_grade = total_grades / num_gradesprint("Средняя оценка по физике: ", average_grade)Grades – с помощью этой функции мы создаем список для хранения оценокFor – цикл чтобы не печатать в ручную в коде, т.е. не нужно будет отдельно прописывать print для всех 20 учеников Задание 2. 2.Дано число A (> 1). Вывести наибольшее из целых чисел K, для которых сумма 1 + 1/2 + … + 1/K будет меньше A, и саму эту сумму.Решить задачу используя циклическую конструкцию while.A = int(input("Введитечисло A: "))summa = 0K = 1while summa < A:summa += 1/Kif summa > A:breakK += 1print("Наибольшее K:", round(K-1))print("Соответствующая сумма:", round(summa-1/(K-1)))round – использовал для того, чтобы число выводилось целое+= - это сокращенная запись операции сложения с присваиванием. Этот оператор позволяет прибавить значение справа от него к переменной слева и сохранить результат в этой же переменнойЛабораторная работа 5. СтрокиСоздать программу, автоматизирующую процесс решение задачи в соответствии с вариантом.S = input("Введите слово: ").lower() # Приводим слово к нижнему региструlast_letter = S[-1] # Получаем последнюю букву словаiflast_letterin "аеёиоуыэюя": # Проверяем, является ли последняя буква гласнойprint("Слово оканчивается на гласную букву")else:print("Слово оканчивается на согласную букву")метод lower() - используется для того, чтобы привести слово к одному (к нижнему) регистру, независимо от того, как именно оно было введеноlast _letter – нужен чтобы считывать последнюю букву в слове
Лабораторная работа 6. СпискиСоздать программу, автоматизирующую процесс решение задачи в соответствии с вариантом.Задание 1Создать список имен (должен получиться новый список, в котором длина слов – нечетное число). Начальный список: ['Чебурашка', 'Пьеро', 'Буратино', 'Василиса', 'Иван'].names = ['Чебурашка', 'Пьеро', 'Буратино', 'Василиса', 'Иван']odd_length_names = [name for name in names if len(name) % 2 != 0]print(odd_length_names)len(name) % 2 != 0 используется для проверки того, является ли длина имени нечётным числом.Оператор % используется для получения остатка от деления. Если длина имени является чётным числом, то при делении на 2 остаток будет равен 0, и условие len(name) % 2 != 0 не выполнится т.к. это значит что словоо четное. Если нечетная то выполнитсяЗадание 21. Определите, есть ли в списке повторяющиеся элементы, если да, то вывести на экран первое повторяющееся значение, иначе сообщение об их отсутствии.2. Дан одномерный список из 15 элементов. Элементам списка меньше 10 присвоить нулевые значения, а элементам больше 20 присвоить 1. Вывести на экран монитора первоначальный и преобразованный список в строчку.A = [21, 2, 3, 1, 8, 23, 43, 5, 6, 7, 0, 28, 25, 29, 43]# Выводим исходный список на экранprint("Исходныйсписок:")print(' '.join(map(str,A)))# Преобразуемсписок A согласноусловиюA = [0 if i < 10 else 1 if i > 20 else i for i in A]# Выводим преобразованный список на экранprint("Преобразованныйсписок:")print(' '.join(map(str,A)))# Проверяемналичиеповторяющихсяэлементовduplicates = set()for item in A:if A.count(item) > 1:duplicates.add(item)# Если есть повторяющиеся элементы, выводим первое повторяющееся значениеif duplicates:print("Первое повторяющееся значение:", duplicates.pop())else:print("Повторяющиеся значения отсутствуют")Лабораторная работа 7. СловарьИспользуя словарь реализовать поставленную задачу.Воспользовавшись записью СТУДЕНТ из варианта №1, определите, какой из предметов был сдан группой хуже всего.student1 = {"ФИО": "Осипов Денис Ильич",