1
0

Кулага_10.3.py 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import tkinter as tk
  2. from tkinter import ttk
  3. from tkinter import messagebox
  4. import random
  5. def generate_numbers():
  6. try:
  7. a = int(a_entry.get())
  8. b = int(b_entry.get())
  9. if a >= b:
  10. messagebox.showerror("Ошибка", "Значение 'a' должно быть меньше 'b'!")
  11. return
  12. m = random.randint(1, 20)
  13. n = random.randint(1, 20)
  14. integer_numbers = [random.randint(a, b) for _ in range(n)]
  15. float_numbers = [random.uniform(0, n) for _ in range(m)]
  16. m_label.config(text="m = " + str(m))
  17. n_label.config(text="n = " + str(n))
  18. integer_numbers_label.config(text="Целые числа: " + str(integer_numbers))
  19. float_numbers_label.config(text="Вещественные числа: " + str(float_numbers))
  20. except ValueError:
  21. messagebox.showerror("Ошибка", "Некорректный ввод! Введите целые числа для a и b.")
  22. except Exception as e:
  23. messagebox.showerror("Ошибка", f"Произошла ошибка: {e}")
  24. root = tk.Tk()
  25. root.title("Генератор случайных чисел")
  26. root.geometry("600x500")
  27. style = ttk.Style()
  28. style.configure("TLabel", padding=5, font=('Arial', 12))
  29. style.configure("TButton", padding=5, font=('Arial', 12))
  30. style.configure("TEntry", padding=5, font=('Arial', 12))
  31. a_label = ttk.Label(root, text="Введите значение a:")
  32. a_label.pack(pady=5)
  33. a_entry = ttk.Entry(root, width=20)
  34. a_entry.pack(pady=5)
  35. b_label = ttk.Label(root, text="Введите значение b:")
  36. b_label.pack(pady=5)
  37. b_entry = ttk.Entry(root, width=20)
  38. b_entry.pack(pady=5)
  39. generate_button = ttk.Button(root, text="Сгенерировать числа", command=generate_numbers)
  40. generate_button.pack(pady=10)
  41. m_label = ttk.Label(root, text="m = ")
  42. m_label.pack(pady=5)
  43. n_label = ttk.Label(root, text="n = ")
  44. n_label.pack(pady=5)
  45. integer_numbers_label = ttk.Label(root, text="Целые числа: ")
  46. integer_numbers_label.pack(pady=5)
  47. float_numbers_label = ttk.Label(root, text="Вещественные числа: ")
  48. float_numbers_label.pack(pady=5)
  49. root.mainloop()