JulioDelphi
Messages postés2226Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention18 novembre 2010
-
12 mars 2008 à 23:05
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 2021
-
14 mars 2008 à 23:18
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
C'est quand même fort voilà qu'on me supprime mon message maintenant !!!!
cs_barbichette
Messages postés220Date d'inscriptionlundi 30 octobre 2000StatutMembreDernière intervention15 juillet 2013 14 mars 2008 à 21:04
non pas que se soit ma source, mais je suis un peu d'accord avec tout le monde (sans vouloir trop prendre partie...).
Vu les fonctions IsCharMachin, les fonctions n'ont strictement aucun intérêt. Je vous l'accorde....
Quand a proposer une fonction qui prend un paramètre, et renvoie un truc, c'est peut-être du niveau débutant et ça donne un exemple de fonction. Mouai... à la rigueur...
Bref, je me sens tomber bien bas dans ce cas là...
Enfin, si vous insistez, je poste une fonction qui calcule le PGCD.... ;-)...
Ces fonctions existent au moins depuis Delphi4 et fonctionnent parfaitement avec les caractères accentués.
Ensuite réinventer la roue ... oui mais pour qu'elle tourne mieux ... si c'est pour revenir à la roue en bois voir en pierre je ne vois pas l'utilité.
Vous êtes entrain de vous extasier sur de simples évaluations booléenne.
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 202113 14 mars 2008 à 13:43
vite Barbichette, fais nous
une belle petite anim dont tu as
le secret avant qu'on te mange en salade !
cs_MAURICIO
Messages postés2106Date d'inscriptionmardi 10 décembre 2002StatutModérateurDernière intervention15 décembre 20145 14 mars 2008 à 10:10
Ouai, un retour aux sources ... comme Neo!
Comme quoi, on revient toujours d' oú l' on est parti:
ça permet de se rendre compte du chemin parcouru.
Moi je suis pour un retour des saucisses d' apéritif: court, simple et que l' on mange même quand on a pas faim!
Caribensila
Messages postés2527Date d'inscriptionjeudi 15 janvier 2004StatutMembreDernière intervention16 octobre 201918 14 mars 2008 à 01:37
Salut,
C'est un bon code pour débutant comme annoncé, avec aussi de très bons commentaires, constructifs.
Et tout cela se fait rare.
Un genre qu'on aimerait voir plus souvent. ;)
PS: A force, on ne va plus oser poster car on se demandera toujours si c'est du trop mou ou du trop consistant...
Perso, je préfère le steak de bavette au steak de foie... Mais je mange aussi la saucisse.
Et tout me profite! lol
cs_cantador
Messages postés4720Date d'inscriptiondimanche 26 février 2006StatutModérateurDernière intervention31 juillet 202113 13 mars 2008 à 21:16
"On va mettre ça sur le compte du mariage qui commence a me ramollir le cerveau..."
"tu nous avais habitué a plus consistant ^^"
Pour moi, il y a bien un souci de résistance..
Cirec qu'en penses-tu ?
cs_MAURICIO
Messages postés2106Date d'inscriptionmardi 10 décembre 2002StatutModérateurDernière intervention15 décembre 20145 13 mars 2008 à 10:11
Je ne trouve pas que ce soit si ininteressant que cela:
n' oublions pas que nous avons beaucoup de débutants, on voit ici comment créer ses fonctions et en plus, l' utilisation d' un type dans la 2ème solution. Ça vaut pas 10/10 mais ça a le mérite de montrer du code simple et efficace.
A+
cs_barbichette
Messages postés220Date d'inscriptionlundi 30 octobre 2000StatutMembreDernière intervention15 juillet 2013 13 mars 2008 à 09:44
Bon, je suis un peu fatigué on va dire...
Je ne sais pas pourquoi, je suis resté bien longtemps en arrière ou ces fonctions et surtout IsCharUpper ne marchaient pas avec les accents...
On va mettre ça sur le compte du mariage qui commence a me ramollir le cerveau...
C'est promis, je vais essayer de me rattraper... ;-)
Euh ...
tu nous avais habitué a plus consistant ^^
Serais-tu passé à côté de ces fonctions ?
( function IsCharUpper(ch: Char): BOOL; )
Majuscule := IsCharUpper(Edit1.Text[1]);
Minuscule := IsCharLower(Edit1.Text[1]);
Numerique := Not IsCharAlpha(Edit1.Text[1]);
Ponctuation := Not IsCharAlphaNumeric(Edit1.Text[1]);
et à mon avis c'est plus rapide que ce que tu fais ;)
cs_barbichette
Messages postés220Date d'inscriptionlundi 30 octobre 2000StatutMembreDernière intervention15 juillet 2013 12 mars 2008 à 23:29
ben si, comme ça :
Type
TCasseType=(Minuscule, Majuscule, Numerique, Ponctuation, Systeme, Espace);
Function CharType(c:char):TCasseType;
var
Lc,Uc:char;
begin
Lc:=ansilowercase(c)[1];
Uc:=ansiUppercase(c)[1];
if c<#31 then result:=Systeme
else
if c=' ' then result:=Espace
else
if c in ['0'..'9'] then result:=Numerique
else
if (c=Lc) and (Lc<>Uc) then result:=Minuscule
else
if (c=Uc) and (Lc<>Uc) then result:=Majuscule
else result:=Ponctuation;
end;
Par contre,
je ne sais pas si il n'y a pas mieux pour faire
Lc:=ansilowercase(c)[1];
Uc:=ansiUppercase(c)[1];
???
Barbichette
JulioDelphi
Messages postés2226Date d'inscriptiondimanche 5 octobre 2003StatutMembreDernière intervention18 novembre 201014 12 mars 2008 à 23:05
Peut-on faire une fonction avec ça qui collerais plus avec le nom de la source :
FonctionMachin('c') donne "minuscule"
FonctionMachin('H') donne "majuscule"
FonctionMachin('6') donne "chiffre"
FonctionMachin('!') donne "ponctuation"
14 mars 2008 à 23:18
14 mars 2008 à 23:07
14 mars 2008 à 21:04
Vu les fonctions IsCharMachin, les fonctions n'ont strictement aucun intérêt. Je vous l'accorde....
Quand a proposer une fonction qui prend un paramètre, et renvoie un truc, c'est peut-être du niveau débutant et ça donne un exemple de fonction. Mouai... à la rigueur...
Bref, je me sens tomber bien bas dans ce cas là...
Enfin, si vous insistez, je poste une fonction qui calcule le PGCD.... ;-)...
Barbichette
14 mars 2008 à 16:19
Ces fonctions existent au moins depuis Delphi4 et fonctionnent parfaitement avec les caractères accentués.
Ensuite réinventer la roue ... oui mais pour qu'elle tourne mieux ... si c'est pour revenir à la roue en bois voir en pierre je ne vois pas l'utilité.
Vous êtes entrain de vous extasier sur de simples évaluations booléenne.
14 mars 2008 à 13:43
une belle petite anim dont tu as
le secret avant qu'on te mange en salade !
14 mars 2008 à 10:10
Comme quoi, on revient toujours d' oú l' on est parti:
ça permet de se rendre compte du chemin parcouru.
Moi je suis pour un retour des saucisses d' apéritif: court, simple et que l' on mange même quand on a pas faim!
14 mars 2008 à 01:37
C'est un bon code pour débutant comme annoncé, avec aussi de très bons commentaires, constructifs.
Et tout cela se fait rare.
Un genre qu'on aimerait voir plus souvent. ;)
PS: A force, on ne va plus oser poster car on se demandera toujours si c'est du trop mou ou du trop consistant...
Perso, je préfère le steak de bavette au steak de foie... Mais je mange aussi la saucisse.
Et tout me profite! lol
13 mars 2008 à 21:16
"tu nous avais habitué a plus consistant ^^"
Pour moi, il y a bien un souci de résistance..
Cirec qu'en penses-tu ?
13 mars 2008 à 10:11
n' oublions pas que nous avons beaucoup de débutants, on voit ici comment créer ses fonctions et en plus, l' utilisation d' un type dans la 2ème solution. Ça vaut pas 10/10 mais ça a le mérite de montrer du code simple et efficace.
A+
13 mars 2008 à 09:44
Je ne sais pas pourquoi, je suis resté bien longtemps en arrière ou ces fonctions et surtout IsCharUpper ne marchaient pas avec les accents...
On va mettre ça sur le compte du mariage qui commence a me ramollir le cerveau...
C'est promis, je vais essayer de me rattraper... ;-)
13 mars 2008 à 00:32
tu nous avais habitué a plus consistant ^^
Serais-tu passé à côté de ces fonctions ?
( function IsCharUpper(ch: Char): BOOL; )
Majuscule := IsCharUpper(Edit1.Text[1]);
Minuscule := IsCharLower(Edit1.Text[1]);
Numerique := Not IsCharAlpha(Edit1.Text[1]);
Ponctuation := Not IsCharAlphaNumeric(Edit1.Text[1]);
et à mon avis c'est plus rapide que ce que tu fais ;)
12 mars 2008 à 23:29
Type
TCasseType=(Minuscule, Majuscule, Numerique, Ponctuation, Systeme, Espace);
Function CharType(c:char):TCasseType;
var
Lc,Uc:char;
begin
Lc:=ansilowercase(c)[1];
Uc:=ansiUppercase(c)[1];
if c<#31 then result:=Systeme
else
if c=' ' then result:=Espace
else
if c in ['0'..'9'] then result:=Numerique
else
if (c=Lc) and (Lc<>Uc) then result:=Minuscule
else
if (c=Uc) and (Lc<>Uc) then result:=Majuscule
else result:=Ponctuation;
end;
Par contre,
je ne sais pas si il n'y a pas mieux pour faire
Lc:=ansilowercase(c)[1];
Uc:=ansiUppercase(c)[1];
???
Barbichette
12 mars 2008 à 23:05
FonctionMachin('c') donne "minuscule"
FonctionMachin('H') donne "majuscule"
FonctionMachin('6') donne "chiffre"
FonctionMachin('!') donne "ponctuation"
?