Файл: Создание калькулятора.pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 28.03.2023

Просмотров: 1206

Скачиваний: 32

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Первым шагом необходимо создать проект (изображение 6) который будет являться основой для работы в PyCharm.


Изображение 6 – Окно создания проекта в PyCharm.

После создания проекта в папке проекта необходимо создать файл с расширение .py в котором и будет записан весь код. В данном случае это будет файл calculator.py (Изображение 7).


Изображение 7 – Создание файла с расширением .py.

После создания файла приступим непосредственно к разработке, в первую очередь необходимо импортировать и настроить библиотеки tkinter и ttkthemes для создания “черновика” графического интерфейса приложения. Tkinter является встроенной библиотекой, для установки ttkthemes нужно использовать команду pip install ttkthemes в терминале Python

Далее используя операторы from и import импортируем библиотеки в текущий проект (изображение 8).


Изображение 8 – Код импорта библиотек.

Затем задаем параметры для окна приложения используя библиотеку ThemedTk (изображение 9). Где root = окно приложения.


Изображение 9 – Код задания параметров для окна приложения.

После задаем параметры размера поля ввода и выведения результата вычислений, где e = поле ввода чисел (изображение 10).


Изображение 10 – Код размера поля ввода и выведения результата вычислений.

Далее используя оператор def и button_click делаем возможным выведение результата выражения в поле ввода (изображение 11) STR значений. Также здесь используются объекты e.delete и e.insert которые будут описаны далее.


Изображение 11 – Код задания условия поля ввода и выведения результата вычислений.

Далее используя def задаем кнопку очистки поля ввода (изображение 12).


Изображение 12 – Код кнопки очистки поля.

Далее используя оператор def и глобальные переменные f_num и math, задаем значения кнопок математических действий плюс, минус, умножить, разделить (изображение 13)


Изображение 13 – Код кнопок плюс, минус, умножить, разделить.

Далее используя оператор if и def задаем условия для выведения ответа на экран при нажатии кнопки равно (изображение 14).


Изображение 14 – Код кнопки равно.


Далее задаем для каждой кнопки текстовое значение и функцию кнопки которое в последствие будет использовано пользователя для идентификации каждой кнопки (изображение 15)


Изображение 15 – Код задания кнопкам текстовых значений.

Далее используя гридовую систему выводим кнопки на экран как графические элементы (изображение 16).


Изображение 16 – Код вывода кнопок как графических элементов.

Затем добавляем строку для создания петли выполнения кода, чтобы приложение автоматически не закрывалось (изображение 17).


Изображение 17 – Код создание цикла работы приложения.

После завершения написания кода необходимо сохранить файл .py, затем открыть терминал Python и ввести $ pip install auto-py-to-exe, что позволит установить конвертер из .py в формат .exe. После установки конвертера, используя терминал ввести python -m auto_py_to_exe, данная команда откроет окно Auto Py To Exe, выполнить настройку (изображение 18), по нажатию кнопки Convert to exe программа произведет конвертацию файла в формат .exe и откроет папку с данным файлом (изображение 19).


Изображение 18 – Настройка Auto Py to Exe.
Изображение 19 – Содержание папки с .exe файлом.

При открытии файла приложение имеет вид, продемонстрированный на изображение 20. Данный файл может быть распространен отдельно и не требует каких-либо предустановленных приложений или интерпретаторов. Также в приложение 1 предоставлена ссылка на Github с полным кодом приложения и .exe файлом для запуска приложения.


Изображение 20 – GUI приложения «Калькулятор “МОИ”»

ЗАКЛЮЧЕНИЕ

Рассмотрим результаты работы целью которой являлось углубление знаний и расширение навыков по разработке алгоритмов и их реализации на персональном компьютере на примере создание калькулятора на языке Python для выполнения простейших математических вычислений. В ходе выполнения работы была изучена теоретическая база языков программирования их история, виды, принципы работы, была подробно изучена парадигма объектно-ориентированного программирования, подробно изучен и применен язык программирования Python, изучены доступные аналоги приложения, которые послужили основой для составления требований к приложению, было успешно создано портативное приложение калькулятор и описаны шаги решения поставленных задач.


СПИСОК ИСТОЧНИКОВ

  1. Гавриков М. М., Иванченко А. Н., Гринченков Д. В. Теоретические основы разработки и реализации языков программирования. — КноРус, 2013. — 178 с.
  2. Братчиков И. Л. Синтаксис языков программирования. — Наука, 1975. — 230 с.
  3. Теренс Пратт, Марвин Зелковиц. Языки программирования: разработка и реализация. — 4-е издание. — Питер, 2002.
  4. Тимоти Бадд. «Объектно-ориентированное программирование в действии», Издательский дом "Питер", 1997. — 464 с.
  5. Марк Лутц. Программирование на Python / Пер. с англ. — 4-е изд. — СПб.: Символ-Плюс, 2011. — Т. I. — 992 с.
  6. Иан Грэхем. Объектно-ориентированные методы. Принципы и практика — 3-е изд. — М.: «Вильямс», 2004. — 880 с.
  7. Richard P. Gabriel – Objects Have Failed, 2002 – http://dreamsongs.com/ObjectsHaveFailedNarrative.html
  8. Guy L. Steele Jr. – Objects Have Not Failed, 2002 – http://dreamsongs.com/ObjectsHaveNotFailedNarr.html
  9. Григорий Алексеев. «Введение в Python» – https://habr.com/ru/post/450474/
  10. The Zen of Python – https://www.python.org/dev/peps/pep-0020/
  11. Glossary of Python – https://docs.python.org/3/glossary.html
  12. The Python Standard Library – https://docs.python.org/3/library/index.html
  13. Installing Python Modules – https://docs.python.org/3/installing/index.html
  14. Python Module Index – https://docs.python.org/3/py-modindex.html
  15. Регулярно обновляемая диаграмма истории языков программирования – https://www.levenez.com/lang/

Приложение 1

Исходный код приложения Калькулятор “МОИ”

from tkinter import *

from tkinter import ttk

from ttkthemes import ThemedTk

root = ThemedTk(theme='yaru') # Выбор темы

root.resizable(width=False, height=False) # Блокировка возможности изменения размера

root.title('Калькулятор "МОИ"') # Названия приложения

root.iconbitmap('C:/Users/petyhov/Desktop/CALCULATOR/calculator.ico') # Иконка приложения

e = ttk.Entry(root, width=48,) # Поле ввода чисел

e.grid(row=0, column=0, columnspan=4, padx=4, pady=4)

e.focus_set() #Фокусировка в поле ввода чисел

# Введение цифр в поле

def button_click(number):

current = e.get()

e.delete(0, END)

e.insert(0, str(current) + str(number)) # выводить STR значения чесел

# Комманда для очистки поля

def button_clear():

e.delete(0, END)

# Кнопка плюс

def button_plus():

first_number = e.get()

global f_num

global math

math = "плюс"

f_num = int(first_number)

e.delete(0, END)

# Кнопка минус

def button_minus():

first_number = e.get()

global f_num

global math

math = "минус"

f_num = int(first_number)

e.delete(0, END)

# Кнопка умножить

def button_multiply():

first_number = e.get()

global f_num

global math

math = "умножить"

f_num = int(first_number)

e.delete(0, END)

# Кнопка разделить

def button_divide():

first_number = e.get()

global f_num

global math

math = "делить"

f_num = int(first_number)

e.delete(0, END)

# кнопка равно

def button_equal():

second_number = e.get()

e.delete(0, END)

if math == 'плюс':