
OS_LR1 (Питон. Простые числа и регулярка с операторами)
.docx
|
Министерство науки и высшего образования Российской Федерации Калужский филиал федерального государственного бюджетного образовательного учреждения высшего образования «Московский государственный технический университет имени Н.Э. Баумана (национальный исследовательский университет)» (КФ МГТУ им. Н.Э. Баумана) |
ФАКУЛЬТЕТ _ИУК «Информатика и управление»
КАФЕДРА ИУК6 «Защита информации»
ЛАБОРАТОРНАЯ РАБОТА № 1
«ВВЕДЕНИЕ В ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ PYTHON»
_
ДИСЦИПЛИНА: «Операционные системы»
Выполнил: студент гр. ИУК6-__ |
_________________ (________________) (Подпись) (Ф.И.О.)
|
|
Проверил: |
_________________ (_______________) (Подпись) (Ф.И.О.)
|
|
Дата сдачи (защиты): Результаты сдачи (защиты): |
||
|
- Балльная оценка: - Оценка:
|
Калуга, 2021
Цель работы: сформировать практические навыки написания программы на языке Python.
Задачи: разработать программу на языке Python в соответствии с вариантом и рекомендациями, выполняющую 2 задания. Первое задание подразумевает написание функции, реализующей описанный функционал. Во втором задании – обязательно применение регулярных выражений.
Теоретические сведения
О Python – предмете данного изучения, лучше всего говорит создатель этого языка программирования, голландец Гвидо ван Россум:
«Python – интерпретируемый, объектно-ориентированный высокоуровневый язык программирования с динамической семантикой. Встроенные высокоуровневые структуры данных в сочетании с динамической типизацией и связыванием делают язык привлекательным для быстрой разработки приложений (RAD, Rapid Application Development). Кроме того, его можно использовать в качестве сценарного языка для связи программных компонентов. Синтаксис Python прост в изучении, в нем придается особое значение читаемости кода, а это сокращает затраты на сопровождение программных продуктов. Python поддерживает модули и пакеты, поощряя модульность и повторное использование кода. Интерпретатор Python и большая стандартная библиотека доступны бесплатно в виде исходных и исполняемых кодов для всех основных платформ и могут свободно распространяться».
Создание Python было начато Гвидо ван Россумом (Guido van Rossum) в 1991 году, когда он работал над распределенной ОС Амеба. Ему требовался расширяемый язык, который бы обеспечил поддержку системных вызовов. За основу были взяты ABC и Модула-3. В качестве названия он выбрал Python в честь комедийных серий BBC "Летающий цирк Монти-Питона", а вовсе не по названию змеи. С тех пор Python развивался при поддержке тех организаций, в которых Гвидо работал. Программа на языке Python может состоять из одного или нескольких модулей.
Выполнение работы
Задание 1: напишите функцию проверки целого числа на принадлежность его к множеству простых чисел и функцию нахождения списка простых чисел меньших или равных заданному.
Краткое описание работы программы: программа принимает на вход число и проверяет его на принадлежности к множеству простых посредством функции, а затем находит все числа, меньше данного, проверяя, есть ли у него остатки от деления на какие-то числа, кроме единицы и самого этого числа.
Листинг программы для задания 1:
def prostoe(n):
i = 2
while i < n:
if n % i == 0:
return False
i += 1
return True
n = int(input("Number: "))
p = 2
while p <= n:
if prostoe(p):
print(p)
p = p + 1
Результат работы:
Рисунок 1 – Результат выполнения программы
Задание 2: разработайте функцию, форматирующую текст на входе по правилам:
• операторы ’+’, ’-’, ’*’, ’/’ отделяются от других слов пробелами;
• круглые скобки не должны иметь пробелов после открывающей скобки и перед закрывающей.
Листинг программы для задания 2:
str = input()
import re
def done(str):
str = re.sub(r'[((\S)([+-/*]))|(([+-/*])(\S))]', r'\1 \2 ', str)
str = re.sub(r'([+-/*])(\S)', r'\1 \2', str)
str = re.sub(r'([(])(\s)', r'(', str)
str = re.sub(r'([)])(\s)', r')', str)
return str
print(done(str))
Вывод: в ходе выполнения лабораторной работы были сформированы практические навыки написания программы на языке Python, изучены регулярные выражения.