π
<-

[Mini-Challenge Basic #4] : Combien d'arguments ?

Sous-forums réunissant les mini-challenges en TI-Basic Nspire

Re: [Mini-Challenge Basic #4] : Combien d'arguments ?

Message non lude Levak » 01 Juil 2014, 22:52

Nspirecas a écrit:Non non ton code prend 175 caractères sans les espaces et celui-ci :

Pas avec le code que tu avais posté plus tôt, c'est tout.
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
Avatar de l’utilisateur
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 98.9%
 
Messages: 6414
Images: 22
Inscription: 27 Nov 2008, 00:00
Localisation: 0x1AACC355
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: BAC+5: Epita (ING3)

Re: [Mini-Challenge Basic #4] : Combien d'arguments ?

Message non lude NspireCas » 01 Juil 2014, 22:55

ça ne comptait pas j'avais rajouté le cas où les fonctions n'existent pas dans le classeur (ce que tu n'as pas fait), regarde les lignes en plus :

Code: Tout sélectionner
   Try
      If string(expr(g&"("&i&")"))≠g&"("&i&")" Then
         Disp g&" nécessite au moins "&string(a)&" argument"&when(a>1,"s","")
      Else
         Disp g&" n'existe pas dans ce classeur"
      EndIf
   Else
      Disp g&" n'existe pas dans ce classeur"
   EndTry


Bisam a écrit:Si la chaîne de caractères ne correspond pas au nom d'une fonction ou d'un programme, on affichera un message d'erreur compréhensible.


Bon après tu vas surement réussi à condenser ce code et tu reprendras le dessus :p.
Avatar de l’utilisateur
NspireCasModo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 6.4%
 
Messages: 1304
Images: 7
Inscription: 04 Oct 2012, 20:44
Localisation: Paris
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -

Re: [Mini-Challenge Basic #4] : Combien d'arguments ?

Message non lude Levak » 01 Juil 2014, 22:56

Par contre, tu vas m'expliquer comment fait ton coder pour fonctionner avec des b=0 ou i=1.
;)
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
Avatar de l’utilisateur
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 98.9%
 
Messages: 6414
Images: 22
Inscription: 27 Nov 2008, 00:00
Localisation: 0x1AACC355
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: BAC+5: Epita (ING3)

Re: [Mini-Challenge Basic #4] : Combien d'arguments ?

Message non lude NspireCas » 01 Juil 2014, 23:00

Ah mince :p
En fait j'ai supprimé tous les ':' à cause de ceux de début de ligne et j'ai oublié que ça allait trafiquer les affectations ^^.
Bon ça me fait toujours 161 caractères :D.
Avatar de l’utilisateur
NspireCasModo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 6.4%
 
Messages: 1304
Images: 7
Inscription: 04 Oct 2012, 20:44
Localisation: Paris
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -

Re: [Mini-Challenge Basic #4] : Combien d'arguments ?

Message non lude Levak » 01 Juil 2014, 23:04

Histoire d'honorer ma lignée (sans prélude, 129 caractères dont 4 espaces mandatory) :
Code: Tout sélectionner
Define getnargs(s)=
Prgm
  Local i
  0→i
  s&"("→s
  While true
    Try
      expr(s&")")
      Stop
    Else
      If errCode≠930
        Exit
      s&when(inString(s,"(_")>0,",_","_")→s
      i+1→i
    EndTry
  EndWhile
  Disp i
EndPrgm
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
Avatar de l’utilisateur
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 98.9%
 
Messages: 6414
Images: 22
Inscription: 27 Nov 2008, 00:00
Localisation: 0x1AACC355
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: BAC+5: Epita (ING3)

Re: [Mini-Challenge Basic #4] : Combien d'arguments ?

Message non lude pierrotdu18 » 01 Juil 2014, 23:15

Aïe :p

J'allais dire 133 caractères, mais trop tard ;)

Code: Tout sélectionner
Define getnargs(s)=
Prgm   
  ""→i   
  0→a   
  930→b   
  While b=930       
    0→b       
    Try           
      expr(s&"("&i&")")       
    Else           
      errCode→b           
      a+1→a     
    EndTry         
    i&when(a=1,"_",",_")→i   
  EndWhile   
  Disp a
EndPrgm
Bonjour
Avatar de l’utilisateur
pierrotdu18Premium
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 40.5%
 
Messages: 975
Inscription: 07 Nov 2013, 20:18
Localisation: Paris V
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: MP* Lycée Henri IV

Re: [Mini-Challenge Basic #4] : Combien d'arguments ?

Message non lude pierrotdu18 » 01 Juil 2014, 23:16

Levak a écrit:Histoire d'honorer ma lignée (sans prélude, 129 caractères dont 4 espaces mandatory) :
Code: Tout sélectionner
Define getnargs(s)=
Prgm
  Local i
  0→i
  s&"("→s
  While true
    Try
      expr(s&")")
      Stop
    Else
      If errCode≠930
        Exit
      s&when(inString(s,"(_")>0,",_","_")→s
      i+1→i
    EndTry
  EndWhile
  Disp i
EndPrgm


Déjà, les locals ne sont pas obligatoires dans un programme donc tu économises des caractères ;)
Bonjour
Avatar de l’utilisateur
pierrotdu18Premium
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 40.5%
 
Messages: 975
Inscription: 07 Nov 2013, 20:18
Localisation: Paris V
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: MP* Lycée Henri IV

Re: [Mini-Challenge Basic #4] : Combien d'arguments ?

Message non lude pierrotdu18 » 01 Juil 2014, 23:18

Désolé pour le triple postage, mais je viens de réaliser que Levak avait dit "sans prélude" !

Je descends donc à 104 caractères! ;)

EDIT: 106 pardon, avec les espaces obligatoires ;)


Oups, il y a un problème dans ma fonction, je monte donc à 114 caractères.....

Code: Tout sélectionner
Define getnargs(s)=
Prgm
   ""→i
   0→a
   930→b
   While b=930
      0→b
      Try
          expr(s&"("&i&")")
      Else
          errCode→b
          If b=930
          a+1→a
     EndTry
        i&when(a=1,"_",",_")→i
   EndWhile
   Disp a
EndPrgm
Bonjour
Avatar de l’utilisateur
pierrotdu18Premium
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 40.5%
 
Messages: 975
Inscription: 07 Nov 2013, 20:18
Localisation: Paris V
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: MP* Lycée Henri IV

Re: [Mini-Challenge Basic #4] : Combien d'arguments ?

Message non lude Levak » 01 Juil 2014, 23:47

Bon, bah 100 :
Code: Tout sélectionner
Define getnargs(s)=
Prgm
  0→i
  s&"("→s
  Loop
    Try
      expr(s&")")
      Stop
    Else
      If errCode≠930
        Exit
      s&when(i>0,",_","_")→s
      i+1→i
    EndTry
  EndLoop
  Disp i
EndPrgm
Responsable design/graphique de TI-Planet
I do not get mad at people, I just want them to learn the way I learnt.
ImageTNOC [topic][DL]
nClock [topic][DL]
HideManager [topic][DL]
ZLock [topic][DL]
Theme Editor [topic][DL]
Mes programmes
Avatar de l’utilisateur
LevakAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 98.9%
 
Messages: 6414
Images: 22
Inscription: 27 Nov 2008, 00:00
Localisation: 0x1AACC355
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: BAC+5: Epita (ING3)

Re: [Mini-Challenge Basic #4] : Combien d'arguments ?

Message non lude pierrotdu18 » 01 Juil 2014, 23:49

Oui, je pensais en effet à ça comme améliorations ;)
Pour éviter la ligne avec le inString et éventuellement le true ;)

Par contre, là, il est possible que tu aies définitivement gagné... :p
Bonjour
Avatar de l’utilisateur
pierrotdu18Premium
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 40.5%
 
Messages: 975
Inscription: 07 Nov 2013, 20:18
Localisation: Paris V
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: MP* Lycée Henri IV

PrécédenteSuivante

Retourner vers Mini-Challenges

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 2 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Ndless for CX 4.5.5 / CX II 6.2.0
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
12345
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
3275 utilisateurs:
>3254 invités
>13 membres
>8 robots
Record simultané (sur 6 mois):
32248 utilisateurs (le 01/09/2025)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)