Gérer le forum:  Aide  •  Rechercher  •  Liste des Membres  •  Groupes d'utilisateurs   •  S'enregistrer  •  Profil  •  Se connecter pour vérifier ses messages privés  •  Connexion 
 Correction de mon algo Voir le sujet suivant
Voir le sujet précédent
Poster un nouveau sujetRépondre au sujet
Auteur Message
Shakan972
Forumeur fréquent
Forumeur fréquent


Ecole d'Ingénieurs

Messages: 67

MessagePosté le: Ven 20 Jan 2006 - 00:03 Répondre en citantRevenir en haut

Bonjour à tous je suis en terminale IG et j'avais besoin de votre avis sur la qualité de mon algo concernant un exercice !!

L'exercice est le suivant :

La société PSS désire calculer le salaire brut mensuel de ses employés en fonction d'un taux horaire variable et du nombre d'heures travaillées.

Par souci de considération on considérera que le taux moyen des cotisations salariales est de 20%. Le salaire net corespond au salaire brut moins les cotisations salariales. De plus, les salariés bénéficient d'une prime de repas mensuelle de 80 €, cette prime est éxonérée de cotisations sociales.

J'ai donc réalisé l'algo suivant relatiif à l'énoncé:

CONSTANTES :

TCS <--- 20% /* Taux moyen des cotisations salariales */
PRM <--- 80 /* Prime de repas mensuelle */

VARIABLES :

NOM : Chaîne /* Nom du salarié */
TH : Réel /* Taux horaire du salarié */
NBM : Réel /* Nombre d'heures mensuelles */
SB : Réel /* Salaire brut mensuel */
SN : Réel /* Salaire net */
NP : Réel /* Salaire net à payer */

DEBUT

Saisir "Quelle est le nom du salarié ?",NOM
Saisir "Quelle est le taux horaire du salarié ?",TH
Saisir "Quel est le nombre d'heures travaillées ?",NBM
SB <--- NBM*TH
Afficher "Le salaire brut mensuel est de ",SB
SN <--- SB-(SB*TCS)
Afficher "Le salaire net est de",SN
NP <--- SN+PRM
Afficher "Le salaire net à payer est de ",NP

FIN
Voir le profil de l'utilisateurEnvoyer un message privé

N'oubliez pas de vous inscrire à la communauté pour participer. Si vous êtes déjà membre, connectez-vous pour faire disparaître ce bandeau publicitaire.
Machjaghjolu
Expert du forum
Expert du forum


BTS IG - Option réseau Diplômé
Sexe: Sexe:Masculin
Messages: 627
Localisation: Aiacciu

MessagePosté le: Ven 20 Jan 2006 - 11:14 Répondre en citantRevenir en haut

Salute,

Je ne suis pas sûr de ce que j'affirme mais :
- Tu n'as pas donné de nom à ton algo au début (Programme nomDuProgramme)
- Les constantes se déclarent avec un =
- Le pourcentage n'est peut-être pas autorisé donc déclare tes constantes avec 0,20 etc.. et modifie les calculs si tu modifies les constantes.

_________________
Un populu ùn hè vintu finch'ellu lotterà
Voir le profil de l'utilisateurEnvoyer un message privéMSN Messenger
Shakan972
Forumeur fréquent
Forumeur fréquent


Ecole d'Ingénieurs

Messages: 67

MessagePosté le: Ven 20 Jan 2006 - 20:21 Répondre en citantRevenir en haut

mis à part ces détails l'algo est-il bon ??
Voir le profil de l'utilisateurEnvoyer un message privé
kronky
Accro à Web-IG
Accro à Web-IG


BTS IG - Option développeur Diplômé
Sexe: Sexe:Masculin
Messages: 143
Localisation: Dijon

MessagePosté le: Ven 20 Jan 2006 - 21:17 Répondre en citantRevenir en haut

Machjaghjolu a écrit:

- Tu n'as pas donné de nom à ton algo au début (Programme nomDuProgramme)

