Le bonheur au bout du chemin

Ce forum est conçu pour le partage du savoir et des connaissances dans tous les domaines de la vie.
 
AccueilCalendrierFAQRechercherS'enregistrerMembresGroupesConnexion

Partagez | 
 

 Quelques algorithmes

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
nayla
Modératrice
Modératrice


Nombre de messages : 37
Date d'inscription : 17/02/2008

MessageSujet: Quelques algorithmes   Jeu 20 Mar - 22:07




///* l’algorithme qui donne la longueur d'une chaîne de caractère*///

Algorithme strlen

Entrée : ch : chaîne de caractères
Sortie : i :entier /*positif*/
Var locales : i : entier

Début
Effacer l’écran
i = 0
tant que la fin de ch non atteinte faire
i := i+1
/*a la sortie de la bcl*/
Retour(i)
Fin


//////////*l’algorithme qui cherche un mot donné ds un txt*////////
///////////////////*avec la position du début*/////////////////////

Algorithme cherch

Entrées : ch,mot : chaînes de caractères
Sorties : l : entier /*retour par adresse*/
1 : si mot existe
0 :si mot n’existe pas
Var locales : i,j : entier

Début
Effacer l’écran
i := 0
tant que la fin de ch non atteinte
début tant que
tant que (ch[i]<>’ ‘) faire i := i+1 /*sauter les blancs*/
l := i /*position du début du mot*/
/*début du mot*/
j := 0
tant que (ch[i] = mot[j]) et (la fin de ch non atteinte) faire
début tant que /*comparer les deux mots*/
i := i+1
j := j+1
fin tant que
/*a la sortie de la bcl*/
Si (((ch[i] = ‘ ‘)ou(fin ch atteinte))et(fin mot atteinte) faire
retour(1)
Sinon
Tant que ((ch[i] <> ‘ ‘) et (fin ch non atteinte) faire
i := i+1
fin tant que
retour(0)
Fin

////////////////*avec la position du début et de fin*////////////////

Algorithme cherch_df

Entrées : ch,mot : chaînes de caractères
Sorties : m,l : entier /*retour par adresse*/
1 : si le mot existe
0 : si le mot n’existe pas
Var locales : i,j : entier

Début
i := 0
tant que fin ch non atteinte faire
début tant que
tant que (ch[i] = ‘ ‘) faire i := i+1 /*sauter les blancs*/
m := i /*position du début du mot*/
/*début du mot*/
j := 0
tant que (ch[i] = mot[j])et(fin ch non atteinte) faire
début tant que /*comparer les deux mots*/
i := i+1
j := j+1
fin tant que
/*a la sortie de la bcl*/
si (((ch[i] = ‘ ‘)ou(fin ch atteinte))et(fin mot atteinte)) faire
début du si
l = i
retour(1)
fin si
sinon tant que (ch[i] <> ‘ ‘) et (fin ch non atteinte) faire
i := i+1
fin tant que
retour(0)
Fin


////*l’algorithme qui insert un caractère a une position donnée*////

Algorithme insert_car
Entrées : ch : chaîne de caractères
mot : caractère
pos : entier
Sortie : vide
Var locales : i,l : entier

Début
l = strlen(ch) /*longueur du mot*/
effacer l’écran
pour i := l à pos-1 faire ch[i+1] : = ch[i] /*décalage a droite*/
/*a la sortie de la bcl*/
ch[pos] : = mot ;
Fin



////////* 1.l’algorithme qui compte le nbr de mots du texte*/////////

Algorithme nbr_de_mot

entée : ch :chaîne de caractères
sortie : nb : entier
var locales : i,nb : entier

Début
i := 0
nb := 0

tant que (fin de ch non atteinte) faire
début tant que
tant que (ch[i] = ‘ ‘) faire
i := i+1 /*sauter les blancs*/

si la fin de ch non atteinte faire /*début du mot*/
début si
nb := nb+1
tant que (ch[i] <> ‘ ‘)et(la fin de ch non
atteinte faire
i : = i+1 /*sauter les caractères du mot*/
fin si

fin tant que
retour(nb)

Fin


/////* 2.l’algorithme qui affiche le mot le plus long du texte*//////

Algorithme mot_plus_long

Entrée : ch :chaîne de caractères
Sortie : vide
Var locales : i,pos,nb1,nb2 :entier

Debut
i := 0
nb1 := 0
nb2 := 0
effacer l’écran
tant que (fin de ch non atteinte) faire
début tant que
tant que ((ch[i]<> ‘ ‘) et (fin ch non atteinte)) faire
début tant que
nb1 := nb1 + 1 /*le nbr de caractères du mot*/
i := i + 1
fin tant que
si (nb1 > nb2)
début si
nb2 := nb1
pos := i
fin si
nb1 := 0
fin tant que
pour i := pos – nb2 à pos-1 faire
écrire (ch[i])
Fin


///* 3.l’algorithme qui insert un mot donné a une position donnée*///

Algorithme insert_mot

Entrées : ch,mot: chaînes de caractères
Pos : entier
Sortie : vide
Var locales : j,k : entier

Début
Effacer l’écran

j := pos
k := 0
tant que la fin de mot non atteinte faire
début tant que
insert_car(ch,mot[k],j)
j := j+1
k := k+1
fin tant que
Fin



///* 4.la fonction qui cherche un mot donné et le met en couleur*///

Algorithme colorer_mot

Entrées : ch,mot : chaînes de caractères
Sortie : vide
Var locales : i,j : entier

Début
Effacer l’écran
Si cherch (ch,mot,&j) = 1
Début si
Pour i := 0 à j-1 faire écrire(ch[i])
Tant que (ch[j] <> ‘ ‘) et (fin ch non atteinte) faire
Début tant que
colorer le caractère /*avec une fonction spécifique*/
j := j+1
fin tant que
/*a la sortie de la bcl*/
écrire(mot) /*avec une fonction d’écriture spécifique*/
j := j+1
tant que fin ch non atteinte faire écrire(ch[j])
fin si
sinon écrire (‘le mot n’existe pas !! ;-(‘)
Fin

/////*5.la fonction qui cherche toutes les occurrences d'un mot et
les mettre en couleur*/////










///////////* 6.l’algorithme qui supprime un mot du texte*///////////

Algorithme supp_occ1

Entrées : ch,mot : chaîne de caractères
Sortie : vide
Var locales : i,x,pos : entier

Début
Effacer l’ecran
x := cherch_df(ch,mot,&pos,&i)
si (x = 0) écrire(‘le mot n’existe pas’)
sinon
début sinon
tant que fin ch non atteinte faire
début tant que
ch[pos] := ch[i]
pos := pos+1
i := i+1
fin tant que
/*a la sortie de la bcl*/
Ch[pos] :=
Fin sinon
Fin


///* 7.l’algorithme qui supprime toutes les occurrences d'un mot*///

Algorithme supp_tt_occu

Entrées : ch,mot : chaînes de caractères
Sortie : vide
Var locales : i,pos : entier

Début
Effacer l’écran
Si (cherch_df(ch,mot,&pos,&i) = 0) écrire (‘le mot n’existe pas’)
Sinon
Début sinon
Tant que (cherch-df(ch,mot,&pos,&i) = 1) faire
Début tant que
Supp_occu1(ch,mot)
i := i+1
fin tant que
écrire(ch)
fin sinon
Fin


//* 8.l’algorithme qui remplace un mot par un autre dans le texte*//

Algorithme remplace

Entrées : ch,mot1,mot2 : chaînes de caractères
Sortie : vide
Var locales : i,d,f : entier


Début
Tant que (cherch_df(ch,mot1,&d,&f) = 1) faire
Début tant que
Supp_occ1(ch,mot1)
Insert_mot(ch,mot2,d)
Fin tant que
Ecrire(ch)
Fin
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Tarikos5000
Grand modérateur
Grand modérateur


Masculin Nombre de messages : 215
Age : 42
Date d'inscription : 18/02/2008

MessageSujet: Re: Quelques algorithmes   Ven 21 Mar - 11:53

merci pour ce algo, ca peut aider des gens
bon travail
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
fleur
Membre en or
Membre en or


Féminin Nombre de messages : 177
Date d'inscription : 29/03/2008

MessageSujet: Re: Quelques algorithmes   Dim 30 Mar - 14:21

Merci Nayla
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: Quelques algorithmes   Aujourd'hui à 13:26

Revenir en haut Aller en bas
 
Quelques algorithmes
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Quelques faits saillants retenus par la presse WASP... En route vers Haïti
» Quelques souvenirs de fête ...
» Quelques compliments et une question.
» Des manières quelques peu cavalières. [Libre]
» quelques (nombreux) mois plus tard...

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Le bonheur au bout du chemin :: Multimedia :: Informatique-
Sauter vers: