| Petite animation Forum | |
|
|
Auteur | Message |
---|
Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Petite animation Forum Sam 17 Oct 2020 - 12:50 | |
| Bonjour à tous !
Je vous propose un petit exercice :
Créer un petit source de quelques lignes qui permet d’afficher un nombre entier positif (un entier naturel) dont les milliers seront séparés par des points.
Exemple : le nombre 4548769 doit s’afficher 4.548.769
Le source peut être avec ou sans sub, avec ou sans fnc, c’est comme vous le sentez !
Euh... Ne regardez pas sur Internet ou dans l'historique des messages du forum !
A vos claviers !
| |
|
| |
Oscaribout
Nombre de messages : 471 Date d'inscription : 29/12/2016
| Sujet: Re: Petite animation Forum Sam 17 Oct 2020 - 16:14 | |
| Bonjour Marc - coucou:
- Code:
-
decoupe_nb("12345678") end sub decoupe_nb(var$) dim_local b$,w% ,k$ while var$ <> "" w% = mod(len(var$),3) if w% > 0 b$ = left$(var$,w%): var$ = right_pos$(var$,w%+1) else b$ = left$(var$,3) : var$ = right_pos$(var$,4) end_if : k$ = k$ + b$ : if var$ <> "" then k$=k$ +"." end_while message k$ end_sub
Bon soirée Edit j'avais mis à hide pour laisser les membres à proposer leur code.
Dernière édition par Oscaribout le Sam 17 Oct 2020 - 18:21, édité 1 fois | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Petite animation Forum Sam 17 Oct 2020 - 16:49 | |
| Quand j’étais en première année Panoramic, j’ai posté un code Nombre_En_Lettres.basQui contient une sub pour aérer l’affichage d’un nombre en intercalant des espaces entre les différentes tranches de 3 chiffres de ce nombre. Depuis les choses on évolué. On peut transformer la SUB en FNC. On peut choisir comme séparateur soit l’espace, soit le point soit la virgule ou même un autre caractère insolite ! | |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Petite animation Forum Sam 17 Oct 2020 - 17:03 | |
| Vieux problème, moi j'ai ça dans mes archives de subs: - Code:
-
DIM a$: a$ = STR$(4548769) Milliers(a$,"."): message clipboard_string_paste$ TERMINATE
SUB Milliers(a$,sep$) ' Insertion de séparateurs de milliers sep$ dans la chaîne alphanumérique a$ ' sep$ = " " ou ".". Résultat dans le clipboard. DIM_LOCAL i: i = 3 WHILE LEN(a$)>i: a$=LEFT$(a$,LEN(a$)-i)+sep$+RIGHT$(a$,i): i=i+4: END_WHILE CLIPBOARD_STRING_COPY a$ END_SUB | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Petite animation Forum Sam 17 Oct 2020 - 17:49 | |
| Voici la SUB de JL35 transformée en FNC - Code:
-
rem ============================================================================ rem Fonction de formatage d’un nombre passé comme paramètres sous forme rem chaine de caractères, le deuxième parametre représente le caractère rem de séparation (espace, point, virgule ou ce que vous voulez) rem ============================================================================
font_name 0,"arial black" : font_size 0,14 ' Exemples d'appel print Format$("123456789987654321",".") : print print Format$("123456789987654321"," ") : print print Format$("1230",".") : print print Format$("123456789",",") : print print Format$("123456789",chr$(32)) : print print Format$("123456789000",chr$(46))
end rem ============================================================================ FNC Format$(nombre$,separateur$) dim_local p if len(nombre$) > 3 p = 3 repeat nombre$ = left$(nombre$,len(nombre$)-p) + separateur$ + right$(nombre$,p) p = p + 4 until len(nombre$) <= p end_if result nombre$ END_FNC rem ============================================================================
| |
|
| |
Minibug
Nombre de messages : 4570 Age : 58 Localisation : Vienne (86) Date d'inscription : 09/02/2012
| Sujet: Re: Petite animation Forum Sam 17 Oct 2020 - 18:57 | |
| Bonsoir tous le monde ! Ben un peu tard pour répondre. Trop pris aujourd'hui... J'avais dans l'idée un code à la façon de JL35 avec une boucle et l'insertion d'un caractère tous les 3 chiffres. Bravo a vous et à bientôt... | |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Re: Petite animation Forum Sam 17 Oct 2020 - 19:26 | |
| Ouaaah, facile, l'exercice. Bon, je dis ça, je n'ai pas essayé... mais bon... Désolé de ne pas avoir pris le temps de le faire, mais je vais sortir un nouveau jeu, sans doute dès demain. Alors je suis très occupé... | |
|
| |
Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: Petite animation Forum Sam 17 Oct 2020 - 23:06 | |
| Bonsoir à tous ! Merci à Oscaribout, Papydall, JL35, Minibug et JJn4 pour votre participation. C’est sympa ! Je vous livre mon code que j’ai fait ce matin : - Code:
-
fnc nombre$(a%) dim_local nb$, i%, modulo% nb$ = str$(a%) modulo% = mod(len(nb$),3) i% = modulo% while i% < len(nb$) nb$=left$(nb$,i%)+"."+right$(nb$,len(nb$)-i%) i% = i% + 4 end_while if left$(nb$,1) = "." nb$ = right$(nb$,len(nb$)-1) end_if result nb$
end_fnc
Je préfère vos solutions qui sont plus simples et tout aussi efficace ! - JJN4 a écrit:
- je vais sortir un nouveau jeu, sans doute dès demain.
Chouette ! On va guetter la sortie du jeu ! Merci pour le scoop ! Que votre participation soit active ou passive, merci encore d'avoir participé ! Bon week-end à tous ! | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Petite animation Forum Dim 18 Oct 2020 - 0:07 | |
| L’essentiel de ce post c’est d’avoir sorti tout ce beau monde du silence radio qui règne sur le forum. Je pense que beaucoup de panoramiciens ont joué à ce jeu, mais ils n’ont pas cru utile de poster leur code. Ce n’est ni un concours ni un test pour voir qui est le meilleur. Il n’y a pas de meilleur. On est tous meilleur ! J’aurais apprécié que d’autres membres de la communauté aient participé à cet exercice.
| |
|
| |
jjn4
Nombre de messages : 2747 Date d'inscription : 13/09/2009
| Sujet: Re: Petite animation Forum Dim 18 Oct 2020 - 14:59 | |
| - Papydall a écrit:
- Ce n’est ni un concours ni un test pour voir qui est le meilleur.
Il n’y a pas de meilleur. On est tous meilleur Tout à fait, j'adhère ++ aux paroles du sage Papydall ! | |
|
| |
silverman
Nombre de messages : 970 Age : 52 Localisation : Picardie Date d'inscription : 18/03/2015
| Sujet: Re: Petite animation Forum Mer 21 Oct 2020 - 12:51 | |
| Bonjour à tous! Un peu tard pour participer, mais il y a une fonction qui est bien pratique pour faire ça. J'ai repris le code de JL35 amélioré par papydall et y aie placé INSERT$: - Code:
-
rem ============================================================================ rem Fonction de formatage d’un nombre passé comme paramètres sous forme rem chaine de caractères, le deuxième parametre représente le caractère rem de séparation (espace, point, virgule ou ce que vous voulez) rem ============================================================================
font_name 0,"arial black" : font_size 0,14 ' Exemples d'appel print Format$("123456789987654321",".") : print print Format$("123456789987654321"," ") : print print Format$("1230",".") : print print Format$("123456789",",") : print print Format$("123456789",chr$(32)) : print print Format$("123456789000",chr$(46))
end rem ============================================================================ FNC Format$(nombre$,separateur$) dim_local p p=len(nombre$)+1 while p>4 p=p-3 nombre$=insert$(nombre$,separateur$,p) end_while result nombre$ END_FNC rem ============================================================================ | |
|
| |
Marc
Nombre de messages : 2466 Age : 63 Localisation : TOURS (37) Date d'inscription : 17/03/2014
| Sujet: Re: Petite animation Forum Mer 21 Oct 2020 - 14:04 | |
| Ah oui, Silverman ! Bien vu ! Bravo !
Merci pour ton intervention !
| |
|
| |
JL35
Nombre de messages : 7112 Localisation : 77 Date d'inscription : 29/11/2007
| Sujet: Re: Petite animation Forum Mer 21 Oct 2020 - 14:10 | |
| Chapeau silverman, belle simplicité. | |
|
| |
papydall
Nombre de messages : 7017 Age : 74 Localisation : Moknine (Tunisie) Entre la chaise et le clavier Date d'inscription : 03/03/2012
| Sujet: Re: Petite animation Forum Mer 21 Oct 2020 - 18:30 | |
| J’ai toujours dit et je le répète : tout échange d’idées, tout bavardage sur le forum ne peut être que bénéfique pour tout le monde. Merci Silverman ! Ça s’appelle la concision, la simplicité et l’élégance du codage. | |
|
| |
Contenu sponsorisé
| Sujet: Re: Petite animation Forum | |
| |
|
| |
| Petite animation Forum | |
|