D'accord.
Dans ce cas, ce n'est pas critique car il n'y a qu'un programme, mais prend l'habitude de nommer tes algos. Ca t'aidera pour des cas plus complexes, où tu auras plusieurs algo qui interagissent, des fonctions, des procédures...

Citation:
- Les constantes se déclarent avec un =

Pas forcément.
Je ne crois pas qu'il y ai vraiment une syntaxe universelle pour les algos. Chaque prof adapte en s'inspirant de son langage préféré. Wink

Citation:
- Le pourcentage n'est peut-être pas autorisé donc déclare tes constantes avec 0,20 etc.. et modifie les calculs si tu modifies les constantes.

D'accord aussi.
Dans un programme, 20%, ça ne veut rien dire... D'ailleurs, de quel type serait la variable contenant cette valeur ? Surement pas un type numérique, à cause du caractère "%" !

Tiens, d'ailleurs tu as oublié de déclarer tes constantes. Si tu l'avais fait, tu aurais vu que '20%' n'était pas cohérent.

Donc :
Code:
CONSTANTES :

TCS : réel
PRM : réel

TCS <--- 0.2 /* Taux moyen des cotisations salariales */
PRM <--- 80  /* Prime de repas mensuelle */



Sinon, j'ai vu une ligne qui pouvait être optimisée :
Code:
SB-(SB*TCS)

on factorise et ça devient
Code:
SB(1-TCS)

Du coup tu n'apelles ta variable qu'une fois. Wink
Voir le profil de l'utilisateurEnvoyer un message privéEnvoyer l'e-mailVisiter le site web du posteurMSN Messenger
Machjaghjolu
Expert du forum
Expert du forum


BTS IG - Option réseau Diplômé
Sexe: Sexe:Masculin
Messages: 627
Localisation: Aiacciu

MessagePosté le: Ven 20 Jan 2006 - 21:32 Répondre en citantRevenir en haut

kronky a écrit:
Citation:
- Le pourcentage n'est peut-être pas autorisé donc déclare tes constantes avec 0,20 etc.. et modifie les calculs si tu modifies les constantes.

D'accord aussi.
Dans un programme, 20%, ça ne veut rien dire... D'ailleurs, de quel type serait la variable contenant cette valeur ? Surement pas un type numérique, à cause du caractère "%" !

Tiens, d'ailleurs tu as oublié de déclarer tes constantes. Si tu l'avais fait, tu aurais vu que '20%' n'était pas cohérent.

Donc :
Code:
CONSTANTES :

TCS : réel
PRM : réel

TCS <--- 0.2 /* Taux moyen des cotisations salariales */
PRM <--- 80  /* Prime de repas mensuelle */




Je ne suis pas sûr de ce que tu affirmes mais tu as surement raison vu que tu es en seconde année de Dev
Laughing Laughing mais avec 2 profs différents et quelques sites j'ai jamais vu qu'on déclarait une constante avec le type.

Par contre dans un langage de programmation je sais qu'il faut déclarer le type aussi..

Doit bien exister une convention de nommage en algo quelque part lol.

_________________
Un populu ùn hè vintu finch'ellu lotterà
Voir le profil de l'utilisateurEnvoyer un message privéMSN Messenger
kronky
Accro à Web-IG
Accro à Web-IG


BTS IG - Option développeur Diplômé
Sexe: Sexe:Masculin
Messages: 143
Localisation: Dijon

MessagePosté le: Sam 21 Jan 2006 - 18:27 Répondre en citantRevenir en haut

Bah de toute façon, comme dirait mon prof "L'algo c'est un truc ringard qu'on enseigne parce que c'est au programme". Et un mec qui a un lapin bélier qui s'apelle Alf a forcément raison (les cnedien sauront de qui je parle). Laughing

Plus sérieusement, l'interet de l'algo pour moi, c'est d'apprendre les bases de la programmation indépendamment de tout langage avec une syntaxe qui explicite bien toutes les subtilités de la prog, et qu'un langage peut pafois cacher.
Par exemple, pour reprendre le symbole de l'affectation, on utilise parfois "<--" en algo pour faire la différence avec l'égalité "=" qui est un concept très différent (même si ça ne parait pas évident a priori).
Ou alors, on utilise "=" pour l'affectation et "==" pour l'égalité, l'important étant de faire une distinction pour montrer qu'on a compris les concepts sous-jacents.

