Faire 1 programme qui permet de remplacer 1 caractère donné par 1 autre dans une chaine de caractère
Exemple: Pomme H/P = Homme
Lime D/L = Dime
Version imprimable
Faire 1 programme qui permet de remplacer 1 caractère donné par 1 autre dans une chaine de caractère
Exemple: Pomme H/P = Homme
Lime D/L = Dime
Ben vas-y code :roll:
As-tu cru qu'on allait te le faire ?
Lio,
Tu en as combien à faire comme ça ?
Ça va devenir une habitude : personne n'est là pour faire TON travail. :D
pour t'aider il faut que tu prouve que tu fais des efforts et partant de la il faut que tu montre comment tu penses faire ton faire et dire sur quel algo tu te bases pour le faire
il s'agit juste de remplacer un caractere donné par un autre dans une chaine de caractere ,ce n'est pas du lac à boire(pour changer un peu 8-) )
tu pourra commencer par chercher d'abord le caractere à remplacer dans la chaine et la suite c'est a toi de voir
je t'ai juste donné un indice !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
et pour finir comme on le dit personne ne fera ton travail à ta place( j'adore ce forum :D :D :D )
Oooh je ne t'ai jamais demandé de faire Mon travail:evilred: . je l'ai fait et j'ai simplement demander de l'aide pour ma rédaction (correction).D'ailleurs voici la solution:mouarf:Citation:
Envoyé par droggo
Si quelqu'un veut apporter un correction tant mieux sinon c pas la peine de me dire des .......
:yaisse2: Essayez le et vous verrezCode:
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 Program lettre ; Const K=20 ; type tab= array[1...K] of char ; var i,j: integer; t:tab; g:char; label 1; procedure let(m:tab;n:integer); varh:integer; p:char; begin writeln(entrer la position dans le mot de la lettre que vous voulez changer) ; readln(h) ; writeln(entrer la nouvelle lettre) ; readln(p) ; m[h] :=p ; writeln(le nouveau mot est :) ; for i :=1 to n do write(m[i]) ; end; begin 1:writeln; writeln(entrer le nombre de lettre du mot); readln(j) ; writeln(entrer le mot en entrant les lettres une par une) ; for i :=1 to j do begin writeln(entrer la ,i,ème lettre); readln(t[i]) ; end ; writeln (le mot à modifier est :) ; for i :=1 to j do write(t[i]) ; writeln; let(t,j); readln; writeln(encore? Tapez o pour oui et une autre lettre que o pour non); readln(g) ; if g=o then goto 1 ; end.
Et on verra quoi ?
Déjà je peux te dire qu'on voit rien, car ton code est pas indenté, ca donne pas du tout envie de le lire.
Et moi je dis qu'il ne fait pas du tout ce que tu demandes...
Goi,
+1, et il en est même très loin.Citation:
Envoyé par Loceka
Et pour tes remarques, je te rappelle ton 1er post pour ce sujet:
Où est la demande d'aide ?Citation:
Envoyé par shangai3
Pour tout le monde (ou presque) sur ce forum, ce que tu demandes ainsi est une solution, pas de l'aide. :)
Bonjour,
Il me semble que ton programme réduit de beaucoup ce qui t'es demandé... Quand je lis l'énoncé, j'imagine un programme auquel on ne fourni qu'une chaine de caractère par exemple :
'Homme H/P'
et il te répond
'Pomme'
Tu n'as pas à lui fournir la position de la lettre à changer...
Ceci dit, évite d'utiliser l'instruction goto, ce n'est pas naturel en pascal...
J'espère que ces conseils vont t'aider...
Bonne programmation
Clandestino
Le code est trop long voici un qui est trop court:
Code:
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 program probleme; uses crt; var y:string; x:byte; z:char; procedure saisie (var x:byte; y:string); {une procédure qui permet de contrôler le saisie de la position} begin repeat writeln('Entrer la position de caractère'); readln(x); until (x >=1) and (x<= length(y)); end; begin clrscr; writeln('Entrer le mot'); readln(y); saisie(x,y); writeln('Entrer le nouveau caractère'); readln(z); {changment de caractère} y[x]:= z; writeln('le nouveau mot est ',y); readln; end.