Aller au contenu


Photo

Créer une programation Java pour calculer un Prix Total

Java Calculette

  • Please log in to reply
3 replies to this topic

#1 Nel3030

Nel3030

    Membre

  • Membres
  • Pip
  • 1 Messages :
  • Configuration:Hp Pavillon, sous win 7
  • Sexe:Féminin
  • Localisation:Gard
  • Passions:Photos, internet, cinema, ...

Posté 12 avril 2013 - 17:32

Bonjour tout le monde,

Je recherche désespérément une solution pour mettre une sorte de ( formulaire de commande ''dynamique'') ,
mon site, n'est pas un site commercial, je souhaite juste que mes clients puissent calculer le prix selon une quantité...
Simplement en choissisant la qté et le prix s'afficherait automatiquement.
Par contre, selon les quantités le prix sera degressif ...

Mon site : http://www.cartesrem...FP10X15020.html

Je vous remercie de votre aide,

Belle journée à tous,

Nelly

Ce message a été modifié par Nel3030 - 12 avril 2013 - 23:55 .


#2 BorakLeRouge

BorakLeRouge

    Hamster d'or (dort ?)

  • Membres
  • PipPipPipPipPipPipPip
  • 3 950 Messages :
  • Configuration:Mac Mini Core i7 - 16Go - 2To Hybride
  • Sexe:Masculin
  • Localisation:Cormeilles en Parisis.rb
  • Passions:Macintosh, Photo, Haute-fidélité, Ski, Roller, Call of Duty, Tactical Ops, Counter Strike, Worms 1

Posté 13 avril 2013 - 00:31

Bonjour et bienvenue.

JAVA : Bof un chouïa trop compliqué. L'idéal c'est du Javascript (ou du php si tu veux traiter les calculs par le serveur). En Javascript, c'est le navigateur qui fait le boulot.

Par exemple prix et quantité : Il faut :
1) Une fonction de calcul.
2) Un formulaire pour regrouper le tout
3) Trois champs (Prix, Quantité et Résultat).
4) Un bouton pour appeler la fonction de calcul.
Ca peut donner ça :

<form>
<script type="text/javascript">
function calcul()
{ document.getElementById('total').value = document.getElementById('prix').value * document.getElementById('qte').value ;
}
</script>
<p>
<label for="prix">Prix :</label>
<input name="prix" id="prix" type="text"
	 value="10"
	 maxlength="20" size="20" />
</p><p>
<label for="qte">Quantité :</label>
<input name="qte" id="qte" type="text"
	 value="1"
	 maxlength="20" size="20" />
</p><p>
<label for="total">Résultat :</label>
<input name="total" id="total" type="text"
	 value="???"
	 maxlength="20" size="20" />
</p><p>
<label for="btn">Calcul :</label>
<input name="btn" id="btn" type="button" value="Calcul" onclick="calcul(); return false;"/>
</p>

</form>

on peut aussi l'écrire comme ça, en récupérant les valeurs via le formulaire :
<form name="zeform" id="zeform">
<script type="text/javascript">
function calcul()
{ zeform.total.value = zeform.prix.value * zeform.qte.value ;
}
</script>
<p>
<label for="prix">Prix :</label>
<input name="prix" id="prix" type="text"
	 value="10"
	 maxlength="20" size="20" />
</p><p>
<label for="qte">Quantité :</label>
<input name="qte" id="qte" type="text"
	 value="1"
	 maxlength="20" size="20" />
</p><p>
<label for="total">Résultat :</label>
<input name="total" id="total" type="text"
	 value="???"
	 maxlength="20" size="20" />
</p><p>
<label for="btn">Calcul :</label>
<input name="btn" id="btn" type="button" value="Calcul" onclick="calcul(); return false;"/>
</p>

</form>

Ce message a été modifié par BorakLeRouge - 13 avril 2013 - 09:20 .

Je fais mes sauvegardes sur NSA-Cloud !

Au bout de 10 ans, le vieux MacPro vient de laisser sa place à un MacMini i7...


#3 Amarok II

Amarok II

    NeoAdmin

  • Administrateurs
  • PipPipPipPipPipPip
  • 1 469 Messages :
  • Configuration:Un petit truc en alu avec un grand rectangle lumineux qui affiche des choses qui bougent quand je chatouille un autre truc en alu, là... tout plat.
  • Sexe:Mystère
  • Localisation:Perpignan, France
  • Passions:MacFr bien sûr !

Posté 13 avril 2013 - 10:25

Le javascript s'annonce la meilleure solution.
Voire directement avec jQuery (plus simple à maitriser).

On a en entrée, une quantité et un prix unitaire.
Le prix unitaire change (par tranche ?) en fonction de la quantité.
Il faut aussi savoir comment les remises sur quantité sont appliqué (par article, stockés dans une base, etc. ).
Je n'ai jamais vraiment réfléchi sur la question, mais on pourrait imaginer de n'avoir qu'un seul champ pour le prix, avec des valeurs séparées par des pipes " | ", et se fixer une règle pour les prix par quantité : par 1 | par 5 | par 10 | par 100
et se tenir à cette structure pour TOUS les articles.

Ce n'est pas la bonne solution.

Une meilleure approche serai d'associer à un id article plusieurs prix avec une indication de quantité.

Mais je m'éloigne du sujet :)

L'action manuelle de l'utilisateur sera de choisir la quantité (après avoir bien sûr choisi son article).

Imaginons les champs de formulaire #qte, #prix_unitaire, #prix_total
Le champ #prix_unitaire est caché (non modifiable en tout cas).
Il faut obtenir (d'une manière ou d'une autre) les remises par quantité (dans un tableau JSON par exemple).

En jQuery , on aurai un truc du genre (code non testé) :
$('#qte').change(function() {
    // coefficients de l'article (idéalement lié à l'article et envoyé sous forme de tableau plutôt qu'une simple valeur).
    var coef1 = 0.96;
    var coef2 = 0.92;

    if ($(this).val() = 1)
        {
        $('#prix_total') = $(this).val() * $('#prix_unitaire').val();
        }
    if ($(this).val() > 1 and $(this).val() <= 5 )
        {
         $('#prix_total') = $(this).val() * $('#prix_unitaire').val() * coef1;
        }

    if ($(this).val() > 5 and $(this).val() <= 10 )
        {
         $('#prix_total') = $(this).val() * $('#prix_unitaire').val() * coef2;
        }

    // etc.
});

Tout ceci peut être largement optimisé, c'est juste une idée comme ça (un samedi, et au réveil en plus) :P

MacBook Pro (13", fin 2012)
8Go RAM - 256Go SSD - 1To HD

Technicien certifié ACMT et plein d'autres trucs...

"On peut voir de bien des façons. On peut être aveugle de bien des façons." (Frank Herbert, Dune)

"Tu ne feras point de machine à l'esprit de l'homme semblable." (Frank Herbert, Dune)


#4 zekiller28

zekiller28

    Admin qui mord

  • Administrateurs
  • PipPipPipPipPipPipPipPipPip
  • 10 642 Messages :
  • Configuration:Toutes sortes de Mac du PPC à l'Intel et toute sorte de MacOS X De Panther Client à Maverick.
  • Sexe:Masculin
  • Localisation:Saint-Hilarion (78)

Posté 15 avril 2013 - 09:17

Tout ceci peut être largement optimisé, c'est juste une idée comme ça (un samedi, et au réveil en plus) :P

Tranquille la grasse mat' :zz-big-back:
Le site de ToolsX
Le site de ToolsXOptimizer

Apple Certified Mac Management Basics 10.12
Apple Certified Mac Management Basics 10.9 English
Apple Certified Mac Integration Basics 10.9 English
Apple Certified Associate Mac Integration 10.8
Apple Certified Mac Management Basics 10.8




2 utilisateur(s) en train de lire ce sujet

0 membre(s), 2 invité(s), 0 utilisateur(s) anonyme(s)