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

Turbo Pascal Discussion :

Comment comparer deux enregistrements


Sujet :

Turbo Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2012
    Messages : 20
    Par défaut Comment comparer deux enregistrements
    Salut;

    est-ce qu'il existe une syntaxe en Pascal qui permet de faire ça : if (t1=t2) alors .. car quand j'essaie je reçois une erreur ; ou bien je dois comparer les deux enregistrements champ par champ ? Sachant que t1 et t2 sont deux enregistrements déclarés comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    type
      time:record
        heure,minute,seconde:integer;
      end;
    var
      t1,t2:time;

  2. #2
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 56
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    oui, champ par champ
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Membre actif
    Femme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2012
    Messages : 20
    Par défaut
    d'accord merci.

  4. #4
    Membre Expert
    Avatar de Dr.Who
    Inscrit en
    Septembre 2009
    Messages
    980
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Septembre 2009
    Messages : 980
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
    type
      TTime : record
        heure, minute, seconde: word;
      end;
     
    function createTime(aHeure, aMinute, aSeconde: word): TTime;
    begin
      result.Heure := aHeure;
      result.aMinute := aMinute;
      result.aSeconde := aSeconde;
    end;
     
    function compareTime(A, B: TTime): integer;
    var sA, sB: longword;
    begin
      sA := A.Seconde + (A.Minute * 60) + (A.Heure * 3600);
      sB := B.Seconde + (B.Minute * 60) + (B.Heure * 3600);
      if sA > sB then
        result := 1
      else
      if sA < sB then
        result := -1
      else
        result := 0;
    end;
     
     
    var
      t1,t2: TTime;
      r : integer;
    begin
      t1 := createTime(random(25), random(60), random(60));
      t2 := createTime(random(25), random(60), random(60));
     
      writeln('t1 = ',t1.Heure,' h ', t1.minute, ' m ', t1.seconde, ' s');
      writeln('t2 = ',t2.Heure,' h ', t2.minute, ' m ', t2.seconde, ' s');
     
      r := compareTime(t1, t2);
     
      case r of 
        -1 : writeln('t1 est plus petite que t2');
        0 : writeln('t1 et t2 sont égales');
        1 : writeln('t1 est supérieure à t2');
      end;
     
      readln;
    end;
    [ Sources et programmes de Dr.Who | FAQ Delphi | FAQ Pascal | Règlement | Contactez l'équipe ]
    Ma messagerie n'est pas la succursale du forum... merci!

Discussions similaires

  1. [requête sql]comment comparer des enregistrements de deux tables
    Par DSabah dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 01/06/2007, 15h12
  2. Réponses: 9
    Dernier message: 27/06/2006, 16h55
  3. Comparer deux enregistrements mysql lors d'un update ?
    Par zevince dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 03/02/2006, 16h56
  4. Comment comparer deux dates
    Par vodevil dans le forum Modules
    Réponses: 6
    Dernier message: 01/09/2005, 18h24
  5. comment comparer deux dates?
    Par billoum dans le forum C++Builder
    Réponses: 2
    Dernier message: 21/08/2004, 21h08

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