-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMulti-Functional-Program.py
More file actions
59 lines (49 loc) · 2.28 KB
/
Multi-Functional-Program.py
File metadata and controls
59 lines (49 loc) · 2.28 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
import tkinter as tk
import random
import string
from datetime import datetime
from tkinter import messagebox
# Создаем основное окно
root = tk.Tk()
root.title("Мультифункциональная программа")
# Функция для программы "1-100"
def random_number():
number = random.randint(1, 100)
messagebox.showinfo("Случайное число", f"Число: {number}")
# Функция для Калькулятора
def calculate():
try:
result = eval(calc_entry.get())
calc_result_label.config(text=f"Результат: {result}")
except Exception as e:
messagebox.showerror("Ошибка", f"Ошибка в вычислении: {e}")
# Функция для Генератора паролей
def generate_password():
length = 8
characters = string.ascii_letters + string.digits + string.punctuation
password = ''.join(random.choice(characters) for i in range(length))
messagebox.showinfo("Сгенерированный пароль", f"Пароль: {password}")
# Функция для отображения текущего времени
def show_time():
current_time = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
messagebox.showinfo("Текущее время", f"Время: {current_time}")
# Кнопка для программы "1-100"
btn_random_number = tk.Button(root, text="Случайное число (1-100)", command=random_number)
btn_random_number.pack(pady=10)
# Калькулятор
calc_label = tk.Label(root, text="Калькулятор")
calc_label.pack()
calc_entry = tk.Entry(root)
calc_entry.pack()
calc_button = tk.Button(root, text="Вычислить", command=calculate)
calc_button.pack()
calc_result_label = tk.Label(root, text="Результат: ")
calc_result_label.pack()
# Кнопка для Генератора паролей
btn_password_generator = tk.Button(root, text="Генератор пароля", command=generate_password)
btn_password_generator.pack(pady=10)
# Кнопка для отображения текущего времени
btn_show_time = tk.Button(root, text="Показать время", command=show_time)
btn_show_time.pack(pady=10)
# Запуск основного цикла приложения
root.mainloop()