Forum tama's team

cp: ne peut évaluer `brain': Aucun fichier ou dossier de ce type
AccueilPortailGalerieCalendrierFAQRechercherS'enregistrerMembresGroupesConnexion
Connexion
Nom d'utilisateur:
Mot de passe:
Connexion automatique: 
:: Récupérer mon mot de passe
Derniers sujets
» Network, essai 1
par godbod Dim 09 Juil 2017, 02:18

» GODBOD
par godbod Sam 08 Juil 2017, 14:05

» Numbers
par godbod Sam 08 Juil 2017, 13:54

» Mort ?
par godbod Sam 08 Juil 2017, 13:47

» mon humeur
par Ver2guerre Sam 30 Juil 2016, 19:44

» [A voir] Programme de traduction original : WikiTranslate
par AdRiWeB Lun 01 Fév 2016, 04:50

» Reprise ?
par Emyl Jeu 14 Juin 2012, 21:17

» Euh, ah ?
par Ver2guerre Dim 27 Mai 2012, 12:11

» Problème TI 89 Titanium non visible après mise à jour
par abdoukid Mer 23 Mai 2012, 13:37

» Y'a quelqu'un ?
par Ver2guerre Sam 21 Avr 2012, 23:10

Quick message
Qui est en ligne ?
Il y a en tout 1 utilisateur en ligne :: 0 Enregistré, 0 Invisible et 1 Invité

Aucun

Le record du nombre d'utilisateurs en ligne est de 367 le Dim 18 Oct 2009, 00:16

Partagez | 
 

 [ALL] Return

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
tama
Admin
Admin
avatar

Nombre de messages : 12375
Age : 26
Localisation : DTC ? :triso:
Humeur : =)
items : o
Personalized field : huh ? oO
Réputation : 3
Points : 7087
Date d'inscription : 08/08/2007

Profil
TI: 84+, 89 tita, 89 tita
TO: infini :p
Spécialité: C 68k

MessageSujet: [ALL] Return   Mar 30 Déc 2008, 02:11

P'tit jeu tout simple :
Le but du jeu est simplement de deviner ce que va retourner le programme, dans un cas simple :

0->A
If A=0
Then
0
Else
1
End
Ans

(oui je sais c'est optimisable, mais là n'est pas le sujet ...)

ou dans un cas particulier

0
Repeat Ans
getKey
End
Ans


Q : que va t-il retourner si j'appuie sur [Clear] ?
R : 45


Je rappelle que ce que je considère comme "étant retourné" est ce qui s'affiche en dernier, éventuellement suivi du "Done"
Un programme peut ainsi, selon cette définition, ne rien retourner si rien ne s'affiche (il est alors inutile d'aller chercher la valeur de Ans ...) ou s'il y a une erreur
Il est bien sûr possible de tester sur TI, mais il vaut mieux éviter quand c'est possible pour plus de "fun" :p


Vala, alors on commence par un truc simple :

"1ER CODE .... C'EST PAS MARRANT ?->Str0
length(Str0->Z
For(A,1,Z
For(B,A+1,Z
If sub(Str0,A,1) = sub(Str0,B,1)
Then
Disp {A,B
Stop
End
End
End


Q : Que va retourner ce code ?


EDIT : et au passage, on peut en faire un petit défi de ce code : une fois le but de ce code trouvé, l'optimiser : celui-là tient en 105 octets.

_________________


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Syfo
Pokémophile
Pokémophile
avatar

Nombre de messages : 1978
Age : 26
Localisation : IYA
items : p://img364.imageshack.us/img364/6382/ti84plusdm0.png" border="0" alt="" />

Personalized field : 26 jetons
Réputation : 8
Points : 4410
Date d'inscription : 09/08/2007

Profil
TI: 80, 82, 83, 83+, 84+
TO: 2 945 [GAIN * 1.1]
Spécialité: Basic z80

MessageSujet: Re: [ALL] Return   Mar 30 Déc 2008, 13:28

Ce code va retourner {2,8}, soit le premier e qui est en seconde position et le second qui est en huitieme position.


Code:

"1ER CODE .... C'EST PAS MARRANT ?->Str0
length(Str0->Z
For(A,1,Z
For(B,A+1,Z
If sub(Str0,A,1) = sub(Str0,B,1                  //une parenthèse fermante en moins xD
Return {A,B                //suppression du stop et donc d'un then/end
End
End

J'vois pas des masses d'optimisations par conte.

_________________
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Ver2guerre
chasseur en chef
chasseur en chef
avatar

Nombre de messages : 3139
Age : 107
Localisation : Partout en même temps (V2g quantique)
Loisirs : #pkill boulet
Humeur : Happy :)
items :
Personalized field : 12 jetons
Réputation : 8
Points : 5171
Date d'inscription : 15/09/2007

Profil
TI: (TI-89Tita)^2+TI83Plus
TO: 50 [2380 - 2%] {54}
Spécialité: Autres

MessageSujet: Re: [ALL] Return   Mar 30 Déc 2008, 14:05

J'adore l'heure de ton message tama Very Happy

_________________
Help, j'ai rien compris

C'est moche :
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
tama
Admin
Admin
avatar

Nombre de messages : 12375
Age : 26
Localisation : DTC ? :triso:
Humeur : =)
items : o
Personalized field : huh ? oO
Réputation : 3
Points : 7087
Date d'inscription : 08/08/2007

Profil
TI: 84+, 89 tita, 89 tita
TO: infini :p
Spécialité: C 68k

MessageSujet: Re: [ALL] Return   Mar 30 Déc 2008, 14:35

0:11 ? et alors ? =p
ça va peut-être être pire demain :p

Syfo> Ca marche pas le "Return {A,B" sur z80 ?
Sinon y a une optimisation assez bizarre en vitesse (vue sur TIBD gérée par les membres de UTI), si tu enlèves une parenthèse au for( dans une boucle, certaines instructions comme DS>( seront plus lentes à l'exécution ... bizarre

Euh, bonne réponse sinon, tu peux décider de prendre la main (proposer un code) ou la laisser :p

_________________


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Baruch
OPTIMIZATOR
OPTIMIZATOR
avatar

Nombre de messages : 193
Age : 26
items :
Personalized field :
Réputation : 0
Points : 3507
Date d'inscription : 07/08/2008

Profil
TI: 83+
TO: 200
Spécialité: Basic z80

MessageSujet: Re: [ALL] Return   Mar 30 Déc 2008, 15:13

On peut optimiser en vitesse en calculant le 1er sub avant la 2e boucle.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Syfo
Pokémophile
Pokémophile
avatar

Nombre de messages : 1978
Age : 26
Localisation : IYA
items : p://img364.imageshack.us/img364/6382/ti84plusdm0.png" border="0" alt="" />

Personalized field : 26 jetons
Réputation : 8
Points : 4410
Date d'inscription : 09/08/2007

Profil
TI: 80, 82, 83, 83+, 84+
TO: 2 945 [GAIN * 1.1]
Spécialité: Basic z80

MessageSujet: Re: [ALL] Return   Mar 30 Déc 2008, 15:18

Spa faux. C'est meme plutot juste. Je laisse la main.

_________________
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
tama
Admin
Admin
avatar

Nombre de messages : 12375
Age : 26
Localisation : DTC ? :triso:
Humeur : =)
items : o
Personalized field : huh ? oO
Réputation : 3
Points : 7087
Date d'inscription : 08/08/2007

Profil
TI: 84+, 89 tita, 89 tita
TO: infini :p
Spécialité: C 68k

MessageSujet: Re: [ALL] Return   Mar 30 Déc 2008, 16:28

Bon, très bien :p


0->A
290->B
Repeat A>B
A+19->A
B+11->B
End
Disp {A,B


Q : Une bête inéquation à résoudre, que va retourner ce code ?

_________________


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
godbod
membre
membre
avatar

Nombre de messages : 67
Age : 29
items : o
Personalized field :
Réputation : 0
Points : 3369
Date d'inscription : 23/12/2008

Profil
TI: 89 titanium
TO: 200
Spécialité: C 68k

MessageSujet: Re: [ALL] Return   Mar 30 Déc 2008, 16:35

Je ne programme plus sur z80 mais je crois que ça donnera :
2 et 290
Plus qu'on ne pourra pas entrer dans la boucle Repeat Rolling Eyes
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
tama
Admin
Admin
avatar

Nombre de messages : 12375
Age : 26
Localisation : DTC ? :triso:
Humeur : =)
items : o
Personalized field : huh ? oO
Réputation : 3
Points : 7087
Date d'inscription : 08/08/2007

Profil
TI: 84+, 89 tita, 89 tita
TO: infini :p
Spécialité: C 68k

MessageSujet: Re: [ALL] Return   Mar 30 Déc 2008, 17:51

hmm non parce que c'est Repeat, pas While ...

_________________


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
godbod
membre
membre
avatar

Nombre de messages : 67
Age : 29
items : o
Personalized field :
Réputation : 0
Points : 3369
Date d'inscription : 23/12/2008

Profil
TI: 89 titanium
TO: 200
Spécialité: C 68k

MessageSujet: Re: [ALL] Return   Mar 30 Déc 2008, 18:26

pfffffff la syntaxe m'embrouille, ... je ferais mieux de ne pas m'embrouiller avec ça ...
Cool
Code:

#include <tigcclib.h>
void _main(void){
int A=0;
int B=290;
do{
    A=A+19;
    B=B+11;
}while(A>B);
printf(" A= %d and B=%d",A,B);
}
A=19 and B=301
Les gars excusez moi pour le 68k en plein z80 ...
Citation :
Qui peut le plus ne peut pas toujours le moins
Si le C n'est plus lisible de le BASIC quelques fois ...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
tama
Admin
Admin
avatar

Nombre de messages : 12375
Age : 26
Localisation : DTC ? :triso:
Humeur : =)
items : o
Personalized field : huh ? oO
Réputation : 3
Points : 7087
Date d'inscription : 08/08/2007

Profil
TI: 84+, 89 tita, 89 tita
TO: infini :p
Spécialité: C 68k

MessageSujet: Re: [ALL] Return   Mar 30 Déc 2008, 20:25

euh non tu t'es trompé dans le code, c'est pas while(A>B), c'est while(A<B)
c'est bizarre mais en quelque sorte Repeat condition revient à dire While not(condition)

Ci-dessous un long blabla sur la différence While/Repeat, mis en spoiler parce que .... j'ai envie :p
Spoiler:
 

Bref, retour au sujet, il faut prendre exactement le même code mais remplacer le > par < dans la boucle do...while

Vala vala :)

_________________


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
godbod
membre
membre
avatar

Nombre de messages : 67
Age : 29
items : o
Personalized field :
Réputation : 0
Points : 3369
Date d'inscription : 23/12/2008

Profil
TI: 89 titanium
TO: 200
Spécialité: C 68k

MessageSujet: Re: [ALL] Return   Mer 31 Déc 2008, 09:19

Je décroche ... tripaf
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
tama
Admin
Admin
avatar

Nombre de messages : 12375
Age : 26
Localisation : DTC ? :triso:
Humeur : =)
items : o
Personalized field : huh ? oO
Réputation : 3
Points : 7087
Date d'inscription : 08/08/2007

Profil
TI: 84+, 89 tita, 89 tita
TO: infini :p
Spécialité: C 68k

MessageSujet: Re: [ALL] Return   Mer 31 Déc 2008, 14:25

Bah euh .... j't'ai presque donné la solution oO

dans le code C que tu as mis, tu as juste à remplacer le "while(A>B)" par "while(A

_________________


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
godbod
membre
membre
avatar

Nombre de messages : 67
Age : 29
items : o
Personalized field :
Réputation : 0
Points : 3369
Date d'inscription : 23/12/2008

Profil
TI: 89 titanium
TO: 200
Spécialité: C 68k

MessageSujet: Re: [ALL] Return   Mer 31 Déc 2008, 14:59

Oui oui je t'ai bien compris bien sur ^^ tienkiet
Nan en fait le problème c'est que je trouve la syntaxe du TI BASIC trop rudimentaire. Bon mais merci quand meme.
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
tama
Admin
Admin
avatar

Nombre de messages : 12375
Age : 26
Localisation : DTC ? :triso:
Humeur : =)
items : o
Personalized field : huh ? oO
Réputation : 3
Points : 7087
Date d'inscription : 08/08/2007

Profil
TI: 84+, 89 tita, 89 tita
TO: infini :p
Spécialité: C 68k

MessageSujet: Re: [ALL] Return   Mer 31 Déc 2008, 16:27

ehh la fin n'est pas passée dans mon message .... stupide balise
note: penser à mettre un espace après le < sinon il va interpéter comme une balise html

Bon bref, et le résultat alors ça donne quoi ?

_________________


Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Contenu sponsorisé




MessageSujet: Re: [ALL] Return   

Revenir en haut Aller en bas
 

[ALL] Return

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum tama's team :: TI :: Défis-
Créer un forum | © phpBB | Forum gratuit d'entraide | Contact | Signaler un abus | Forum gratuit