Quel est le nombre de valeurs contenant un chiffre dans mon taleaux ?
LucasGrandviergne
Messages postés
13
Date d'inscription
Statut
Membre
Dernière intervention
-
khrug -
khrug -
Hello la communauté !
Je suis bloqué sur cet exercice où il m'est demandé d'afficher le nombre de valeur de ce tableau comportant un chiffre mais je n'y arrive pas. Je suis débutant pouvez vous m'aider svp ? Merci d'avance.
Voici mon code :
Je suis bloqué sur cet exercice où il m'est demandé d'afficher le nombre de valeur de ce tableau comportant un chiffre mais je n'y arrive pas. Je suis débutant pouvez vous m'aider svp ? Merci d'avance.
Voici mon code :
array = ["@jcunniet","@PaulLampon","@Aziliz31","@ssoumier","@marionsouzeau","@gaellombart","@bendarag","@AurelieLebelle","@julienduffe","@thomaspoupeau","@LilyRossignol","@ClairGuedon","@stephanieauguy","@claw_prolongeau","@_JulieMenard","@LColcomb","@Zlauwereys","@MeLonguet","@DorotheeLN","@NolwennCosson","@ADaboval","@Remibaldy","@bderveaux","@amandechap","@ELODIESOULIE","@nbongarcon","@HeloAb","@Panamorama","@gregplou","@BenoitBerthe","@LauraBruneau89","@Anthony_Lieures","@Sharonwaj","@mcsonkin","@pverduzier","@emiliel3","@Julien_MARION","@SophiFay","@bdelombre","@annalecerf","@AdriaBudry","@DejNikolic","@iJaffre","@CyrusleVirus","@GPardigon","@e_vallerey","@IsabelleSouquet","@AudeDavidRossi","@Yoann_Pa","@CeliaPenavaire","@perraultvincent","@cboulate","@JustineWeyl","@Paulinejacot","@juliechab","@aslechevallier","@phnou","@Seb_Pommier","@Alex_Bensaid","@GuillaumeGaven","@annelaurechouin","@Oliviader","@guerricp","@JMMarchaut","@cyceron","@gregory_raymond","@vhunsinger","@l_peillon","@fannyguinochet","@EAssayag","@KibweAdom","@YvonHerry","@JohanGarciajg","@saidlabidi","@lauranneprov","@LeaDavy","@francois_remy","@CGuicheteau","@FloMaillet","@m_perroud","@oBrunet_TSMF","@MoonVdc","@jc2taille","@NellyMoussu","@VirginK","@b_misa","@FabriceCouste","@barbara_prose","@lelia2m","@brunoaskenazi","@laurenechamp","@ysisbox","@juliengagliardi","@PierreLel","@kdeniau","@_TerraInc","@DominicArpin","@antoinfonteneau","@nanotousch","@jb_roch","@YaniKhezzar","@Anne_Bechet","@NCapart","@SamyBenNaceur","@Joumany","@Julietteraynal","@TGiraudet","@SaraTanit","@HappeFrederic","@antoinellorca","@michelpicot","@Sev_Ryne","@bobdobolino","@murdever","@YGrandmontagne","@Mnyo","@EdKOSCIANSKI","@tnoisette","@jankari","@delbello_rom","@rflechaux","@NadiaSorelli","@IT_Digital","@abarbaux","@PhilippeLeroy","@schaptal","@marionspee","@lisavignoli","@ChloeAeberhardt","@MartineJacot","@JuliaPascualita","@curieusedetout","@sgraveleau","@bif_o","@ElisaPineau","@zinebdryef","@apiquard","@pierrehaski","@StephanieDelmas","@Blandine_Garot","@vergara_i","@evan_lebastard","@SophieVclt","@OlivierLevrault","@alicedorgeval","@LouiseMalnoy","@alix_fx","@pierre_baudis","@LucMagoutier","@AgatheMuller","@SGianninelli","@PaulineBoyer33","@NaomiHalll","@romaindlx","@marionbr","@Burtschy","@JacobEtienne","@as_lizzani","@marie_simon","@LaureDaussy","@FabriceAmedeo","@LoubnaChlaikhy","@PlummerWilliam","@OlivierMarin1","@alaurefremont","@mwesfreid","@ChBaDe","@pmathon","@theobaldmarie","@Lnpagesy","@marclandre","@paoliniesther","@Feertchak","@JBLitzler","@GuillaumeErrard","@quentinperinel","@TristanQM","@mlbo","@constancejamet","@LoraTerrazas","@emiliegeffray","@Mathilde_Sd","@CaroPiquet","@DCanivez","@TIM_7375","@blandinelc","@ivanrioufol","@arthurberdah","@SarahLecoeuvre","@guillaume_gui","@DamienMercereau","@W_Chloe","@Assma_MD","@EugenieBastie","@HiTech_lexpress","@bcondominas","@Laurie_Z_","@jeanfrancgerard","@MathieuPagura","@BGUYF","@AlainPiffaretti","@AudreyKucinskas","@julienhory","@Pierrefalga","@TiphThuillier","@cdaniez","@LigerBaptiste","@D_Peras","@julie_dlb","@Fatiha_Temmouri","@julian2lamancha","@GaetaneDeljurie","@JulianMattei","@M_Vicuna","@DeBruynOlivier","@Nehed_Jendoubi","@antoine_grenapi","@ColonnaGen","@VictoriaGairin","@Clement_Lacombe","@TVigoureux","@MargauxObriot","@solinedelos","@RocheSabine","@dangerkens","@EdouardDutour","@MDondeyne","@DupuisNathalie1","@bouscarel","@Mathieu2jean","@Sophie_T_J","@laurentcalixte","@patrockwilliams","@PascaleKremer","@AlexJaquin","@LauraIsaaz","@cath_robin","@Del_Gautherin","@Isaduriez","@lucietuile","@AugeyBastien","@mcastagnet","@AminaKalache","@mvaudano","@CParrot","@ombelinetips","@_JoinLion","@BarbolosiRose","@ToiBruno1","@FloraClodic","@xjbdx","@AlexiaEy","@Emjy_STARK","@elcoco01","@rabilebon","@pflovens_","@FabriceFrossard","@MorganeSERRES","@MarjolaineKoch","@edgarsnow","@SRNLF","@CChassigneux","@KerinecMoran","@NassiraELM","@NewsRicard","@Sandreene","@Emilezrt","@Pierre_Do","@Micode","@CColumelli","@DavidAbiker","@ClementBergantz","@benjaminrabier","@celinekallmann","@edwyplenel","@C_Barbier","@JJBourdin_RMC","@LaurenceFerrari","@aslapix","@IsaMillet","@MaximeSwitek","@tomjoubert","@jszanchi","@roqueeva","@XavierBiseul","@florencesantrot","@AntoineCrochet","@freeman59","@MaudeML","@philippe_gulpi","@mathieum76","@kiouari","@imanemoustakir","@BenedicteMallet","@Emilie_Brouze","@antoinebarret","@_nicolasbocquet","@remibuhagiar","@CourretB","@AymericRobert","@miraelmartins","@pmaniere","@jesuisraphk","@David_Ingram","@pcelerier","@technomedia","@Geraldinedauver","@ThierryLabro","@Newsdusud","@nrauline","@gbregeras","@SCouasnonBFM","@actualites_nrv","@dimitrimoulins","@oli_aura","@FabieChiche","@Vincent_Raimblt","@ChristophGreuet","@PAlbuchay","@MarrauddesGrot","@vtalmon","@cedric","@olivierfrigara","@Julien_Jay","@LydiaBerroyer","@Shuua","@datisdaz","@Steuph","@ameliecharnay","@Bruno_LesNums","@LelloucheNico","@CciliaDiQuinzio","@Elodie_C","@SylvRolland","@Kocobe","@FL_Debes","@jdupontcalbo","@GarciaVictor_","@NicoRichaud","@RHoueix","@simottel","@DamienLicata","@annabelle_L","@Lea_Lejeune","@axel_deb","@marin_eben","@ptiberry","@MatthieuDelach","@sandrinecassini","@benjaminferran","@ppgarcia75","@NotPatrick","@ivalerio","@FabienneSchmitt","@alexgoude","@JeromeColombain","@manhack","@Capucine_Cousin","@Fsorel","@oliviertesquet","@marjoriepaillon","@ginades","@PierreTran","@DelphineCuny","@reesmarc","@lauratenoudji","@ldupin","@carolinedescham","@Lucile_Quillet","@cgabizon","@Allocab","@epenser","@JAGventeprivee","@frwrds","@Laure__Bourdon","@Xavier75","@maximeverner","@s_jourdain","@LoriHelloc"] count = 0 array.each { |handle| if handle <= 9 then count += 1 puts handle end }
A voir également:
- Quel est le nombre de valeurs contenant un chiffre dans mon taleaux ?
- Excel trier par ordre croissant chiffre - Guide
- Clavier iphone chiffre et lettre - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Nombre de jours entre deux dates excel - Guide
- Chiffre en lettre - Télécharger - Outils professionnels
1 réponse
Bonjour.
Dans ton code, tu compares un String et un entier, il faut donc utiliser '9' et non 9.
De plus, tu compares une chaîne composée de plusieurs caractères avec un seul caractère, donc ça ne pourra jamais retourner quelque chose de correct.
Sinon, pour faire de simples tests, inutiles de travailler sur un array si grand, deux simples valeurs suffisent.
La méthode la plus basique serait de faire.
On peut faire autrement en utilisant un array des chiffres, et utiliser la méthode include? d'Array.
On peut faire bien plus simple avec une expression régulière basique.
Une autre méthode qui je pense doit être bien plus lente est de soustraire l'array des chiffres à celui de la chaîne transformée en Array, et de comparer si le résultat est toujours identique à celui de l'array de la chaîne.
Il te reste désormais à implémenter ton compteur, cela ne devrait pas te poser beaucoup de problèmes.
Dans ton code, tu compares un String et un entier, il faut donc utiliser '9' et non 9.
De plus, tu compares une chaîne composée de plusieurs caractères avec un seul caractère, donc ça ne pourra jamais retourner quelque chose de correct.
Sinon, pour faire de simples tests, inutiles de travailler sur un array si grand, deux simples valeurs suffisent.
array = ['toto', 'toto45',]
La méthode la plus basique serait de faire.
# Pour chaque élément de l'array array.each{|el| digit = false # Pour chaque caractère de l'élément el.each_char{|char| if char >= '0' and char <= '9' # il y a un chiffre digit = true # On cesse le parcours puisqu'on sait que l'élément contient un chiffre break end } puts "#{el}, #{digit}" }
On peut faire autrement en utilisant un array des chiffres, et utiliser la méthode include? d'Array.
# La syntaxe ('0'..'9') est un Range nums = ('0'..'9').to_a array.each{|el| digit = false el.each_char{|char| if nums.include? char digit = true break end } puts "#{el}, #{digit}" }
On peut faire bien plus simple avec une expression régulière basique.
array.each{|el| digit = el.match('[0-9]') != nil puts "#{el}, #{digit}" }
Une autre méthode qui je pense doit être bien plus lente est de soustraire l'array des chiffres à celui de la chaîne transformée en Array, et de comparer si le résultat est toujours identique à celui de l'array de la chaîne.
nums = ('0'..'9').to_a array.each{|el| # Conversion du String en Array de ses caractères chars = el.chars digit = chars - nums != chars puts "#{el}, #{digit}" }
Il te reste désormais à implémenter ton compteur, cela ne devrait pas te poser beaucoup de problèmes.