Python, Tkinter - гра відгадай число: Комп'ютер загадав число від 1 до 100, спробуй вгадати це число з 5 спроб. Задача оптимізувати мій код, ви можете «скоротити, покращити тощо», щось скоротити, щось додати, щось змінити, головне, щоб ви коментували кожну частину коду, яку ви змінили, бажано не використовувати ООП. Ви можете завантажити код програми нижче:

Якщо вам потрібно, я можу дати 500 балів, якщо мені сподобається ваша відповідь. Якщо ні, то максимум 100
Якщо є запитання, пишіть

Модулі, необхідні для роботи програми:

import random
import tkinter as tk

Ответы

Ответ дал: Northgard
0

Ответ: Ниже

Объяснение:

a = random.randint(1, 100)

c, v = 5, False

while c != 0 and v != True:

  g = int(input())

  if g == a:

      v = True

  elif g < a:

      print("число которое я загадал БОЛЬШЕ")

      c -= 1

  elif g > a:

      print("число которое я загадал МЕНЬШЕ")

      c -= 1

print("угадал" if v == True else "не смог")


Northgard: Минутку..
Northgard: Слишком усложненный, пользователю нужна простотота
Northgard: простота*
Аноним: так я розумію я зараз вивчаю django і тут вирішив щось написати зв'язене з GUI я жавжди стараюсь читати чужий код щоб зрозуміти чим він ліпший чи гірший мого таким чином я вчусь
Northgard: хм.. тогда - просто переделайте код
Аноним: допустим как я могу переделать (упростить код)?
Аноним: я всьо коментировал, отступи, и логичние имя перемених делал
Аноним: как еще можна упростить
Northgard: Сравни мой код(который не мой), и свой..
Аноним: у тебя перемение a,c,v,g не какой логики перемение должни описовать содержимое у тебя ні одной строчки коментариев и еще у меня GUI интерфейс а у тебя CLI - comand line interfeice (просто консоль), наши коди слишком разние у них только одно одинаковие ето логика игри тут почти различей нет
Ответ дал: makslegendarka
0

імпортуємо необхідні модулі

import random

import tkinter as tk

створюємо вікно програми

window = tk.Tk()

window.geometry("300x150")

window.title("Гра відгадай число")

генеруємо випадкове число від 1 до 100

number = random.randint(1, 100)

функція, що викликається при натисканні на кнопку "Грати знову"

def play_again():

   global number

   number = random.randint(1, 100)

   text.set("Вгадай число від 1 до 100")

   entry.delete(0, tk.END)

функція, що викликається при натисканні на кнопку "Перевірити"

def check_number():

   guess = int(entry.get())

   if guess == number:

       text.set("Вітаю, ви вгадали число!")

       btn_play_again.pack(side="bottom")

       btn_check.pack_forget()

   elif guess < number:

       text.set("Ваше число занадто мале. Спробуйте ще раз")

       entry.delete(0, tk.END)

   else:

       text.set("Ваше число занадто велике. Спробуйте ще раз")

       entry.delete(0, tk.END)

створюємо текстовий об'єкт для відображення повідомлень

text = tk.StringVar()

text.set("Вгадай число від 1 до 100")

label = tk.Label(window, textvariable=text)

label.pack()

створюємо поле для введення числа

entry = tk.Entry(window)

entry.pack()

створюємо кнопки "Перевірити" та "Грати знову"

btn_check = tk.Button(window, text="Перевірити", command=check_number)

btn_check.pack(side="left")

btn_play_again = tk.Button(window, text="Грати знову", command=play_again)

запускаємо головний цикл програми

window.mainloop()

імпортуємо необхідні модулі

import random

import tkinter as tk

створюємо вікно програми

window = tk.Tk()

window.geometry("300x150")

window.title("Гра відгадай число")

генеруємо випадкове число від 1 до 100

number = random.randint(1, 100)

функція, що викликається при натисканні на кнопку "Грати знову"

def play_again():

   global number

   # згенеруємо нове число

   number = random.randint(1, 100)

   # змінюємо

Пояснення:


Аноним: я перепрошою задача була оптімізувати мій код який можна скачати тут https://github.com/NazariyH/-
Аноним: но якогось хера сайт знание не показав мою силку
Вас заинтересует