Svp exercice pour lundi 5/10/09

Résolu/Fermé
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 - 3 oct. 2009 à 15:45
napsterockoeur Messages postés 198 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 30 juin 2010 - 5 oct. 2009 à 23:15
Bonjour,
g un travail a faire pour lundi , svp aidez moi.
(ce programme permet de calculer le nombre des prof celibataire ,suivant les chaines stocker dans un tableau T
!!les chaine sont ''celibataire'' et ''marié"") !!T est un tableau des chaines !!faut pas faire un test en remplisant le
tableau)

for i:= 1 to 20 do
begin
if t[i] ='celibataire' then
s:=s+1; {s est le nombre des profs celibataires}

end;
{le problem est si l'utilisateur n'a pas correctement ecri la chaine,par exemple la chaine ''Celebatere" doit etre
compris par le programme comme "celibataire"}
alors il faut faire une procedure test qui permet de verifier chauque chaine}

merci de m'ecrire cette procedure....
Configuration: Windows XP
Opera 9.80
A voir également:

22 réponses

Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 145
3 oct. 2009 à 15:45
Bonjour,

C'est en algorithme ?
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
3 oct. 2009 à 15:47
oui pascal
0
Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 145
3 oct. 2009 à 15:47
du Turbo Pascal ? oO
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
3 oct. 2009 à 15:48
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 145
3 oct. 2009 à 15:51
Je suppose qu'en Turbo Pascal, la condition OU se traduit par ||, ou je me trompe ?
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
3 oct. 2009 à 15:52
ou en turbo pascal c or
0
Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 145
3 oct. 2009 à 15:55
d'accord, merci. C'est un vieux langage plus vraiment pratiqué alors... :S
Donc, il te suffit de faire :
if t[i] ='celibataire' or t[i]='celebatere' or t[i].... then
s:=s+1;
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
3 oct. 2009 à 15:58
ok mais c un peut long :est ce qu'on peut tester sur les lettres par exemple
je compte sur vous. :)
0
Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 145
3 oct. 2009 à 16:12
lettre par lettre, je ne pense pas que ce soit le plus simple, mais avec des parties du mot (Je ne sais pas si c'est comme ça : if 'celib' isin t[i] then, ou bien if 'celib' in t[i]).
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
3 oct. 2009 à 16:14
ok t'en fait pas .merci
0
Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 145
3 oct. 2009 à 16:16
Ok, si tu trouves, dis-moi, ça peut toujours être bénéfique :D
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
3 oct. 2009 à 17:17
up
0
Autumn`Tears Messages postés 1054 Date d'inscription samedi 14 mars 2009 Statut Membre Dernière intervention 23 octobre 2013 145
3 oct. 2009 à 17:42
Il suffit d'avoir les compétences en Turbo Pascal... M'enfin ta prof pourrait vous faire faire du langage objet ce serait mieux :D
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
3 oct. 2009 à 20:00
up
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
4 oct. 2009 à 14:53
JE CHERCHE LA SOLUTION OPTIMALE
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
4 oct. 2009 à 15:29
aloors
0
Il y a quelques années est paru dans Linux Magazine un excellent article de Jérôme Delamarche qui s'intitulait: "Ecriture d'une fonction de reconnaissance phonétique pour MySQL".
Tu as beaucoup de chance car cet article est accessible sur le site UnixGarden.
Qu'importe le langage dont tu te sers, car la démarche est décrite et peut, par conséquent, être très facilement réécrite pour un autre langage que le 'C' utilisé dans l'exemple.
Bonne continuation.
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
5 oct. 2009 à 01:52
GRAND MERCI
0
firas mili Messages postés 76 Date d'inscription samedi 3 octobre 2009 Statut Membre Dernière intervention 11 décembre 2009 9
5 oct. 2009 à 02:28
Program ex2;
Uses wincrt;
Type prof=record
Sp,Np,EC:string;
Sa:real;
M:integer;
End;

Type Tab=array[1..5]of prof;

Var
T:tab;
P,N:integer;

{fonction qui convertie une chaine en majuscule}
function majus(s:string):string;
var i:integer;
begin
for i:= 1 to length(s) do
begin
s[i]:=upcase(s[i]);
end;
majus:=s;
end;


function marie(s:string):boolean;
var j,i,l:integer;
begin
l:=length(s);
for i:= 1 to l do
begin
if pos(s[i],'MARIE')<>0 then
j:=j+1;
end;

if (j in [l-2..l+2]) or( s='M') or (s='MA') then
marie:=true;
end;


{fonction qui soit vraie si s est 'celibataire'}
function test(s:string):boolean;
var n,i,l:integer;
begin
l:=length(s);
for i:=1 to l do
begin
if pos(s[i],'CELIBATAIRE')<>0 then
n:=n+1;
end;
if (n in[l-6..l+5]) or (s='C') or (s='CE') or (s='CEL') or (s='CELB')then
test:=true;
end;


Procedure Lecture(Var T:Tab;N:integer);
var x,i:integer;
z:string;
Begin
i:=1;
z:='';
While (z<>'.') do
begin
With T[i] Do
Begin
Writeln('Entrer le nom et prenom, si vous avez terminez entrer "."');
Readln(z);
if(z<>'.')then
Begin
Np:=Z;
Writeln('Entrer la specialité');
Readln(Sp);
Writeln('Entrer le n° de matricule');
Readln(m);

{Repeat
X:=1; }
Writeln('Entrer l''etat civil');
Readln(EC);
{ EC:=majus(EC);

if marie(EC) then
begin
EC:='marie' ;
writeln(ec);
end
else if test(EC) then
begin
EC:='celibataire';
writeln(EC) ;

end
else
x:=0;

Until(x=1);}
Writeln('Entrer la salaire');
Readln(Sa);
End;
End;
i:=i+1;
N:=i-1;
End;
End;

Procedure Calcul(var p:integer;t:tab;n:integer);
var
i:integer;
Begin

For i:=1 to N do
begin
If marie(t[i].ec)=false then
begin
if test(t[i].ec) then
p:=p+1;

end;


End;



End;




Begin
Lecture(T,N);
Calcul(p,t,n);
Writeln('Le nombre des profs celibataires est ',p);
End.
0
napsterockoeur Messages postés 198 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 30 juin 2010 10
5 oct. 2009 à 23:15
chapo:;)
0