hamz011 commited on
Commit
a437484
·
verified ·
1 Parent(s): f27afaa

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +116 -0
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()