Convertir un algorithme en C
Bonjour, je suis sambalien. J'ai deux problemes pour lesquels je sollicite votre aide.
1- J'ai un algorithme en tete et j'aimerais le convertir en C.
Je vous le soumets :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| Chaine: variableChaine
OuvertureFichier: fichier
Entier: numeroLigne = 1
fichier = Fonction_d_OuvertureFichier("urlFichier","modeLecture")
Ecrire("Donnez votre chaine")
Lire(variableChaine)
Faire
LireChaineDuFichier(numeroLigne)
Si (varariableChaine == ChaineDuFichierLue){ // ChaineDuFichierLue pourra etre une retournée
// par la fonction LireChaineDuFichier
Ecrire("Chaine Trouvée")
Sortir
}
Sinon{
Ecrire("Chaine non trouvée", numeroLigne, "fois")
numeroLigne++
}
Jusqu'a ce que(FinDeFichier)
Fin |
Si vous pouvez me le convertir en langage C cela me serait d'un grand secours.
2- J'utilise le Dev-C++, quand je fais des fonctions j'ai toujours un probleme
avec le linker lors de la compilation.
Ce n'est pas encore resolu
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 29 30 31 32 33
| #include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, char *argv[])
{
// Des variable pour prendre des chaines
char chaineFichier[100], chaineUtilisateur[100];
// Pour l'ouverture du fichier
FILE* fichier = NULL;
fichier = fopen("pass.txt","r");
// Pour prendre le texte de l'utilisateur
printf("Entrez votre chaine: ");
scanf("%s", chaineUtilisateur);
// Verification de l'ouverture du fichier
if (fichier != NULL){
printf("\nOuverture reussie...\n\n");
while(1){
fgets(chaineFichier,sizeof(chaineFichier),fichier);
if(strcmp(chaineFichier, chaineUtilisateur) == 0){
printf("\nChaine Identique");
// getchar();
// break;
fclose(fichier);
}
}
}
system("PAUSE");
return 0;
} |
J'ai apporté certaines modifications c'est presque le meme resultat:
1- Le programme affiche :Ouverture reussie
2- Le programme reste en memoire et n'affiche plus rien et n'accepte aucune commande.
p.s. Je n'ai pas encore trouvé comment lui dire de d'arreter la boucle. J'ai pense a break; mais je pense que c'est la logique mon probleme.
toutefois vous avez mon algorithme et mes codes sources si vous trouvez une meilleure logique faites moi savoir