Help please : j'arrive à rien - Algo - Programmation
Marsh Posté le 01-11-2005 à 13:12:53
ok je fais un truc et je vous le donne dans 30 minutes histoire quand mm que je fasse pas nimp
Marsh Posté le 01-11-2005 à 14:27:10
Algo "Toutshuss" 
 
Var 
 
Fixe=réel 
Anc=réel 
Km=Réel 
X550=Réel 
XL100=Réel 
CA1=Réel 
Ca2=Réel 
Comm1=Réel 
Comm2=Réel 
Rémunération=Réel 
 
 
Début 
 
X550:=0 
XL100:=0 
    
Saisir "Quel est le nombre d'année d'ancienneté"?, anc 
Saisir "Quel est me nombre de Km parcouru?", KM 
Saisir "Nombre de modèle X550 vendu?", X550 
Saisir "Nombre de modèle XL100 vendu?", XL100 
 
Si anc<5  
 Alors Fixe = 1100 
  Si anc<=10 
  Alors Fixe:=1100*(1+0,05) 
  Sinon Fixe:=1100*(1+0.10) 
  Finsi 
Finsi 
 
indem:=Km*0,15 
Si idem>350 
 Alors indem=350 
  
Ca1:=X550*180 
ca2:=XL100*350 
 
Si XL100>=50 
 alors comm1:=CA2*0.06 
 Sinon comm1:=0 
 
Si X550<=20 
 alors comm2:=Ca1*0.4 
  si X550<=50 
   alors comm2:=Ca1*0.06 
   Sinon comm2:=Ca1*0.10  
 
Remunération:=Fixe+indem+comm1+comm2 
 
Afficher "La rémunération de ce mois-ci est de",Remunération 
 
Marsh Posté le 01-11-2005 à 15:05:49
deja je vois un pb avec  
Si anc<5   
 Alors Fixe = 1100  
  Si anc<=10  
 
car si anc<5 il est forcement inferieur a 10 non ?
Marsh Posté le 01-11-2005 à 15:18:42
Algo Toutshuss 
  
var 
  
Fixe:réel  
Anc:réel  
Km:Réel  
X550:Réel  
XL100:Réel  
CA1:Réel  
Ca2:Réel  
Comm1:Réel  
Comm2:Réel  
Rémunération:Réel  
  
  
début 
X550:=0  
XL100:=0  
     
Saisir "Quel est le nombre d'année d'ancienneté? ", anc  
Saisir "Quel est me nombre de Km parcouru? ", KM  
Saisir "Nombre de modèle X550 vendu? ", X550  
Saisir "Nombre de modèle XL100 vendu? ", XL100  
  
Si anc<5   
 Alors Fixe = 1100  
  Si anc<=10  
   Alors Fixe:=1100*(1+0,05)  
   Sinon Fixe:=1100*(1+0.10)  
  Finsi  
Finsi  
  
indem:=Km*0,15  
Si idem>350  
 Alors indem=350  
Finsi 
   
Ca1:=X550*180  
ca2:=XL100*350  
  
Si XL100>=50  
 alors comm1:=CA2*0.06  
 Sinon comm1:=0  
Finsi 
  
Si X550<=20  
 alors comm2:=Ca1*0.4  
  si X550<=50  
   alors comm2:=Ca1*0.06  
   Sinon comm2:=Ca1*0.10   
  Finsi 
Finsi 
 
Remunération:=Fixe+indem+comm1+comm2  
  
Afficher "La rémunération de ce mois-ci est de",Remunération  
 
Fin 
 
j'ai rajouté et modifié 2 3 truc. 
 
Dsl mais je vois pas ou il y a erreur Betsamee
Marsh Posté le 01-11-2005 à 15:52:51
| angyo a écrit : Si anc<5    | 
 
Dans ces deux boucles, les conditions internes sont fausses: 
 
Première boucle, comme Betsamee l'a dit, tu commences par tester si "anc" est inférieur à 5, et SI c'est inférieur à 5 ALORS tu testes si c'est inférieur à 10... 
 
Pour rentrer dans le bloc, on est toujours en dessous de 5, donc les intervalles 5-10 et 10-inf ne sont jamais traités. 
 
De même pour le suivant.
Marsh Posté le 01-11-2005 à 16:56:39
Dsl mais j'ai pas compris.  
C'est parce que je pars de l'inférieur au supérieur?
Marsh Posté le 01-11-2005 à 19:10:42
fais toi un jeu d'essai et ca sera plus clair ... 
allez je suis de bonne humeur je fais le premier : 
si t'a ans = 3 alors normalement ton fixe = 1100, Ok ?? 
mais la tu re-test si 3 <= 10 (oui) donc fixe = 1100*(1+0,05)   au lieu de 1100. 
meme prob pour le second test. 
| Citation : C'est parce que je pars de l'inférieur au supérieur? | 
 
pas forcement ... c'est plutot les conditions qui sont incorrecte 
Marsh Posté le 01-11-2005 à 19:17:12
Algo Toutshuss 
  
var 
Fixe:réel  
Anc:réel  
Km:Réel  
X550:Réel  
XL100:Réel  
CA1:Réel  
Ca2:Réel  
Comm1:Réel  
Comm2:Réel  
Rémunération:Réel  
  
début 
X550:=0  
XL100:=0  
     
Saisir "Quel est le nombre d'année d'ancienneté? ", anc  
Saisir "Quel est me nombre de Km parcouru? ", KM  
Saisir "Nombre de modèle X550 vendu? ", X550  
Saisir "Nombre de modèle XL100 vendu? ", XL100  
  
Si anc>10   
 Alors Fixe:=1100 *(1+0.10) 
  Si anc<=10 et anc>=5 
   Alors Fixe:=1100*(1+0,05)  
   Sinon Fixe:=1100  
  Finsi  
Finsi  
  
indem:=Km*0,15  
Si idem>350  
 Alors indem=350  
Finsi 
   
Ca1:=X550*180  
ca2:=XL100*350  
  
Si XL100>=50  
 alors comm1:=CA2*0.06  
 Sinon comm1:=0  
Finsi 
  
Si X550<=20  
 alors comm2:=Ca1*0.4  
  si X550>=21 et X550<=50  
   alors comm2:=Ca1*0.06  
   Sinon comm2:=Ca1*0.10   
  Finsi 
Finsi 
 
Remunération:=Fixe+indem+comm1+comm2  
  
Afficher "La rémunération de ce mois-ci est de",Remunération  
 