En ce qui concerne la déclaration des constantes, je t'avouerai que je n'ai aucun souvenir si on le faisait ou non en première année... Mais ça me parait plus cohérent de le faire. D'ailleurs, toujours pour citer le même prof "une constante est une variable comme les autre".
Voir le profil de l'utilisateurEnvoyer un message privéEnvoyer l'e-mailVisiter le site web du posteurMSN Messenger
Shakan972
Forumeur fréquent
Forumeur fréquent


Ecole d'Ingénieurs

Messages: 67

MessagePosté le: Sam 21 Jan 2006 - 19:08 Répondre en citantRevenir en haut

c'est juste que cette variable est statique au niveau de son contenu, n'est ce pas??
Voir le profil de l'utilisateurEnvoyer un message privé
OSC@R
Forumeur occasionnel
Forumeur occasionnel


BTS IG - Option réseau 1ère année
Sexe: Sexe:Masculin
Messages: 36
Localisation: Cotonou

MessagePosté le: Sam 21 Jan 2006 - 19:19 Répondre en citantRevenir en haut

Bonsoir.

Je suis en train d'écrire un petit programme en turbo. L'algo que j'exécute est bon. Seulement au moment de compiler le programme, un message d'erreur s'affiche en haut de la fenêtre avec ce msg
" Error 15 : File not found (SYSTEM.TPU)"
qu'est ce que c'est ? pourtant j'ai donné un nom à mon programme. Est ce que ce msg est lié à l'emplacement de l'enregistrement, cad, le repertoire dans lequel j'ai enregistré le programme ?

Merci
Voir le profil de l'utilisateurEnvoyer un message privéVisiter le site web du posteur
OSC@R
Forumeur occasionnel
Forumeur occasionnel


BTS IG - Option réseau 1ère année
Sexe: Sexe:Masculin
Messages: 36
Localisation: Cotonou

MessagePosté le: Dim 22 Jan 2006 - 00:01 Répondre en citantRevenir en haut

Personne n'a encore trouvé de solution à mon pbm ? Rolling Eyes
Voir le profil de l'utilisateurEnvoyer un message privéVisiter le site web du posteur
Genzo
Modérateur
Modérateur


Post-BTS
Sexe: Sexe:Masculin
Messages: 1706
Localisation: Sartrouville (78)

MessagePosté le: Dim 22 Jan 2006 - 00:24 Répondre en citantRevenir en haut

Ton problème vient surement d'une mauvaise installation de ton compilateur.
Essayes de le réinstaller, et/ou de le mettre à jour.

_________________
N'oubliez pas de mettre un avis sur votre lycée/centre de formation !!! Pensez aux futurs BTSiens. Merci Wink
Voir le profil de l'utilisateurEnvoyer un message privéVisiter le site web du posteurMSN Messenger
kronky
Accro à Web-IG
Accro à Web-IG


BTS IG - Option développeur Diplômé
Sexe: Sexe:Masculin
Messages: 143
Localisation: Dijon

MessagePosté le: Dim 22 Jan 2006 - 19:24 Répondre en citantRevenir en haut

OSC@R a écrit:
Personne n'a encore trouvé de solution à mon pbm ? Rolling Eyes

Si tu avais posé ta question dans un nouveau sujet au lieu de faire dévier celui là, tu aurais surement plus de réponses... Rolling Eyes

Shakan972 a écrit:
c'est juste que cette variable est statique au niveau de son contenu, n'est ce pas??

Je dirais plutôt invariable. Voilà, une constante c'est une variable invariable. Mr. Green

Le terme statique me gène un peu car ça a un autre sens. C'est une variable qui a une portée locale mais qui garde sa valeur quand le programme appelle le sous-programme dans lequel elle est déclarée. Euh... je suis pas clair ? Surprised

Un exemple très simple :
Code:
fonction Houplala () : reel
var
  MaVariable : reel

Debut
 Resultat <-- MaVariable +1
