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 :

Codage binaire en Pascal


Sujet :

Turbo Pascal

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Décembre 2017
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2017
    Messages : 1
    Par défaut Codage binaire en Pascal
    Bonjour,

    J'ai besoin de votre aide pour corriger ce programme.
    Le problème est :
    Écrire un programme pascal qui consiste à compter les uns ou les zéros qui se suivent dans un octet.
    Exemples :
    Si O= 10011100 , il sera stocké 1203120

    Si O=01000011, il sera stocké 014021
    J'ai essayé cette solution mais toujours j'ai un problème pour le passage entre les 0 et 1.

    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
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    program binaire;
     
    uses  WinCrt;
     
      type
     tab= array[1..8] of string;
    var
    i,n,j,nbre,l: integer;
    T1,T2:tab;
    bb:boolean;
    res,chnbre:string;
    element:char;
     
    begin
     
    repeat
    writeln ('n=');
    readln (n);
    until n in [2..8];
    for i:=1 to n do
    repeat
     
    writeln('donner l"element',i);
    readln (T1[i]);
    j:=0; bb:=true;
    repeat
    j:=j+1;
    if not( T1[i][j] in ['0'..'1']) then
      bb:=false;
    until (length (T1[i])=8) or (bb=false);
    until (length (T1[i])=8) and (bb);
    for i:=1 to n do
     
    begin
     
     
    nbre:=1;l:=1;
    repeat
    element:=T1[i][j]; nbre:=1;
     while (T1[i][j+1]=element) do
      begin
       j:=j+1;
      nbre:=nbre+1
    end;
     
    if (nbre>1) then
     begin
    str(nbre,chnbre);
    T2[i]:=T2[i]+chnbre+T1[i][j-1]; 
    end 
    else
    begin T2[i]:=T2[i]+T1[i][j]; j:j+1; end; l:=j+1;
    until (l>8);
     
    end;
    for i:=1 to n do
    writeln (T2[i]);
    end.
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. [Free Pascal] Comment déclarer un fichier binaire en Pascal
    Par antezi dans le forum Free Pascal
    Réponses: 2
    Dernier message: 10/05/2013, 14h15
  2. Réponses: 2
    Dernier message: 17/02/2010, 17h27
  3. Codage binaire de la population
    Par debalgo dans le forum MATLAB
    Réponses: 3
    Dernier message: 06/05/2008, 14h34
  4. convertir un reel en une chaine binaire(codage)
    Par jiji83 dans le forum Langage
    Réponses: 3
    Dernier message: 21/02/2007, 18h19
  5. [LG]convertion réel en binaire en pascal.
    Par gabyboul dans le forum Langage
    Réponses: 12
    Dernier message: 07/12/2003, 06h57

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