Fin 
Marsh Posté le 01-11-2005 à 19:24:10
![[:sisicaivrai] [:sisicaivrai]](https://forum-images.hardware.fr/images/perso/sisicaivrai.gif) 
 
 
Mais pourquoi tu fais n'importe quoi comme ça ![[:petrus dei] [:petrus dei]](https://forum-images.hardware.fr/images/perso/petrus dei.gif) 
 
 
Tu pourrais pas essayer de dérouler l'algo dans ta tête pour chaque cas ![[:petrus dei] [:petrus dei]](https://forum-images.hardware.fr/images/perso/petrus dei.gif) 
 
 
Non parce que tu te rendrais compte que ça fait des conneries quel que soit le cas ![[:petrus75] [:petrus75]](https://forum-images.hardware.fr/images/perso/petrus75.gif)
Marsh Posté le 01-11-2005 à 19:27:54
conseil d'utilisation de la boucle conditionnelle : 
SI condition ALORS 
   .... traitements 
SINON    //TRES IMPORTANT LE SINON  
.....traitements 
FIN SI 
Marsh Posté le 01-11-2005 à 19:37:47
| crapodesiles a écrit : //TRES IMPORTANT LE SINON  | 
 
Bof 
Marsh Posté le 01-11-2005 à 19:45:29
:s Bon crapodesiles tu me parles de quel endroit, il faut que je sache sinon dans 3 jours je n'aurai pas fini et à ce rythme la, ça craint!! 
Et si j'utilisais des "selon" ça serait pareil??
Marsh Posté le 01-11-2005 à 19:45:53
non mais tu t'es cru ou la ?? 
 
cherche tous seul comme un grand c'est pas compliqué ... 
 
sinon Masklinn je maintiens que le sinon est fondamental 
 
Marsh Posté le 01-11-2005 à 19:47:46
ReplyMarsh Posté le 01-11-2005 à 19:48:14
Pour les sinons je crois que j'ai réglé le problème : 
 
Algo Toutshuss 
  
var 
Fixe:réel  
Anc:réel  
Km:Réel  
X550:Réel  
XL100:Réel  
CA1:Réel  
Ca2:Réel  
Comm1:Réel  
Comm2:Réel  
Rémunération:Réel  
  
début 
X550:=0  
XL100:=0  
     
Saisir "Quel est le nombre d'année d'ancienneté? ", anc  
Saisir "Quel est me nombre de Km parcouru? ", KM  
Saisir "Nombre de modèle X550 vendu? ", X550  
Saisir "Nombre de modèle XL100 vendu? ", XL100  
  
Si anc>10   
 Alors Fixe:=1100 *(1+0.10) 
  Sinon 
     Si anc<=10 et anc>=5 
     Alors Fixe:=1100*(1+0,05)  
     Sinon Fixe:=1100  
     Finsi  
Finsi  
  
indem:=Km*0,15  
Si idem>350  
 Alors indem=350  
Finsi 
   
Ca1:=X550*180  
ca2:=XL100*350  
  
Si XL100>=50  
 alors comm1:=CA2*0.06  
 Sinon comm1:=0  
Finsi 
  
Si X550<=20  
 Alors comm2:=Ca1*0.4  
 Sinon 
   Si X550>=21 et X550<=50  
   Alors comm2:=Ca1*0.06  
   Sinon comm2:=Ca1*0.10   
  Finsi 
Finsi 
 
Remunération:=Fixe+indem+comm1+comm2  
  
Afficher "La rémunération de ce mois-ci est de",Remunération  
 
Fin 
Marsh Posté le 01-11-2005 à 19:55:45
 
ca t'ecorche pas le  clavier d'ecrire des trucs du style de "comme meme" ?
Marsh Posté le 01-11-2005 à 19:59:32
un peu, j'ai pas fait attention  
 
mais vengeance perso : 
ça et non ca 
t'écorche et pas t'ecorche 
d'écrire et pas d'ecrire  
sans rancune ...
Marsh Posté le 01-11-2005 à 20:02:03
| crapodesiles a écrit : un peu, j'ai pas fait attention   | 
 
merde ![[:jean-guitou] [:jean-guitou]](https://forum-images.hardware.fr/images/perso/jean-guitou.gif) 
 
j'ai edite pour enlever le s d'echorches ![[:petrus75] [:petrus75]](https://forum-images.hardware.fr/images/perso/petrus75.gif) quant aux accents je bosse avec du qwerty je suis pas en France
 quant aux accents je bosse avec du qwerty je suis pas en France 
et puis rancune ca prend qu'un n 
Marsh Posté le 01-11-2005 à 20:05:46
aïe aïe aïe ... 
je le recopierai 100 fois avant d'aller me coucher 
Marsh Posté le 01-11-2005 à 21:10:36
| crapodesiles a écrit : sinon Masklinn je maintiens que le sinon est fondamental  | 
 
non 
Marsh Posté le 01-11-2005 à 21:16:58
Ouinnnnnnnnn svp quelqun peu pas me le corriger complètement comme ça je verrai mais erreur et si je comprend pas alors je vous demande please
Marsh Posté le 01-11-2005 à 22:14:39
| angyo a écrit : Ouinnnnnnnnn svp quelqun peu pas me le corriger complètement | 
 
Non. 
 
Tes erreurs, c'est de la logique de base. 
 
Et la charte de la section prog demande de ne pas faire le boulot des gens à leur place 
 
Déroule l'algo sur du papier, en écrivant chaque étape, c'est tellement flagrant qu'il est impossible de le rater.
Marsh Posté le 02-11-2005 à 08:36:11
ReplyMarsh Posté le 02-11-2005 à 11:21:52
| angyo a écrit : Alors où sont les erreurs exactement?? | 
 
| Citation :   | 
 
Maintenant tu te sors les doigts du cul et tu bosses un peu ![[:itm] [:itm]](https://forum-images.hardware.fr/images/perso/itm.gif) 
 
Marsh Posté le 02-11-2005 à 12:06:17
Le pribleme se situe, il me semble au surf parce que j'ai testé ceux d'avant et il marche 
Marsh Posté le 02-11-2005 à 12:51:37
Algo Toutshuss 
  
var 
Fixe, Anc, Km, X550, XL100:Réel 
 Ca1, Ca2, Comm1, Comm2, Rémunération, indem:Réel  
  
début 
X550:=0  
XL100:=0  
     
Saisir "Quel est le nombre d'année d'ancienneté? ", anc  
Saisir "Quel est me nombre de Km parcouru? ", KM  
Saisir "Nombre de modèle X550 vendu? ", X550  
Saisir "Nombre de modèle XL100 vendu? ", XL100  
  
Si anc>10   
 Alors Fixe:=1100 *(1+0.10) 
  Sinon 
     Si anc<=10 et anc>=5 
     Alors Fixe:=1100*(1+0.05)  
     Sinon Fixe:=1100  
     Finsi  
Finsi  
  
indem:=Km*0.15  
Si indem>350  
 Alors indem:=350  
Finsi 
   
Ca1:=X550*180  
Ca2:=XL100*350  
 
Si X550>50 
 alors comm1:=Ca1*0.1 
 Sinon 
  Si X550<=50 et X550>=21 
  Alors comm1:=Ca1*0.06 
  Sinon comm1:=Ca1*0.04 
  Finsi 
Finsi 
 
Si XL100>=50 
 Alors comm2:=Ca2*0.06 
 Sinon comm2:=0 
Finsi 
 
Remunération:=Fixe+indem+comm1+comm2  
  
Afficher "La rémunération de ce mois-ci est de",Remunération  
 
Fin 
Marsh Posté le 02-11-2005 à 15:02:55
pour le fixe ca a l'air bon 
 
pour le surf, c'est bon sauf que tu calcules pas ce qu'il faut : 
le coeff est progressif suivant le ca et tu applique un coeff différent à chaque partie du ca
Marsh Posté le 02-11-2005 à 19:02:55
Algo Toutshuss 
  
var 
Fixe, Anc, Km, X550, XL100:Réel 
 Ca1, Ca2, Comm1, Comm2, Rémunération, indem:Réel  
  
début 
X550:=0  
XL100:=0  
     
Saisir "Quel est le nombre d'année d'ancienneté? ", anc  
Saisir "Quel est me nombre de Km parcouru? ", KM  
Saisir "Nombre de modèle X550 vendu? ", X550  
Saisir "Nombre de modèle XL100 vendu? ", XL100  
  
Si anc>10   
 Alors Fixe:=1100 *(1+0.10) 
  Sinon 
     Si anc<=10 et anc>=5 
     Alors Fixe:=1100*(1+0.05)  
     Sinon Fixe:=1100  
     Finsi  
Finsi  
  
indem:=Km*0.15  
Si indem>350  
 Alors indem:=350  
Finsi 
   
Ca1:=X550*180  
Ca2:=XL100*350  
 
Si X550>50 
 alors comm1:=(x550-20)*0.04+(x550-50)*0.06+Ca1*0.1 
 Sinon 
  Si X550<=50 et X550>=21 
  Alors comm1:=(X550-20)*0.04+Ca1*0.06 
  Sinon comm1:=Ca1*0.04 
  Finsi 
Finsi 
 
Si XL100>=50 
 Alors comm2:=Ca2*0.06 
 Sinon comm2:=0 
Finsi 
 
Remunération:=Fixe+indem+comm1+comm2  
  
Afficher "La rémunération de ce mois-ci est de",Remunération  
 
Fin 
Marsh Posté le 02-11-2005 à 19:15:08
tes calculs sont faux, 
c'est plutot 
| 50 < X550      : 20 * 180 * 0.04 + 30 * 180 * 0.06 + ( X550 - 50 ) * 180 * 0.10  | 
Marsh Posté le 02-11-2005 à 19:23:06
moi j'allai mettre: 
Si X550>50 
 alors comm1:=((x550-20)*180)+0.04+((x550-50)*180)*0.06+Ca1*0.1 
 Sinon 
  Si X550<=50 et X550>=21 
  Alors comm1:=((X550-20)*180)*0.04+Ca1*0.06 
  Sinon comm1:=Ca1*0.04 
  Finsi 
Finsi 
 
enfin bon merci 
J'étais vraiment à l'ouest 
 
Marsh Posté le 01-11-2005 à 12:59:50
Bonjour à tous,
Euh j'ai un algorithme qui me propose problème :
La société "TOUTSHUSS" fabrique et distribue 2 types de surf des neiges:
- Le modèle "XL100", haut de gamme est vendu au prix myen de 350 ht.
- Le modèle "XS50", grande diffusion, est vendu au prix moyen de 180 ht.
Huits repésentants sont chargés de la commercialisation de ces deux produits.
Leur rémunération se calule ainsi:
-Un fixe de 1100, majoré de 5% à partir de 5 ans d'ancienneté ou de 10% au-delà de 10 ans.
-Une indemnité kilométrique de 0,15 du km parcouru. Elle est limitée à 350 mensuels.
-Une commision de 6% sur le chiffre d'fffaires Ht du modèle "XL100" à partir du 50ème surf vendu.
-Une commission progressive dur le modèle "X550":
-4% sur le CA jusqu'à la 20ème planche
-6% du 21ème au 51ème
-10% à partir du 51ème surf vendu.
Ecrire l'algorithme qui permet de calculer pour un mois quelquonque la rémunération brute mensuelle d'un représentant.
Pourrez-vous m'aider svp ?
Merci d'avance.