Fin

Dans le cas d'une variable 'normale', le programme
Code:
affiche Houplala
affiche Houplala
affiche Houplala

Donnera :
Code:
1
1
1

puisque la variable sera initialisée à 0 à chaque apelle de la fonction (Bien entendu, ça suppose que le langage initialise les variables à zéro lors des déclarations, sinon j'obtiendrais n'importe quoi).

Dans le cas d'une variable static (on admet que j'ai ajouté le mot 'Static' dans la déclaration), cela donnerait
Code:
1
2
3
Voir le profil de l'utilisateurEnvoyer un message privéEnvoyer l'e-mailVisiter le site web du posteurMSN Messenger
Vincent
Webmaster
Webmaster


Post-BTS
Sexe: Sexe:Masculin
Messages: 5584
Localisation: Montpellier

MessagePosté le: Dim 22 Jan 2006 - 20:19 Répondre en citantRevenir en haut

kronky a écrit:

Plus sérieusement, l'interet de l'algo pour moi, c'est d'apprendre les bases de la programmation indépendamment de tout langage avec une syntaxe qui explicite bien toutes les subtilités de la prog, et qu'un langage peut pafois cacher.

C'est exactement pour cette raison qu'on enseigne l'algo.

_________________
Hey les amis, pensez à suivre @webig sur Twitter, et pourquoi pas me suivre moi @cybervince Wink
Voir le profil de l'utilisateurEnvoyer un message privéVisiter le site web du posteurMSN MessengerNuméro ICQ
OSC@R
Forumeur occasionnel
Forumeur occasionnel


BTS IG - Option réseau 1ère année
Sexe: Sexe:Masculin
Messages: 36
Localisation: Cotonou

MessagePosté le: Lun 23 Jan 2006 - 19:46 Répondre en citantRevenir en haut

Genzo a écrit:
Ton problème vient surement d'une mauvaise installation de ton compilateur.
Essayes de le réinstaller, et/ou de le mettre à jour.


Bah, c'est réglé. J'avais déplacer la source du programme dans un autre repertoire, c'est pkoi j'avais ces msg affichés.

Merci Genzo. Laughing
Voir le profil de l'utilisateurEnvoyer un message privéVisiter le site web du posteur
Yipyip
Modérateur
Modérateur



Sexe: Sexe:Féminin
Messages: 1163
Localisation: Ici, là, pas loin ...

MessagePosté le: Lun 23 Jan 2006 - 21:15 Répondre en citantRevenir en haut

Pour en revenir au test de l'algo, eh bien le meilleur moyen de voir si l'algo correspond est de ... le le tester avec un langage.

_________________
Image
Image
Voir le profil de l'utilisateurEnvoyer un message privé
Genzo
Modérateur
Modérateur


Post-BTS
Sexe: Sexe:Masculin
Messages: 1706
Localisation: Sartrouville (78)

MessagePosté le: Lun 23 Jan 2006 - 21:35 Répondre en citantRevenir en haut

Yipyip a écrit:
Pour en revenir au test de l'algo, eh bien le meilleur moyen de voir si l'algo correspond est de ... le le tester avec un langage.

Et ça m'a toujours frustré devant mes copies en algo... Confused

_________________
N'oubliez pas de mettre un avis sur votre lycée/centre de formation !!! Pensez aux futurs BTSiens. Merci Wink
Voir le profil de l'utilisateurEnvoyer un message privéVisiter le site web du posteurMSN Messenger
mrmabo
Accro à Web-IG
Accro à Web-IG


Post-BTS
Sexe: Sexe:Masculin
Messages: 226
Localisation: Amiens

MessagePosté le: Mar 24 Jan 2006 - 12:06 Répondre en citantRevenir en haut

mais il faut aussi être capable de faire tourner son algo sur papier dans sa tête
en suivant l'evolution des variables
Voir le profil de l'utilisateurEnvoyer un message privé
Montrer les messages depuis:      
Poster un nouveau sujetRépondre au sujet
 Sauter vers:   



Voir le sujet suivant
Voir le sujet précédent
Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum