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 :

Aide pour résoudre un énoncé d'examen


Sujet :

Pascal

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2007
    Messages : 14
    Points : 12
    Points
    12
    Par défaut Aide pour résoudre un énoncé d'examen
    BONJOUR TOUT LE MONDE,

    JE SUIS ACTUELLEMENT EN EXAM PASCAL ET J'AI UN PEU TROP BU DE SKY CE MATIN...

    J'ai deux exercices a faire.. je vous présente le premier en espérant que vous me répondrez.... Sincèrement je vous serai vraiment reconnaissant de votre aide... moi je suis vraiment beaucoup plus callé en php..

    Voici l'exo :

    Soit un tableau de 100 éléments contenant chacun un caractère (lettre, chiffre).On saisit au clavier un caractère. Le programme doit afficher le rang de tous les caractères identiques rencontrés dans le tableau.

    Faire l'exo en pascal..

    Sur cet exam, je risque mon année.....

    Je vous remercie d'avance, vraiment énormémént !!!


    Franchement, jsuis vrament désolé de vous demander ca mais là, aussi correct que je suis en prog, j'arrive vraiment pas en pascal !!! C'est un language que je n'accroche pas ! Merci

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Mars 2007
    Messages : 14
    Points : 12
    Points
    12
    Par défaut
    J'ai trouvé ca :

    Ca marche ???

    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
    program reperage;
     
    var
     saisie:char;
     i:integer;
     T:array[1..100] of char;
     
    begin
    //tableau pour le test
    for i:=1 to 100 do begin
    T[i]:=a
    end;
     
    T[i]:=b
     
     
    readln(saisie);
    for i:=1 to 100 do begin
    if T[i]=saisie then begin
     writeln ;
    end;
    end;
     
    end.

  3. #3
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Citation Envoyé par xplose Voir le message
    J'ai trouvé ca :

    Ca marche ???

    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
     
    program reperage;
     
    var
     saisie:char;
     i:integer;
     T:array[1..100] of char;
     
    begin
    //tableau pour le test
    for i:=1 to 100 do begin
    T[i]:=a
    end;
     
    T[i]:=b
     
     
    readln(saisie);
    for i:=1 to 100 do begin
    if T[i]=saisie then begin
     writeln ;
    end;
    end;
     
    end.
    La prochaine fois, pense aux balises [ code] [ /code] (sans les espaces, qui ne sont là que pour les invalider).

    ET fait une présentation propre : indentation correcte et régulière, pas de lignes vides inutiles, surtout quand il y en a plusieurs à la suite.

    Il y a de l'idée.

    - utilisation de 2 variables non déclarées a et b

    - remplir tout le tableau avec la même valeur me paraît un peu simpliste, un remplissage au hasard me semblerait préférable (mais l'enoncé ne précise pas si on doit le remplir !! ).

    - quand tu veux afficher le résultat, penses-tu que
    soit suffisant ?

    Il manque comme qui dirait ce qu'il faut effectivement écrire en paramètre à la procédure WriteLn.
    Si les cons volaient, il ferait nuit à midi.

  4. #4
    Membre habitué

    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    192
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 192
    Points : 176
    Points
    176
    Par défaut
    Bonjour,

    xplose a écrit :
    J'ai trouvé ca :

    Ca marche ???
    j'espère que "trouvé" ne veux pas dire recopié...

    le mieux est sans doute de compiler et si il n'y a pas d'erreurs , d'exécuter...

    comment sera rempli ton tableau au départ ? de caractères pas tous identiques je suppose ?

    ensuite tu dois saisir un caractère au clavier et le programme doit dire dans quel(s) rang(s) il se trouve ?

    fais déjà un test sur quelques éléments et essaie de voir.

    comme tu as déja un peu bossé sur le sujet je viens d'écrire un peu code mais à finir un peu... tu t'en doutes ...

    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
     
    program test;
    	var r:char;
    	t:array[1..9]of char;
    	i,compteur:integer;
    begin
     
    	//remplissage de 9 éléments
    	t[1]:='a';
    	t[2]:='z';
    	t[3]:='e';
    	t[4]:='r';
    	t[5]:='t';
    	t[6]:='y';
    	t[7]:='a';
    	t[8]:='z';
    	t[9]:='e';
     
    	compteur:=0;
     
    	// pose question
    	writeln;
    	write('caractère à rechercher ? ');
    	readln(r);
    	writeln;
     
    	//recherche dans le tabelau
    	for i:=1 to 9 do
    	begin
    		if r=t[i] then
    		begin
    			writeln(i); //affiche si trouvé
    			compteur:=compteur+1;
    		end;
    	end;
    	if compteur>0 then
    		writeln('le caractère  "',r,'" a été trouvé ',compteur,' fois  ')
    	else
    		writeln('le caractère "',r,'" n''a pas été trouvé ');
     
    	writeln;
    	write('programme terminé. appuyer sur Enter'); 
    	readln;
    end.
    .

    bonne continuation
    Un bon exemple vaut mieux qu'une longue explication confuse...

Discussions similaires

  1. Réponses: 1
    Dernier message: 27/07/2011, 19h00
  2. Aide pour résoudre erreur de segmentation
    Par MounaR dans le forum C++
    Réponses: 6
    Dernier message: 26/04/2011, 16h04
  3. Réponses: 0
    Dernier message: 26/04/2010, 13h07
  4. Réponses: 8
    Dernier message: 04/12/2008, 11h14
  5. Aide pour résoudre un Segmentation fault
    Par Premium dans le forum C
    Réponses: 8
    Dernier message: 10/12/2005, 12h26

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