IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Pascal Discussion :

[Débutant] Nombre min, nombre max


Sujet :

Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Décembre 2010
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2010
    Messages : 41
    Par défaut [Débutant] Nombre min, nombre max
    Bonjour à tous !

    Voila j'ai un exercice à faire en Pascal, et dans l'énoncé il est dit :"Trouver la personne la plus âgée et la plus jeune". Le problème c'est qu'en étant débutant dans la programmation, je ne vois pas comment réaliser cette fonction. Quelqu'un pourrait-il m'éclairer ??

    Merci d'avance.

  2. #2
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 971
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 971
    Par défaut
    Hoa,

    Les boules de cristal sont en vacances, impossible de te répondre.

    Franchement, quelle réponse attends-tu avec ce que tu nous exposes ?

    Ma seule réponse crédible en l'état : la personne la plus âgée est celle qui est née avant toutes les autres.

  3. #3
    Membre averti
    Homme Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Décembre 2010
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2010
    Messages : 41
    Par défaut
    Ben comment l'exprimer, quelle fonction utilisée.. je sais pas moi Pascal c'est pas ma vie non plus ^^

  4. #4
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 971
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 971
    Par défaut
    Kai,

    Réfléchis quand même un peu, et relis ton message.

    Comment veux-tu qu'on sache ce que tu dois faire avec les quelques mots que tu a daigné écrire.

    C'est exactement comme si je te demandais "Quel est l'âge du capitaine ?" sans autre information.

  5. #5
    Membre averti
    Homme Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Décembre 2010
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2010
    Messages : 41
    Par défaut
    Ok donc voila l'exo : "Définir une population de N personnes. Chaque personne possède un nom, prénom et age. Calculer l’âge moyen de la population. Trouver la personne la plus âgée et la plus jeune."

  6. #6
    Rédacteur
    Avatar de darrylsite
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    1 299
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 299
    Par défaut
    Citation Envoyé par droggo Voir le message
    Hoa,

    Les boules de cristal sont en vacances, impossible de te répondre.

    Franchement, quelle réponse attends-tu avec ce que tu nous exposes ?

    Ma seule réponse crédible en l'état : la personne la plus âgée est celle qui est née avant toutes les autres.
    Et pourtant c'est bientot Nöel !


    Citation Envoyé par woodix
    Ok donc voila l'exo : "Définir une population de N personnes. Chaque personne possède un nom, prénom et age. Calculer l’âge moyen de la population. Trouver la personne la plus âgée et la plus jeune."
    C'est un exercice bien basique qui a pour solution : Tableau+Boucle+quelques contrôles conditionnels.
    Propose quelque chose, et on te dira ce qui te bloque

  7. #7
    Membre averti
    Homme Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Décembre 2010
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2010
    Messages : 41
    Par défaut
    Citation Envoyé par darrylsite Voir le message


    C'est un exercice bien basique qui a pour solution : Tableau+Boucle+quelques contrôles conditionnels.
    Propose quelque chose, et on te dira ce qui te bloques
    Pourquoi a-t-on besoin d'une boucle là ? Je ne comprends pas..

  8. #8
    Membre Expert

    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    935
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Aveyron (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2009
    Messages : 935
    Par défaut
    Et bien, si tu ne pense pas en avoir besoin, essayes de faire sans !

    L'essentiel, c'est que tu comprennes que personne ne va te donner de code si tu n'en a pas donné avant. Donc programme, et quand tu as un probleme, va voir dans des cours (tres important), sur google, sur des tutos ... Et ENSUITE, viens poser ta question (précise).

    Bonne chance

  9. #9
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 971
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 971
    Par défaut
    Hia,
    Citation Envoyé par woodix Voir le message
    Pourquoi a-t-on besoin d'une boucle là ? Je ne comprends pas..
    Je vais essayer d'être gentil, bien qu'il faille te tirer le moindre renseignement aux forceps (était-il si difficile de mettre directement l'énoncé complet ?).

    Petit entraînement, on revient au papier + crayon.

    Tu dois gérer plusieurs personnes, avec diverses caractéristiques.

    DONC, tu écris quelques nom + les valeurs pour les caractéristiques en question.

    Ce qui constitue l'étape "création de la liste".

    Puis tu vas chercher à gérer ces données.

    Pour trouver l'âge le plus élevé "à la main" sur ta petite liste, tu passes des données de la première à la deuxième, 3ème ... : tu fais une boucle.

    Je trouve que je suis vraiment gentil ce soir.

  10. #10
    Membre Expert

    Homme Profil pro
    Formation: Chimie et Physique (structure de la matière)
    Inscrit en
    Décembre 2010
    Messages
    1 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Formation: Chimie et Physique (structure de la matière)
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 333
    Billets dans le blog
    9
    Par défaut [Débutant] Nombre min, nombre max
    Salut,

    Tu disposes sans doute d'une liste de N individus, caractérisés par une date de naissance numérique (j, m, a), triplet d'entiers vérifiant:
    0<j<32 ; 0<m<13 ; 1900 < a < 2010
    (ces dernières contraintes étant approximatives, mais probables).
    Le plus simple est de lui associer une date absolue exprimée en jours par la relation linéaire: d = (j-1) + 31(m-1) + 372a = 372a + 31m + j - 32 ; le fait de compter 12 mois de 31 jours permet de conserver sur (d) la relation d'ordre temporel (T>T' entraînant d>d') sans s'embarrasser des irrégularités du calendrier.
    Puisque d est compris entre 706000 et 750000, utiliser des variables de type LONGINT; ou alors exprimer d en années par la relation
    d = a + (m-1)/12 + (j-1)/372 ; interviendront alors des variables de type REAL ou EXTENDED.
    La liste des valeurs de d une fois constituée, il suffira de la parcourir pour en extraire les extremums (Dmin et Dmax).

    Bon courage.

  11. #11
    Membre Expert
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Par défaut
    La question est de savoir si on lui fourni toutes ces informations
    Au vu de l'énoncé il a en entrée l'âge( l'énoncé aurait précisé s'il fallait fournir pour calculer l'âge le jour, le mois et l'année)

    Comme dit plus haut par darrylsite :
    Citation Envoyé par darrylsite
    C'est un exercice bien basique qui a pour solution : Tableau+Boucle+quelques contrôles conditionnels.
    Faut pas aller chercher loin

  12. #12
    Membre averti
    Homme Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Décembre 2010
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2010
    Messages : 41
    Par défaut
    J'ai commençais, et j'en suis à ce niveau :

    J'ai réussi à entrer les noms, prénoms, et âge pour N personne que l'on définit.
    Maintenant je coince pour calculé la moyenne, étant donné qu'il faut calculé la somme de tous les âges avant, sachant que l'on rentre plusieurs valeurs pour une même variable, "age" dans mon cas..

    Un petit éclaircissement svp ??

  13. #13
    Membre chevronné
    Avatar de richard
    Homme Profil pro
    Inscrit en
    Avril 2002
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations forums :
    Inscription : Avril 2002
    Messages : 476
    Par défaut
    Le problème de ton programme se situe essentiellement dans la conception et plus exactement dans les structures de données.

    Tu as, admettons, une population de 10 personnes (mais ça peut être plus ou moins peu importe pour l'instant). Chaque personne se définit par trois valeurs (ou "champs") : son nom, son prénom, son âge. Il faut créer une structure de données qui représentera cette personne. Ensuite il faut créer une autre structure de données qui va intégrer les 10 (ou 15 ou 30 ou 100) personnes qui composeront ta population.

    En résumé tu as besoin de DEUX structures de données : l'une pour regrouper les champs qui caractérisent chaque individu et qui représente seulement UN individu comme cela:

    --------------
    | NOM |
    --------------
    | PRENOM |
    --------------
    | AGE |
    --------------

    Et l'autre qui regroupera tous ces individus dans une population comme cela :

    ------------------------
    | P1 | P2| P3 | P4 | etc.
    ------------------------

    Il est aisé de voir que ta population sera représentée par une structure de données de type tableau. Pour la première (un individu), ce type existe en Pascal et s'appelle un RECORD. Il se déclare ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
      Type T_personne= Record
                            nom : string;
                            prenom : string;
                            age : interger;
                            End;
    Ensuite tu vas créer un tableau qui contiendra tes Record (qui représentent chacun une "Personne")

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
       Type  T_population= Array[1..100] of t_personne;
    Ces types vont te fournir ensuite des variables que tu pourras utiliser.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     VAR personne:T_personne;
           population:T_population;

  14. #14
    Membre Expert

    Homme Profil pro
    Formation: Chimie et Physique (structure de la matière)
    Inscrit en
    Décembre 2010
    Messages
    1 333
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Formation: Chimie et Physique (structure de la matière)
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2010
    Messages : 1 333
    Billets dans le blog
    9
    Par défaut Extremums et moyenne d'une liste d'entiers.
    Bonjour Woodix

    La variable centrale est la liste des âges, supposés entiers.
    Ci-joint un programme simple, qui reprend la notation de Richard.
    L'initialisation des noms et prénoms est fastidieuse; on peut se contenter de rentrer un caractère, pour aller plus vite; dans le même but, les âges sont déterminés aléatoirement.

    C'est la première fois que j'interviens sur un forum, et j'espère qu'il n'y a pas de bug pour la transmission du fichier. Le programme devrait marcher.
    Fichiers attachés Fichiers attachés

  15. #15
    Membre averti
    Homme Profil pro
    Ingénieur d'Etudes
    Inscrit en
    Décembre 2010
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'Etudes
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2010
    Messages : 41
    Par défaut
    Merci pour ta réponse

    Voila j'ai suivi ta démarche (enfin j'espère..) et j'ai une erreur lors de la compilation ("Error: Can't read or write variables of this type")


Discussions similaires

  1. Calcul des nombres d'événements max et min
    Par ghazalinadou dans le forum MATLAB
    Réponses: 0
    Dernier message: 10/06/2015, 14h40
  2. Nombre aléatoire compris entre min et max
    Par Gobble dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/11/2014, 13h56
  3. Réponses: 12
    Dernier message: 05/08/2005, 15h32
  4. [débutant] obtenir le nombre de checkbox cochées
    Par macke_d dans le forum Composants
    Réponses: 3
    Dernier message: 30/03/2005, 02h17
  5. [débutant] Limitation du nombre d'enregistrement renvoyé
    Par tmcgrady dans le forum Langage SQL
    Réponses: 4
    Dernier message: 12/11/2003, 09h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo