Skip to content

Vücut kütle endeksi

kilo almaya başlayınca vücut kütle endeksini ögreniyorsunuz.

vke = kilo / boy^2

şeklinde bir formülü varmış. boy metre cinsinden olmalı.. bunu ögrendiğimize göre oturduğumuz yerden bir beynimizde ve parmaklarımızda bir miktar kalori yakalım… bu formül için bir api yapalım… python ile GET ile yapılan isteğe json dönüşü yapan flask ile bir api olsun….

from flask import Flask, request, jsonify

app = Flask(__name__)

# Vücut Kitle Endeksi Hesaplama Fonksiyonu
def hesapla_vke(kilo, boy):
    try:
        # Boy metre cinsinden olmalı, örneğin: 1.75 m
        vke = kilo / (boy ** 2)
        return vke
    except ZeroDivisionError:
        return "Boy 0 olamaz!"
    except Exception as e:
        return str(e)

# VKE Kategorisini Belirleyen Fonksiyon
def vke_kategorisi(vke):
    if vke < 18.5:
        return "Zayıf"
    elif 18.5 <= vke < 24.9:
        return "Normal"
    elif 25 <= vke < 29.9:
        return "Fazla Kilolu"
    else:
        return "Obez"

# VKE Hesaplamak
@app.route('/hesapla_vke', methods=['GET'])
def hesapla():
    # URL parametreleri ile kilo ve boy alıyoruz
    kilo = request.args.get('kilo', type=float)
    boy = request.args.get('boy', type=float)

    # Kilo ve boy parametrelerinin kontrolü
    if kilo is None or boy is None:
        return jsonify({"error": "Lütfen 'kilo' ve 'boy' parametrelerini giriniz!"}), 400

    # VKE'yi hesaplayalım
    vke = hesapla_vke(kilo, boy)
    
    if isinstance(vke, str):  # Eğer hata mesajı döndüyse
        return jsonify({"error": vke}), 400
    
    # Kategoriyi belirleyelim
    kategori = vke_kategorisi(vke)

    # Sonucu JSON formatında döndürelim
    return jsonify({
        "kilo": kilo,
        "boy": boy,
        "vke": vke,
        "kategori": kategori
    })


if __name__ == '__main__':
    app.run(debug=True, port=5000)
Back To Top