|
@@ -0,0 +1,52 @@
|
|
|
+import tkinter as tk
|
|
|
+from tkinter import ttk
|
|
|
+from tkinter import messagebox
|
|
|
+
|
|
|
+def process_array():
|
|
|
+ """Обрабатывает массив, разделяя на неотрицательные и отрицательные элементы."""
|
|
|
+ try:
|
|
|
+ input_str = array_entry.get()
|
|
|
+ arr = [int(x) for x in input_str.split(",")] # Преобразуем строку в массив целых чисел
|
|
|
+
|
|
|
+ positive_elements = [x for x in arr if x >= 0]
|
|
|
+ negative_elements = [x for x in arr if x < 0]
|
|
|
+
|
|
|
+ positive_result_label.config(text="Неотрицательные элементы: " + str(positive_elements))
|
|
|
+ negative_result_label.config(text="Отрицательные элементы: " + str(negative_elements))
|
|
|
+
|
|
|
+ except ValueError:
|
|
|
+ messagebox.showerror("Ошибка", "Некорректный ввод! Введите целые числа, разделенные запятыми.")
|
|
|
+ except Exception as e:
|
|
|
+ messagebox.showerror("Ошибка", f"Произошла ошибка: {e}")
|
|
|
+
|
|
|
+# Создание главного окна
|
|
|
+root = tk.Tk()
|
|
|
+root.title("Разделение массива на положительные и отрицательные")
|
|
|
+root.geometry("500x300") # Устанавливаем размер окна
|
|
|
+
|
|
|
+# Стиль для элементов
|
|
|
+style = ttk.Style()
|
|
|
+style.configure("TLabel", padding=5, font=('Arial', 12))
|
|
|
+style.configure("TButton", padding=5, font=('Arial', 12))
|
|
|
+style.configure("TEntry", padding=5, font=('Arial', 12))
|
|
|
+
|
|
|
+# 1. Ввод массива
|
|
|
+array_label = ttk.Label(root, text="Введите массив целых чисел, разделенных запятыми:")
|
|
|
+array_label.pack(pady=10)
|
|
|
+
|
|
|
+array_entry = ttk.Entry(root, width=50)
|
|
|
+array_entry.pack(pady=5)
|
|
|
+
|
|
|
+# 2. Кнопка обработки
|
|
|
+process_button = ttk.Button(root, text="Обработать массив", command=process_array)
|
|
|
+process_button.pack(pady=10)
|
|
|
+
|
|
|
+# 3. Вывод результатов
|
|
|
+positive_result_label = ttk.Label(root, text="Неотрицательные элементы: ")
|
|
|
+positive_result_label.pack(pady=5)
|
|
|
+
|
|
|
+negative_result_label = ttk.Label(root, text="Отрицательные элементы: ")
|
|
|
+negative_result_label.pack(pady=5)
|
|
|
+
|
|
|
+
|
|
|
+root.mainloop()
|