Partage

Recuperer la premiere lettre d'un mot.

Sujet résolu
Le 11 septembre 2009 à 19:10:57

Bonjour !

Alors voila mon problème je cherche à creer un programme capable de faire des mots de passe en fontion de données qu'on lui donne mais pour ca je voudrait avoir une fonction me permettant de recuperer une lettre precise dans un mots ( la premiere ou/et la deuxieme ) quelque soit la taille du mot.

Je n'ai pas encore entammer le code mais j'ai mon algorithme.

demander le prénom;
--Taper son prenom
prendre les deux premieres lettres du prenom;

demander le nom;
--taper le nom
prendre les deux premiere lettre du nom;

demander la datte de naissance (JJMMAAAA);
--taper la date de naissance
prendre le dernier chiffre de JJ, MM et AAAA;

demander si fille ou garçon;
--composer code fille ou garçon
attribuer un chiffre en fonction;

Donner le mot de passe en fonction des 8 carractères;
Publicité
Le 11 septembre 2009 à 19:10:57
Le 11 septembre 2009 à 19:15:27

Salut !

Sachant qu'un mot est une chaîne de caractères (c'est-à-dire une suite de lettres), et qu'une chaîne est un tableau, la première lettre correspond à la première case du tableau, et la deuxième à la deuxième case.
printf("%c",prenom[0]);//Affiche la première lettre du mot


Voilà, c'est tout simple. :)

Remarque: tu dois avoir lu les chapitres sur les pointeurs, les tableaux et les chaînes de caractères du cours sur le C pour pouvoir manipuler des mots
Le 11 septembre 2009 à 19:24:40

merci pour l'aide, en fait je n'ai pas lu tout les cours de C sur le site du zero. Je suis en premiere année de DUT informatique et je commance a peine la prog, je voulais commancer par un petit programme simple mais utile.

voila je vien de commancer mon code et j'en suis la :

#include <stdio.h>
#include <stdlib.h>
#include <time.h>


int main(int argc, char *argv[])
{
	int prenom = 0;

	printf("Ce programme va vous permettre de generer un mot de passe en fonction\nd'information personnelle.\n");
	printf("Pour cela vous devez repondre a quelque questions.\n\n");
	printf("Quel est votre prenom ?\n\n");
	scanf("%d", &prenom);
	printf("%c",prenom[0]);
	return 0;
}


mais sa ne marche pas il me manque un pointeur ou un tableau mais je ne coprend pas le tuto sur ça. Quelqu'un pourrait m'aider ?
Le 11 septembre 2009 à 20:19:28

Cela ne fonctionne pas car tu n'utilise pas de tableau pour ta chaine de caractère.

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
	char prenom[30] = {0}; 
/*il faut créer une chaine de caractere : Un tableau de char 
où chaque char représente un caractere*/

	printf("Ce programme va vous permettre de generer un mot de passe en fonction\nd'information personnelle.\n");
	printf("Pour cela vous devez repondre a quelque questions.\n\n");
	printf("Quel est votre prenom ?\n\n");
	scanf("%s", prenom); /*%s signifie chaine de caractere. 
De plus il n'y a pas besoin du & pour les chaine de caractere car ce sont des pointeurs*/

	printf("\n%c\n%c", prenom[0], prenom[1]); 
//%c car tu lis un seul caractere

	return 0;
}


On aurais aussi pu écrire int prenom[30] mais je préfère utiliser un char pour les caractères, comme dans le tutoriel du site du zéro ici
Le 11 septembre 2009 à 20:25:46

merci Mymimoi pour ton aide c'est exactement ce que je voulais, je vais adapter ça a mon algo pour finir mon programe.
:):)

Recuperer la premiere lettre d'un mot.

× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
  • Editeur
  • Markdown