IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Conversion d'une chaîne de caractères en majuscules


Sujet :

C

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Centrafrique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2017
    Messages : 8
    Points : 7
    Points
    7
    Par défaut Conversion d'une chaîne de caractères en majuscules
    Salut les amis!En fait je voudrais écrire un programme qui transmet toute chaîne de caractères en majuscules mais j'ai un problème car je ne sais comment y procéder.Merci

  2. #2
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 690
    Points : 30 985
    Points
    30 985
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Pas de souci: tu boucles sur chaque caractère de la chaine. Et si ce caractère est compris entre 'a' et 'z' alors, puisqu'un caractère est en réalité la valeur numérique correspondant à sa valeur ascii, et que les calculs mathématiques sont possibles dessus, te suffit de lui enlever 'a' et lui rajouter 'A' pour avoir son équivalent majuscule.
    Ex: char carac='f' - 'a' + 'A'; printf("%c", carac); // En final carac contient "F".

    Plus de détails ici.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  3. #3
    Membre expérimenté Avatar de edgarjacobs
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2011
    Messages
    625
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mai 2011
    Messages : 625
    Points : 1 562
    Points
    1 562
    Par défaut
    Hello,

    Citation Envoyé par Sve@r Voir le message
    Bonjour
    Pas de souci: tu boucles sur chaque caractère de la chaine. Et si ce caractère est compris entre 'a' et 'z' ....
    Je ne me serais même pas fatigué à faire des tests : toupper() fait le job sans que le programmeur ait à se poser des questions.
    On écrit "J'ai tort" ; "tord" est la conjugaison du verbre "tordre" à la 3ème personne de l'indicatif présent

  4. #4
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 690
    Points : 30 985
    Points
    30 985
    Billets dans le blog
    1
    Par défaut
    Ouais mais je suis parti de l'idée qu'il s'agissait d'un exercice d'apprentissage. Et dans ce cas, le prof préfère justement les tests et les opérations...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  5. #5
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    Pas forcément, au contraire, utiliser le bon outil est la meilleure des leçons qu'on devrait recevoir.
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  6. #6
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 679
    Points
    13 679
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Ouais mais je suis parti de l'idée qu'il s'agissait d'un exercice d'apprentissage. Et dans ce cas, le prof préfère justement les tests et les opérations...
    Citation Envoyé par ternel Voir le message
    Pas forcément, au contraire, utiliser le bon outil est la meilleure des leçons qu'on devrait recevoir.
    Ce sont deux approches, chacune avec ses avantages et ses inconvénients. Ouvrir ou ne pas ouvrir le capot dés le début

  7. #7
    Expert éminent sénior

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 189
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 189
    Points : 17 141
    Points
    17 141
    Par défaut
    A vrai dire, la seule chose qui me semble importante, c'est qu'un futur collègue sache quand utiliser l'un ou l'autre, ou à défaut ne réinvente pas la roue.
    Personne n'aime avoir à débugger une roue réinventée par un collègue.

    Un bon cours présenterait les deux, d'abord l'appel de toupper, qui est la méthode générale, puis ouvrirai le capot.

    La bonne réponse dépend de l'exercice précis, et du moment dans le cours.
    Mes principes de bases du codeur qui veut pouvoir dormir:
    • Une variable de moins est une source d'erreur en moins.
    • Un pointeur de moins est une montagne d'erreurs en moins.
    • Un copier-coller, ça doit se justifier... Deux, c'est un de trop.
    • jamais signifie "sauf si j'ai passé trois jours à prouver que je peux".
    • La plus sotte des questions est celle qu'on ne pose pas.
    Pour faire des graphes, essayez yEd.
    le ter nel est le titre porté par un de mes personnages de jeu de rôle

  8. #8
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 690
    Points : 30 985
    Points
    30 985
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par ternel Voir le message
    La bonne réponse dépend de l'exercice précis, et du moment dans le cours.
    Je suis d'accord avec cette dernière partie de phrase. C'est effectivement elle qui décide quand détailler la transformation ou quand passer par une fonction toute faite. Tout ce que je peux dire, c'est que mon sentiment, forgé par 7 années d'enseignement du C, m'incite à penser que le PO en est au tout début de l'apprentissage et qu'on lui apprend ce qu'il y a sous le capot en lui demandant de s'entrainer à manipuler le bouzin. Parce que si ça avait été moi son prof, et que j'en sois à ce moment que je décris, c'est typiquement un exo que j'aurais donné à faire en interdisant bien entendu tout appel aux fonctions déjà toutes faites. Mais bien sûr une fois l'exo fini, j'aurais alors basculé du côté inverse en donnant la fonction et en donnant aussi la directive de l'utiliser.
    Toujours la même histoire de l'apprentissage humain: on ne peut apprendre un niveau "n+1" qu'en apprenant d'abord le niveau "n" (même si les lois et valeurs de ce niveau "n" sont incomplète ou fausses parce que trop grossières) puis en le désapprenant ensuite une fois que le cerveau a compris le concept. C'est tout aussi bien vrai pour l'enfant à qui on montre le Soleil tourner autour de la Terre et qui apprendra bien plus tard que c'est en fait la Terre qui tourne sur elle même, que pour le cosmologue supérieur qui commence par travailler sur les équations de Newton pour ensuite découvrir qu'elles sont fausses au voisinage des grosses masses et qu'il doit alors les oublier pour passer à celles d'Einstein.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  9. #9
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 614
    Points : 30 626
    Points
    30 626
    Par défaut
    Salut,
    Citation Envoyé par Sve@r Voir le message
    Je suis d'accord avec cette dernière partie de phrase. C'est effectivement elle qui décide quand détailler la transformation ou quand passer par une fonction toute faite. Tout ce que je peux dire, c'est que mon sentiment, forgé par 7 années d'enseignement du C, m'incite à penser que le PO en est au tout début de l'apprentissage et qu'on lui apprend ce qu'il y a sous le capot en lui demandant de s'entrainer à manipuler le bouzin. Parce que si ça avait été moi son prof, et que j'en sois à ce moment que je décris, c'est typiquement un exo que j'aurais donné à faire en interdisant bien entendu tout appel aux fonctions déjà toutes faites. Mais bien sûr une fois l'exo fini, j'aurais alors basculé du côté inverse en donnant la fonction et en donnant aussi la directive de l'utiliser.
    Toujours la même histoire de l'apprentissage humain: on ne peut apprendre un niveau "n+1" qu'en apprenant d'abord le niveau "n" (même si les lois et valeurs de ce niveau "n" sont incomplète ou fausses parce que trop grossières) puis en le désapprenant ensuite une fois que le cerveau a compris le concept. C'est tout aussi bien vrai pour l'enfant à qui on montre le Soleil tourner autour de la Terre et qui apprendra bien plus tard que c'est en fait la Terre qui tourne sur elle même, que pour le cosmologue supérieur qui commence par travailler sur les équations de Newton pour ensuite découvrir qu'elles sont fausses au voisinage des grosses masses et qu'il doit alors les oublier pour passer à celles d'Einstein.
    A vrai dire, mon sentiment (bien que je ne sois pas prof, et encore moins prof de C) est que le gros problème vient qu'on tend trop souvent à cumuler deux cours en un, car, quel que soit le (premier) langage envisagé, on essaye de faire tenir dans le cours:
    • un cours d'algorithmie qui forme l'esprit à concevoir la logique qu'il s'agira d'expliquer au processeur d'une part et
    • un cours sur le langage lui-même, dont le but est d'apprendre à l'élève comment exprimer cette logique dans un langage donné.


    Je connais toutes les objections qui peuvent être faites à une proposition qui consisterait à séparer clairement ces deux cours. Elles vont de "pas assez de temps/ de profs pour le faire" à "c'est pas motivant pour l'élève de ne pas pouvoir voir le résultat au travers d'un programme qui fonctionne", en passant par d'autres objections plus ou moins farfelues.

    Mais, pour avoir moi-même eu l'occasion d'expérimenter cette séparation lors de mon apprentissage, je peux dire que la deuxième objection (celle qui a trait à la motivation de l'élève) peut s'avérer totalement fausse et que la méthode permet vraiment de clarifier les choses pour l'élève.

    De plus, on ne se poserait dés lors plus l'éternelle question de savoir s'il faut aller "voir sous le capot" ou non: le cours d'algorithmie nous demanderait de coder développer la logique d'une fonction proche de toupper, et le cours de langage que la fonction en question existe déjà dans la bibliothèque standard du langage

    Avouez que l'on aurait sans doute tout à y gagner, non
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  10. #10
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 214
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 214
    Points : 10 140
    Points
    10 140
    Par défaut
    Citation Envoyé par koala01 Voir le message
    Avouez que l'on aurait sans doute tout à y gagner, non
    Totalement d'accord , surtout que les cours actuel tend plus a apprendre un langage que l'algorithmie , ce qui est stupide parce que la programmation c'est facile 80% d'algo pour ma part , même en assembleur quand on a compris les rouages du CPU et de la machine cible , ben le reste du boulot c'est de l'algo :p

    Je rajouterai que la plupart des débutants les soucis qu'ils ont sont plus d'ordre de l'algo que du langage lui même , un exemple assez concret si on regarde les question sur la lib SDL , la plupart des question se porte plus sur l'algo (comment obtenir un résultat) que la lib en elle même (comment faire ceci).

    Et pour mon expérience personnelle , je considère que ma capacité a réussir a faire des algo correct est grâce a mes connaissances personnel qui est le syllogisme et le formalisme , si on arrive clairement dans sa langue maternelle de formaliser ces propos , c'est la moitié de l'algo deja fait
    Pour cela que je trouve cela 'stupide' de vouloir enseigner des maths haut niveau en disant "ça permet de donner une logique a l’élève" , sachant que même si les maths sont logique , elle n’entraîne pas forcément son pratiquant a être formelle sur les langues , de plus a un certain niveau (enfin je que j'ai pu remarquer a la FAC) la plupart (enfin quasiment tout le monde) apprend les formules et les résolutions par cœur et donc être bon en math revient a avoir une bonne mémoires...

  11. #11
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 614
    Points : 30 626
    Points
    30 626
    Par défaut
    Citation Envoyé par Kannagi Voir le message
    Totalement d'accord , surtout que les cours actuel tend plus a apprendre un langage que l'algorithmie , ce qui est stupide parce que la programmation c'est facile 80% d'algo pour ma part , même en assembleur quand on a compris les rouages du CPU et de la machine cible , ben le reste du boulot c'est de l'algo :p
    A vrai dire, je vais même beaucoup plus loin que cela

    Pour moi, tout langage informatique n'est qu'un ensemble de conventions qui nous permettent d'expliquer ce que l'on veut à quelque chose d'aussi bête qu'un ordinateur.

    Si bien que, dés que nous disposons d'une représentation correcte de la logique à appliquer, il suffit que "quelqu'un ou quelque chose" (pourquoi pas un singe ou carrément un ordinateur) soit en mesure d'appliquer les conventions en question pour rédiger le code.

    Pour moi, l'écriture du code se résume le plus souvent à un "long et fastidieux travail de dactylographie" (même si j'adore cette étape)
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  12. #12
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Le gros problème de ce réinventage de roue, c'est qu'il pond une roue carrée, qui marche en ASCII pur et peut-être dans certains ASCIIs étendus mais est totalement inappropriée pour le cas général.
    La fonction toupper(), elle, marche pour tous les encodages mono-octet, et towupper() couvre le reste (encore que, je me demande comment elle réagit hors du BMP sur des plate-formes WTF-16... Edit: apparemment, elle réagit mal).
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  13. #13
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 614
    Points : 30 626
    Points
    30 626
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Le gros problème de ce réinventage de roue, c'est qu'il pond une roue carrée, qui marche en ASCII pur et peut-être dans certains ASCIIs étendus mais est totalement inappropriée pour le cas général.
    La fonction toupper(), elle, marche pour tous les encodages mono-octet, et towupper() couvre le reste (encore que, je me demande comment elle réagit hors du BMP sur des plate-formes WTF-16... Edit: apparemment, elle réagit mal).
    C'est bel et bien pour cela qu'il me semble important de séparer la partie algorithmie de la partie langage.

    Car, quel que soit l'encodage, une logique qui serait proche de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    pour chaque caractère dans la chaine de caractères
        temp = caractère - 'a' (minuscule)
        temp = caractère + 'A' (majuscule)
        remplacer le caractère original  par temp
    fin pour
    devrait, a priori du moins, fonctionner. A moins (sait-on jamais) qu'il n'existe des encodages dans lesquels les différentes lettre de l'alphabet ne se suivent purement et simplement pas (et, oui, je la pose réellement).

    Cela me paraitrait pour le moins illogique, et je pense donc que c'est très improbable
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  14. #14
    Expert éminent
    Avatar de Pyramidev
    Homme Profil pro
    Développeur
    Inscrit en
    Avril 2016
    Messages
    1 471
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Avril 2016
    Messages : 1 471
    Points : 6 110
    Points
    6 110
    Par défaut
    Citation Envoyé par koala01 Voir le message
    Car, quel que soit l'encodage, une logique qui serait proche de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    pour chaque caractère dans la chaine de caractères
        temp = caractère - 'a' (minuscule)
        temp = caractère + 'A' (majuscule)
        remplacer le caractère original  par temp
    fin pour
    devrait, a priori du moins, fonctionner.
    Ce serait plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Pour chaque caractère dans la chaine de caractères
        Si le caractère est une lettre minuscule
            temp <- caractère - 'a' (minuscule)
            temp <- temp + 'A' (majuscule)
            Remplacer le caractère original par temp.
        FinSi
    FinPour
    A part ça, si on regarde la table des caractères Unicode, l'offset pour passer d'une lettre minuscule à la lettre majuscule correspondante dépend des plages :

  15. #15
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 690
    Points : 30 985
    Points
    30 985
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Le gros problème de ce réinventage de roue, c'est qu'il pond une roue carrée, qui marche en ASCII pur et peut-être dans certains ASCIIs étendus mais est totalement inappropriée pour le cas général.
    La fonction toupper(), elle, marche pour tous les encodages mono-octet
    Oui mais la finalité de ce réinventage de roue (toujours si on se place dans le cadre de l'apprentissage du langage et/ou de l'algorithmique comme l'a bien fait remarquer koala01) n'est pas d'inventer une roue destinée à être utilisée (enfin pas au delà de 15 minutes); mais d'inventer une roue pour apprendre à manipuler les outils de base de conception de roues (ici pointeurs, manipulation de caractères, boucle, condition, fonction, etc.). Il faut bien que les profs trouvent des idées de TP aussi. Déjà que ce n'est pas facile de trouver des trucs un tant soi peu intéressant (et adapté au débutant), si en plus ils doivent trouver des idées de trucs faisables mais n'ayant pas encore été faits... Oserais-tu dire que toi, quand tu débutais, tu n'as jamais écrit un clone de "toupper" ou "tolower" ou "strcpy" ou "strlen" ou strchr" ou toute autre fonction analogue de la librairie standard ? Je sais, dans ce TP (toujours bien entendu si on est dans un TP pour débutant) que cette fonction une fois créee ne sera jamais utilisée parce que son homologue officiel existe déjà et est bien plus performante. Mais sa création (d'elle ou d'une autre analogue parmis celles déjà citées) reste nécessaire. C'est pareil en maths quand on fait redémontrer Pythagore aux élèves du secondaire. Ce n'est certainement pas pour enrichir le monde mathématique qu'on leur fait faire ce travail...

    Citation Envoyé par koala01 Voir le message
    A moins (sait-on jamais) qu'il n'existe des encodages dans lesquels les différentes lettre de l'alphabet ne se suivent purement et simplement pas (et, oui, je la pose réellement).
    En fait, ton algo fonctionne toujours dans ce cas là. Parce qu'il ne s'appuie pas sur l'ordonnancement des lettres de l'alphabet mais sur l'écart (sensé être toujours le même) entre une minuscule et sa majuscule.

    Citation Envoyé par koala01 Voir le message
    Cela me paraitrait pour le moins illogique, et je pense donc que c'est très improbable
    Il faut quand-même essayer de faire confiance à la façon dont sont construits certains fondements de l'informatique... Construire un encodage où l'écart entre 'a' et 'A' diffère de celui qu'il y aurait entre 'b' et 'B' n'apporterait aucun avantage (enfin à priori je n'en vois pas des masses ) et ferait ch... pas mal de monde
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  16. #16
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 614
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 614
    Points : 30 626
    Points
    30 626
    Par défaut
    Citation Envoyé par Sve@r Voir le message
    Il faut quand-même essayer de faire confiance à la façon dont sont construits certains fondements de l'informatique... Construire un encodage où l'écart entre 'a' et 'A' diffère de celui qu'il y aurait entre 'b' et 'B' n'apporterait aucun avantage (enfin à priori je n'en vois pas des masses ) et ferait ch... pas mal de monde
    C'est aussi ce que je me disais
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

Discussions similaires

  1. Conversion d'une chaîne de caractère (UTF-8)
    Par aristide13 dans le forum Android
    Réponses: 2
    Dernier message: 28/05/2014, 01h50
  2. Réponses: 1
    Dernier message: 01/04/2014, 16h42
  3. Conversion d'une chaîne de caractères en quint64
    Par dida_plt dans le forum Débuter
    Réponses: 6
    Dernier message: 14/03/2012, 22h33
  4. Réponses: 6
    Dernier message: 14/02/2007, 20h00
  5. Réponses: 4
    Dernier message: 21/09/2005, 17h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo