Doubleupai commited on
Commit
5784f1c
·
verified ·
1 Parent(s): 2bb4bc7

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +40 -0
app.py ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+
3
+ def generate_code(language, task):
4
+ # Простые шаблоны для генерации кода
5
+ templates = {
6
+ "Python": {
7
+ "Hello World": "print('Hello, World!')",
8
+ "Factorial": "def factorial(n):\n return 1 if n == 0 else n * factorial(n-1)",
9
+ "Fibonacci": "def fibonacci(n):\n if n <= 1:\n return n\n else:\n return fibonacci(n-1) + fibonacci(n-2)"
10
+ },
11
+ "JavaScript": {
12
+ "Hello World": "console.log('Hello, World!');",
13
+ "Factorial": "function factorial(n) {\n return n === 0 ? 1 : n * factorial(n - 1);\n}",
14
+ "Fibonacci": "function fibonacci(n) {\n if (n <= 1) return n;\n return fibonacci(n - 1) + fibonacci(n - 2);\n}"
15
+ },
16
+ "Java": {
17
+ "Hello World": "public class Main {\n public static void main(String[] args) {\n System.out.println(\"Hello, World!\");\n }\n}",
18
+ "Factorial": "public class Main {\n public static int factorial(int n) {\n return n == 0 ? 1 : n * factorial(n - 1);\n }\n}",
19
+ "Fibonacci": "public class Main {\n public static int fibonacci(int n) {\n if (n <= 1) return n;\n return fibonacci(n - 1) + fibonacci(n - 2);\n }\n}"
20
+ }
21
+ }
22
+
23
+ # Получаем код по языку и задаче
24
+ code = templates.get(language, {}).get(task, "Code template not found.")
25
+ return code
26
+
27
+ # Создаем интерфейс Gradio
28
+ iface = gr.Interface(
29
+ fn=generate_code,
30
+ inputs=[
31
+ gr.Dropdown(choices=["Python", "JavaScript", "Java"], label="Выберите язык программирования"),
32
+ gr.Dropdown(choices=["Hello World", "Factorial", "Fibonacci"], label="Выберите задачу")
33
+ ],
34
+ outputs=gr.Code(label="Сгенерированный код"),
35
+ title="Генератор кода",
36
+ description="Выберите язык программирования и задачу для генерации кода."
37
+ )
38
+
39
+ # Запускаем интерфейс
40
+ iface.launch()