Update app.py
Browse files
app.py
CHANGED
@@ -1,69 +1,37 @@
|
|
1 |
import streamlit as st
|
2 |
|
3 |
-
#
|
4 |
-
|
5 |
-
monnaie_a_rendre = total_paye - total_a_payer
|
6 |
-
return monnaie_a_rendre if monnaie_a_rendre > 0 else 0
|
7 |
|
8 |
# Initialisation de la session state pour le total payé
|
9 |
if 'total_paye' not in st.session_state:
|
10 |
st.session_state['total_paye'] = 0.0
|
11 |
|
12 |
-
# Interface utilisateur
|
13 |
-
st.title('Calculateur de monnaie')
|
14 |
-
|
15 |
# Entrée pour la somme totale à payer
|
16 |
total_a_payer = st.number_input('Somme totale à payer', min_value=0.0, value=0.0, format="%.2f", help="Entrez la somme totale à payer.")
|
17 |
-
st.caption("Merci de mettre ´.´ a la place de ','")
|
18 |
-
|
19 |
-
col1, col2, col3 = st.columns(3)
|
20 |
-
with col1:
|
21 |
-
if st.button('0.05€'):
|
22 |
-
st.session_state.total_paye += 0.05
|
23 |
-
with col2:
|
24 |
-
if st.button('0.10€'):
|
25 |
-
st.session_state.total_paye += 0.10
|
26 |
-
with col3:
|
27 |
-
if st.button('0.20€'):
|
28 |
-
st.session_state.total_paye += 0.20
|
29 |
|
|
|
30 |
col1, col2, col3 = st.columns(3)
|
31 |
with col1:
|
32 |
-
|
33 |
-
st.session_state.total_paye += 0.50
|
34 |
with col2:
|
35 |
-
|
36 |
-
st.session_state.total_paye += 1.00
|
37 |
with col3:
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
with col1:
|
54 |
-
if st.button('30€'):
|
55 |
-
st.session_state.total_paye += 30.00
|
56 |
-
with col2:
|
57 |
-
if st.button('40€'):
|
58 |
-
st.session_state.total_paye += 40.00
|
59 |
-
with col3:
|
60 |
-
if st.button('50€'):
|
61 |
-
st.session_state.total_paye += 50.00
|
62 |
-
|
63 |
-
# Afficher le total payé et la monnaie à rendre
|
64 |
-
st.write(f"Total payé: {st.session_state.total_paye:.2f}€")
|
65 |
-
monnaie_a_rendre = calculer_monnaie_a_rendre()
|
66 |
-
st.write(f"Monnaie à rendre: {monnaie_a_rendre:.2f}€")
|
67 |
|
68 |
# Bouton pour réinitialiser
|
69 |
if st.button('Réinitialiser'):
|
|
|
1 |
import streamlit as st
|
2 |
|
3 |
+
# Titre de l'application
|
4 |
+
st.title('Calculateur de monnaie')
|
|
|
|
|
5 |
|
6 |
# Initialisation de la session state pour le total payé
|
7 |
if 'total_paye' not in st.session_state:
|
8 |
st.session_state['total_paye'] = 0.0
|
9 |
|
|
|
|
|
|
|
10 |
# Entrée pour la somme totale à payer
|
11 |
total_a_payer = st.number_input('Somme totale à payer', min_value=0.0, value=0.0, format="%.2f", help="Entrez la somme totale à payer.")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12 |
|
13 |
+
# Afficher le total payé, la somme totale, et la monnaie à rendre en utilisant st.metric
|
14 |
col1, col2, col3 = st.columns(3)
|
15 |
with col1:
|
16 |
+
st.metric("Total payé", value=f"{st.session_state.total_paye:.2f}€")
|
|
|
17 |
with col2:
|
18 |
+
st.metric("Somme totale à payer", value=f"{total_a_payer:.2f}€")
|
|
|
19 |
with col3:
|
20 |
+
monnaie_a_rendre = st.session_state.total_paye - total_a_payer
|
21 |
+
st.metric("Monnaie à rendre", value=f"{monnaie_a_rendre if monnaie_a_rendre > 0 else 0:.2f}€")
|
22 |
+
|
23 |
+
# Fonction pour ajouter de l'argent au total payé
|
24 |
+
def ajouter_argent(montant):
|
25 |
+
st.session_state.total_paye += montant
|
26 |
+
|
27 |
+
# Boutons pour ajouter des montants spécifiques
|
28 |
+
montants = [0.05, 0.10, 0.20, 0.50, 1, 2, 5, 10, 20, 30, 40, 50]
|
29 |
+
for index in range(0, len(montants), 3):
|
30 |
+
cols = st.columns(3)
|
31 |
+
for i, montant in enumerate(montants[index:index+3]):
|
32 |
+
with cols[i]:
|
33 |
+
if st.button(f"{montant}€"):
|
34 |
+
ajouter_argent(montant)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
35 |
|
36 |
# Bouton pour réinitialiser
|
37 |
if st.button('Réinitialiser'):
|