Вопрос задан 20.11.2023 в 10:31. Предмет Информатика. Спрашивает Леонова Вероника.

PYTHON Буду благодарна!!!! Складіть проєкт розв'язування квадратного рівняння. Вхідні дані

(значення коефіцієнтів a,b,c) вводяться з полів. Результат виводиться у напис. Додайте кнопку ОБЧИСЛИТИ, при натисканні на яку відбувається обчислення.
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Жандоскызы Айнур.

Можна створити інтерфейс з використанням бібліотеки Tkinter. Ось код:
import tkinter as tk

from tkinter import messagebox

import math

# Функція для обчислення квадратного рівняння

def solve_quadratic_equation(a, b, c):

   try:

       a = float(a)

       b = float(b)

       c = float(c)

       discriminant = b**2 - 4*a*c

       if discriminant > 0:

           x1 = (-b + math.sqrt(discriminant)) / (2*a)

           x2 = (-b - math.sqrt(discriminant)) / (2*a)

           return "x1 = {0:.2f}, x2 = {1:.2f}".format(x1, x2)

       elif discriminant == 0:

           x = -b / (2*a)

           return "x = {0:.2f}".format(x)

       else:

           return "No real roots"

   except ValueError:

       return "Invalid input"

# Функція для обробки натискання кнопки

def calculate():

   a = entry_a.get()

   b = entry_b.get()

   c = entry_c.get()

   result = solve_quadratic_equation(a, b, c)

   messagebox.showinfo("Result", result)

# Створення вікна

root = tk.Tk()

root.title("Quadratic Equation Solver")

# Створення елементів інтерфейсу

label_a = tk.Label(root, text="a = ")

label_a.grid(row=0, column=0, padx=5, pady=5)

entry_a = tk.Entry(root)

entry_a.grid(row=0, column=1, padx=5, pady=5)

label_b = tk.Label(root, text="b = ")

label_b.grid(row=1, column=0, padx=5, pady=5)

entry_b = tk.Entry(root)

entry_b.grid(row=1, column=1, padx=5, pady=5)

label_c = tk.Label(root, text="c = ")

label_c.grid(row=2, column=0, padx=5, pady=5)

entry_c = tk.Entry(root)

entry_c.grid(row=2, column=1, padx=5, pady=5)

button = tk.Button(root, text="Calculate", command=calculate)

button.grid(row=3, column=0, columnspan=2, pady=10)

root.mainloop()

Функція обчислення квадратного рівняння

def calculate():

a = float(entry_a.get())

b = float(entry_b.get())

c = float(entry_c.get())

# Обчислюємо дискримінант

D = b**2 - 4*a*c

# Перевірка значень дискримінанта

if D < 0:

   result_label.config(text="No real roots")

elif D == 0:

   x = -b / (2*a)

   result_label.config(text="x = {}".format(x))

else:

   x1 = (-b + math.sqrt(D)) / (2*a)

   x2 = (-b - math.sqrt(D)) / (2*a)

   result_label.config(text="x1 = {}, x2 = {}".format(x1, x2))

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

Звучити як відмінна ідея! Давайте створимо простий графічний інтерфейс для розв'язання квадратного рівняння за допомогою бібліотеки Tkinter у Python. Перед тим, як розпочати, переконайтеся, що ви встановили бібліотеку Tkinter (вона зазвичай вже встановлена з Python).

```python import tkinter as tk from tkinter import Label, Entry, Button

def solve_quadratic(a, b, c): # Розв'язання квадратного рівняння discriminant = b**2 - 4*a*c if discriminant < 0: return "Рівняння не має реальних коренів" elif discriminant == 0: x = -b / (2*a) return f"Рівняння має один корінь: x = {x}" else: x1 = (-b + (discriminant)**0.5) / (2*a) x2 = (-b - (discriminant)**0.5) / (2*a) return f"Рівняння має два корені: x1 = {x1}, x2 = {x2}"

def calculate_quadratic(): try: a = float(entry_a.get()) b = float(entry_b.get()) c = float(entry_c.get()) result = solve_quadratic(a, b, c) result_label.config(text=result) except ValueError: result_label.config(text="Введіть числові значення")

# Створення головного вікна root = tk.Tk() root.title("Квадратне рівняння")

# Створення і розміщення елементів вікна label_a = Label(root, text="a:") label_a.grid(row=0, column=0, padx=10, pady=10) entry_a = Entry(root) entry_a.grid(row=0, column=1, padx=10, pady=10)

label_b = Label(root, text="b:") label_b.grid(row=1, column=0, padx=10, pady=10) entry_b = Entry(root) entry_b.grid(row=1, column=1, padx=10, pady=10)

label_c = Label(root, text="c:") label_c.grid(row=2, column=0, padx=10, pady=10) entry_c = Entry(root) entry_c.grid(row=2, column=1, padx=10, pady=10)

calculate_button = Button(root, text="Обчислити", command=calculate_quadratic) calculate_button.grid(row=3, column=0, columnspan=2, pady=10)

result_label = Label(root, text="") result_label.grid(row=4, column=0, columnspan=2, pady=10)

# Запуск головного циклу обробки подій root.mainloop() ```

У цьому коді ми використали бібліотеку Tkinter для створення простого графічного інтерфейсу з полями для введення коефіцієнтів a, b і c, кнопкою "Обчислити" та місцем для виводу результату. Функція `solve_quadratic` вирішує квадратне рівняння, а `calculate_quadratic` обробляє натискання на кнопку та викликає розв'язок квадратного рівняння.

0 0

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос