Spaces:
Sleeping
Sleeping
Create app.py
Browse files
app.py
ADDED
@@ -0,0 +1,116 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
import gradio as gr
|
2 |
+
|
3 |
+
# Diziler
|
4 |
+
sorular = [
|
5 |
+
{
|
6 |
+
"sayi_listesi": [
|
7 |
+
[1, 3, 5, 7, 9, 11, 13, 15],
|
8 |
+
[17, 19, 21, 23, 25, 27, 29, 31],
|
9 |
+
[33, 35, 37, 39, 41, 43, 45, 47],
|
10 |
+
[49, 51, 53, 55, 57, 59, 61, 63],
|
11 |
+
],
|
12 |
+
"ilk_eleman": 1,
|
13 |
+
},
|
14 |
+
{
|
15 |
+
"sayi_listesi": [
|
16 |
+
[4, 5, 6, 7, 12, 13, 14, 15],
|
17 |
+
[20, 21, 22, 23, 28, 29, 30, 31],
|
18 |
+
[36, 37, 38, 39, 44, 45, 46, 47],
|
19 |
+
[52, 53, 54, 55, 60, 61, 62, 63],
|
20 |
+
],
|
21 |
+
"ilk_eleman": 4,
|
22 |
+
},
|
23 |
+
{
|
24 |
+
"sayi_listesi": [
|
25 |
+
[2, 3, 6, 7, 10, 11, 14, 15],
|
26 |
+
[18, 19, 22, 23, 26, 27, 30, 31],
|
27 |
+
[34, 35, 38, 39, 42, 43, 46, 47],
|
28 |
+
[50, 51, 54, 55, 58, 59, 62, 63],
|
29 |
+
],
|
30 |
+
"ilk_eleman": 2,
|
31 |
+
},
|
32 |
+
{
|
33 |
+
"sayi_listesi": [
|
34 |
+
[32, 33, 34, 35, 36, 37, 38, 39],
|
35 |
+
[40, 41, 42, 43, 44, 45, 46, 47],
|
36 |
+
[48, 49, 50, 51, 52, 53, 54, 55],
|
37 |
+
[56, 57, 58, 59, 60, 61, 62, 63],
|
38 |
+
],
|
39 |
+
"ilk_eleman": 32,
|
40 |
+
},
|
41 |
+
{
|
42 |
+
"sayi_listesi": [
|
43 |
+
[16, 17, 18, 19, 20, 21, 22, 23],
|
44 |
+
[24, 25, 26, 27, 28, 29, 30, 31],
|
45 |
+
[48, 49, 50, 51, 52, 53, 54, 55],
|
46 |
+
[56, 57, 58, 59, 60, 61, 62, 63],
|
47 |
+
],
|
48 |
+
"ilk_eleman": 16,
|
49 |
+
},
|
50 |
+
{
|
51 |
+
"sayi_listesi": [
|
52 |
+
[8, 9, 10, 11, 12, 13, 14, 15],
|
53 |
+
[24, 25, 26, 27, 28, 29, 30, 31],
|
54 |
+
[40, 41, 42, 43, 44, 45, 46, 47],
|
55 |
+
[56, 57, 58, 59, 60, 61, 62, 63],
|
56 |
+
],
|
57 |
+
"ilk_eleman": 8,
|
58 |
+
},
|
59 |
+
]
|
60 |
+
|
61 |
+
|
62 |
+
# Sayı tablosunu HTML formatında göstermek için
|
63 |
+
def tablo_olustur(sayi_listesi):
|
64 |
+
tablo = "<table style='width:100%; text-align:center; align-items: center;font-size: 20px; border-collapse:collapse;'>"
|
65 |
+
for satir in sayi_listesi:
|
66 |
+
tablo += "<tr>"
|
67 |
+
for sayi in satir:
|
68 |
+
tablo += f"<th style='border: 1px solid black; padding: 5px; text-align: center;'>{sayi}</th>"
|
69 |
+
tablo += "</tr>"
|
70 |
+
tablo += "</table>"
|
71 |
+
return tablo
|
72 |
+
|
73 |
+
|
74 |
+
# Kullanıcıdan gelen "var" veya "yok" cevabına göre toplama ekleme fonksiyonu
|
75 |
+
def sayi_tahmin(*adimlar):
|
76 |
+
toplam = 0
|
77 |
+
for i, cevap in enumerate(adimlar):
|
78 |
+
if cevap:
|
79 |
+
toplam += sorular[i]["ilk_eleman"]
|
80 |
+
return f"Tuttuğunuz sayı: {toplam}"
|
81 |
+
|
82 |
+
|
83 |
+
# Gradio arayüzü
|
84 |
+
btn_clikced=False
|
85 |
+
def reset():
|
86 |
+
with gr.Blocks() as app:
|
87 |
+
gr.Markdown(
|
88 |
+
"<center><strong style='font-size: 30px;'>Merhaba sayi tahmin oyununa HOŞ GELDİNİZ!</strong></center>")
|
89 |
+
gr.Markdown("<center><strong style='font-size: 20px;'>1-63 arasında bir sayi tutunuz!</strong></center>")
|
90 |
+
|
91 |
+
checkboxes = []
|
92 |
+
|
93 |
+
# Her bir adım için soruyu gösteren Checkbox ve tabloyu ekliyoruz
|
94 |
+
for i, soru in enumerate(sorular):
|
95 |
+
gr.Markdown(f"Adım {i+1}:")
|
96 |
+
gr.HTML(tablo_olustur(soru["sayi_listesi"]))
|
97 |
+
checkboxes.append(
|
98 |
+
gr.Checkbox(
|
99 |
+
label=f"Tuttuğunuz sayı bu dizide varsa tıklayınız", value=False
|
100 |
+
)
|
101 |
+
)
|
102 |
+
|
103 |
+
btn = gr.Button("Tahmin Et")
|
104 |
+
sonuc = gr.Textbox(label="Sonuç")
|
105 |
+
|
106 |
+
def tahmin_et(*adimlar):
|
107 |
+
sonuc_value = sayi_tahmin(*adimlar)
|
108 |
+
return sonuc_value
|
109 |
+
|
110 |
+
when = btn.click(tahmin_et, inputs=checkboxes, outputs=[sonuc])
|
111 |
+
btn_clikced=True
|
112 |
+
return app
|
113 |
+
|
114 |
+
|
115 |
+
app = reset()
|
116 |
+
app.launch()
|