Accepter que les carractaire ou que les chiffres ?
makblack
Messages postés
48
Date d'inscription
Statut
Membre
Dernière intervention
-
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
fiddy Messages postés 11069 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
j'ai une question qui est la suivante : comment faire pour que j'ai un algorithme qui n'accepte que les carractaire ?
par exp : nom : 2325 , sa m'affiche erreur veillez introdiore un nom correcte .
parceque j"ai fait un petit test avec ASCII mai sa passe pas ,merci d'avence ^^.
j'ai une question qui est la suivante : comment faire pour que j'ai un algorithme qui n'accepte que les carractaire ?
par exp : nom : 2325 , sa m'affiche erreur veillez introdiore un nom correcte .
parceque j"ai fait un petit test avec ASCII mai sa passe pas ,merci d'avence ^^.
A voir également:
- Accepter que les carractaire ou que les chiffres ?
- Comment activer les chiffres du clavier - Guide
- Accepter toutes les modifications word - Guide
- Comment garder le 0 devant les chiffres sur excel - Guide
- Application pour écrire les chiffre en lettre - Télécharger - Outils professionnels
- PC portable écrit chiffre à la place des lettres ✓ - Forum PC portable
3 réponses
c'est bon j'ai trouvai mai bon fait que je fait un qui accepte que les chiffres mai pour sa je n'ai aucune idée svp aidé moi
#include <stdio.h>
#include <string.h>
void main ()
{
char nom[20];
int i,d=0;
while(d!=1)
{
printf("entré votre nom");
scanf("%s",&nom);
for(i=0;i<strlen(nom);i++)
{if((nom[i]<91 && nom[i]>64) || (nom[i]>96 && nom[i]<123))
d=1;
else
{
printf("\nentré un nom valide ");
i=strlen(nom)+1;
}}
}
}
Bonjour,
Ton algorithme est bien compliqué.
Alors déjà, quelques corrections :
ce n'est pas void main() mais int main(void)
Ce n'est pas scanf("%s",&nom); mais scanf("%s",nom);
Plutôt que mettre les codes ascii, je te conseille de mettre le caractère correspondant entre apostrophe. Par exemple : '0' '9'. C'est beaucoup plus lisible.
Et enfin n'oublie pas le return 0; en fin de programme pour dire que tout s'est bien déroulé.
Concernant l'algorithme en lui-même, tu aurais mieux fait de faire une fonction. Ainsi tu n'as plus besoin de while(d!=1). Tu fais une boucle for, et dès que tu rencontres un nombre en dehors des bornes, tu fais un return. Terminé.
L'algo que je viens de te décrire est adaptable également pour les chiffres. Je te laisse donc faire à titre d'exercices. N'hésite pas à poster ton code pour qu'on puisse te corriger.
Ton algorithme est bien compliqué.
Alors déjà, quelques corrections :
ce n'est pas void main() mais int main(void)
Ce n'est pas scanf("%s",&nom); mais scanf("%s",nom);
Plutôt que mettre les codes ascii, je te conseille de mettre le caractère correspondant entre apostrophe. Par exemple : '0' '9'. C'est beaucoup plus lisible.
Et enfin n'oublie pas le return 0; en fin de programme pour dire que tout s'est bien déroulé.
Concernant l'algorithme en lui-même, tu aurais mieux fait de faire une fonction. Ainsi tu n'as plus besoin de while(d!=1). Tu fais une boucle for, et dès que tu rencontres un nombre en dehors des bornes, tu fais un return. Terminé.
L'algo que je viens de te décrire est adaptable également pour les chiffres. Je te laisse donc faire à titre d'exercices. N'hésite pas à poster ton code pour qu'on puisse te corriger.