You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
70 lines
1.6 KiB
70 lines
1.6 KiB
from flask import Flask, jsonify
|
|
|
|
app = Flask(__name__)
|
|
|
|
@app.route("/")
|
|
def index():
|
|
return """
|
|
<ul>
|
|
<li>/secti/A/B</li>
|
|
<li>/odecti/A/B</li>
|
|
<li>/vynasov/A/B</li>
|
|
<li>/vydel/A/B</li>
|
|
<li>/mocnina/zaklad/exponent</li>
|
|
</ul>
|
|
"""
|
|
|
|
@app.route("/secti/<int:a>/<int:b>")
|
|
def add(a,b):
|
|
vysledek = a+b
|
|
return jsonify({
|
|
"operace":"soucet",
|
|
"vstup":{"a":a,"b":b},
|
|
"vysledek":vysledek
|
|
})
|
|
|
|
@app.route("/odecti/<int:a>/<int:b>")
|
|
def subtract(a,b):
|
|
vysledek = a-b
|
|
return jsonify({
|
|
"operace":"odčítání",
|
|
"vstup":{"a":a,"b":b},
|
|
"vysledek":vysledek
|
|
})
|
|
|
|
@app.route("/vynasob/<int:a>/<int:b>")
|
|
def multiply(a,b):
|
|
vysledek = a*b
|
|
return jsonify({
|
|
"operace":"násobení",
|
|
"vstup":{"a":a,"b":b},
|
|
"vysledek":vysledek
|
|
})
|
|
|
|
@app.route("/vydel/<int:a>/<int:b>")
|
|
def divide(a,b):
|
|
if b == 0:
|
|
return jsonify({
|
|
"operace":"dělení",
|
|
"vstup":{"a":a,"b":b},
|
|
"chyba":"Dělení nulou není povolené"
|
|
}), 400 #HTTP 400 je Bad Request
|
|
vysledek = a/b
|
|
return jsonify({
|
|
"operace":"dělení",
|
|
"vstup":{"a":a,"b":b},
|
|
"vysledek":vysledek
|
|
})
|
|
|
|
@app.route("/mocnina/<int:zaklad>/<int:exponent>")
|
|
def mocnina(zaklad,exponent):
|
|
vysledek = zaklad**exponent
|
|
return jsonify({
|
|
"operace":"mocnina",
|
|
"vstup":{"základ":zaklad,"exponent":exponent},
|
|
"vysledek":vysledek
|
|
})
|
|
|
|
if __name__ == "__main__":
|
|
print("Server beží na http://localhost:8080")
|
|
app.run(host="0.0.0.0",port=8080,debug=True)
|