Help please : j'arrive à rien

Help please : j'arrive à rien - Algo - Programmation

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.

Reply

Marsh Posté le 01-11-2005 à 12:59:50   

Reply

Marsh Posté le 01-11-2005 à 13:09:10    

Reply

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

Reply

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
 

Reply

Marsh Posté le 01-11-2005 à 14:27:43    

C'est bon ou pas?
 
Merci de la réponse

Reply

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 ?

Reply

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

Reply

Marsh Posté le 01-11-2005 à 15:52:51    

angyo a écrit :

Si anc<5  
 Alors Fixe = 1100  
  Si anc<=10  
   Alors Fixe:=1100*(1+0,05)  
   Sinon Fixe:=1100*(1+0.10)  
  Finsi  
Finsi  
 
Si X550<=20  
 alors comm2:=Ca1*0.4  
  si X550<=50  
   alors comm2:=Ca1*0.06  
   Sinon comm2:=Ca1*0.10  
  Finsi
Finsi
 


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.


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

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?

Reply

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

Reply

Marsh Posté le 01-11-2005 à 19:10:42   

Reply

Marsh Posté le 01-11-2005 à 19:13:18    

ok merci j'avai pas compris je modifie et je le remet

Reply

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

Reply

Marsh Posté le 01-11-2005 à 19:24:10    

[:sisicaivrai]
 
Mais pourquoi tu fais n'importe quoi comme ça [:petrus dei]
 
Tu pourrais pas essayer de dérouler l'algo dans ta tête pour chaque cas [:petrus dei]
 
Non parce que tu te rendrais compte que ça fait des conneries quel que soit le cas [:petrus75]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

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

Reply

Marsh Posté le 01-11-2005 à 19:37:47    

crapodesiles a écrit :

//TRES IMPORTANT LE SINON


Bof :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

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??

Reply

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
 
:o

Message cité 2 fois
Message édité par crapodesiles le 01-11-2005 à 19:49:52
Reply

Marsh Posté le 01-11-2005 à 19:47:46    

crapodesiles a écrit :

un petit peu comme meme .
:o


 :ouch:  
[:massacre-a-la-tronconneuse]

Reply

Marsh 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

Reply

Marsh Posté le 01-11-2005 à 19:50:33    

Il faut que je faudrais que je change quoi à présent?

Reply

Marsh Posté le 01-11-2005 à 19:52:36    

Reply

Marsh Posté le 01-11-2005 à 19:54:12    

Que se passe t-il?

Reply

Marsh Posté le 01-11-2005 à 19:55:45    


ca t'ecorche pas le  clavier d'ecrire des trucs du style de "comme meme" ?


Message édité par betsamee le 01-11-2005 à 19:56:03
Reply

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 ...

Message cité 1 fois
Message édité par crapodesiles le 01-11-2005 à 20:06:23
Reply

Marsh Posté le 01-11-2005 à 20:02:03    

crapodesiles a écrit :

un peu, j'ai pas fait attention  
 
mais vengeance perso :
ça et non ca
t'écorches et pas t'ecorches
d'écrire et pas d'ecrire  
sans rancunne ...


merde [:jean-guitou]
j'ai edite pour enlever le s d'echorches [:petrus75] quant aux accents je bosse avec du qwerty je suis pas en France
et puis rancune ca prend qu'un n :D


Message édité par betsamee le 01-11-2005 à 20:02:50
Reply

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 :D

Reply

Marsh Posté le 01-11-2005 à 21:10:36    

crapodesiles a écrit :

sinon Masklinn je maintiens que le sinon est fondamental
 
:o


non :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

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

Reply

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.


Message édité par masklinn le 01-11-2005 à 22:17:44

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

Marsh Posté le 02-11-2005 à 08:36:11    

Alors où sont les erreurs exactement??

Reply

Marsh Posté le 02-11-2005 à 11:21:52    

angyo a écrit :

Alors où sont les erreurs exactement??


Citation :


Déroule l'algo sur du papier, en écrivant chaque étape, c'est tellement flagrant qu'il est impossible de le rater.


Maintenant tu te sors les doigts du cul et tu bosses un peu [:itm]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
Reply

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

Reply

Marsh Posté le 02-11-2005 à 12:06:31    

dsl problème

Reply

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

Reply

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


---------------
The Rom's, à votre service
Reply

Marsh Posté le 02-11-2005 à 17:04:58    

je vois pff c chiant

Reply

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

Reply

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
20 < X550 < 51 : 20 * 180 * 0.04 + ( X550 - 30 ) * 180 * 0.06
     X550 < 21 : X550 * 180 * 0.04


---------------
The Rom's, à votre service
Reply

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
 

Reply

Marsh Posté le 02-11-2005 à 19:29:02    

T sur que c'est 30 * 180 * 0.06 et pas (50 * 180) * 0.06

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed