Вопрос задан 11.07.2023 в 22:06. Предмет Информатика. Спрашивает Ишбулдин Амир.

Што неправильно from tkinter import* tk=Tk() tk.geometry("800x300") tk*"bg"="mintcream"

lbl1=Label(text="Радіус ") lbl1.place(x=275,y=25) def btn_click (): select=lbox.curselection() a=lbox.get(select) b=ent.get() if a=="площа": p=3.14(int(b),int(b)) elif a=="Довжина": p=23.14*(int(b)) lbl2=Label(text="Площа = ") lbl2.place(x=300,y=150) lbl3=Label(text= p) lbl3.place(x=380,y=150) lbl4=Label(text="Довжина = ") lbl4.place(x=300,y=150) lbl5=Label(text= p) lbl5.place(x=380,y=150) btn=Button(text="РОзрахувати",command=btn_click) btn.place(x=275,y=75,width=100,height=30) ent=Entry(bd=1) ent.place(x=425,y=25,width=150,height=30) ‌ ‌ lbox=Listbox(height=2) lbox.insert(END," Площа") lbox.insert(END," Довжина") lbox.place(x=425,y=75,width=150,height=30)
0 0
Перейти к ответам

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

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

Ответ:

Ошибка в использовании Python2.

Если уж очень хочется использовать устаревшую 10 лет назад версию, то надо или не использовать в коде символы не входящие в диапазон ASCII, или указать интерпретатору кодировку кода, вставив в первую строку # -*- coding: utf-8 -*- Естественно, предварительно убедившись, что кодировка скрипта действительно UTF-8.

Объяснение:

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

Код містить декілька помилок та оформлювальних проблем. Давайте переглянемо їх і виправимо:

  1. Помилка при присвоєнні фонового кольору (bg) вікну: Замість tk*"bg"="mintcream", правильно використовувати tk.config(bg="mintcream") для встановлення фонового кольору вікна.

  2. Проблеми з обчисленням площі та довжини: В рядку p=3.14(int(b),int(b)) та p=23.14*(int(b)), вам потрібно змінити на p=3.14*(int(b)**2) для обчислення площі круга та p=2*3.14*(int(b)) для обчислення довжини кола.

  3. Розташування елементів: Розташування елементів (labels, buttons, entry) здається несправним. Наприклад, lbl4.place(x=300, y=150) та lbl5.place(x=380, y=150) мають однакові координати. Вам потрібно налаштувати правильне розташування елементів на вікні.

  4. Проблема з логікою вибору "площі" чи "довжини": Ви використовуєте одне і те ж ім'я змінної p для зберігання результату площі та довжини, що може призвести до проблем. Замість цього, використовуйте різні імена змінних для обчислення та відображення результатів площі та довжини.

  5. Підтримка округлення результатів: Ви маєте бажання округлити результати, якщо вони є числами з плаваючою точкою. Наприклад, використайте round(p, 2), щоб округлити результат до 2 знаків після десяткової коми.

Ось виправлений код:

python
from tkinter import * tk = Tk() tk.geometry("800x300") tk.config(bg="mintcream") lbl1 = Label(text="Радіус ") lbl1.place(x=275, y=25) def btn_click(): select = lbox.curselection() a = lbox.get(select) b = ent.get() if a == "Площа": p = round(3.14 * (int(b) ** 2), 2) lbl2 = Label(text="Площа = ") lbl2.place(x=300, y=150) lbl3 = Label(text=p) lbl3.place(x=380, y=150) lbl4.destroy() # Remove the "Довжина" label if it exists lbl5.destroy() # Remove the "Довжина" value label if it exists elif a == "Довжина": p = round(2 * 3.14 * (int(b)), 2) lbl4 = Label(text="Довжина = ") lbl4.place(x=300, y=150) lbl5 = Label(text=p) lbl5.place(x=380, y=150) lbl2.destroy() # Remove the "Площа" label if it exists lbl3.destroy() # Remove the "Площа" value label if it exists btn = Button(text="Розрахувати", command=btn_click) btn.place(x=275, y=75, width=100, height=30) ent = Entry(bd=1) ent.place(x=425, y=25, width=150, height=30) lbox = Listbox(height=2) lbox.insert(END, "Площа") lbox.insert(END, "Довжина") lbox.place(x=425, y=75, width=150, height=30) tk.mainloop()

Зверніть увагу, що ви можете ще вдосконалити дизайн і розміщення елементів на вікні залежно від вашого бажання.

0 0

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

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

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