COMPRESC, compressez 28 nombres entiers par variable. |
Auteur |
Message |
coc5
Autorisation : Membre
Nb de messages : 891
Inscrit le : Sam 16 Jui 2007, 13:37
|
Posté le : Dim 23 Sep 2007, 15:06
|
|
|
Le début du début d'un programme de stockage... spécial^^
C'est juste pour montrer l'idée, ce programme n'offre pas de réelles possibilités.
LE LIEN ICI
Code | ClrHome
Output(7,1,"Par COC5
Output(8,1,"COMPRESC v0.01 (C)2007"
Input "Liste ?",L1
dim(L1->L
1+int(L/28->dim(L6
1->K
DelVar I
ClrHome
Disp "COMPRESSION
For(J,1,L
Output(4,1+int(15J/L),"==
I+1->I
If I=29:Then
K+1->K
1->I
End
int(L1(J->A
L6(K)+A(I<15)10^(-I)+A(I>14)10^(14-I->L6(K
End
Disp "ENREGISTRER DANS ?
Input "(L2,L3,L4,L5) ",Str2
If Str2="L2
L6->L2
If Str2="L3
L6->L3
If Str2="L4
L6->L4
If Str2="L5
L6->L5
DelVar L1
DelVar L6
ClrHome
|
---------------------- Ne cliquez pas ici ! |
|
|
|
coc5
Autorisation : Membre
Nb de messages : 891
Inscrit le : Sam 16 Jui 2007, 13:37
|
Posté le : Dim 23 Sep 2007, 15:31
|
|
|
Après quelques petites modifs, il fonctionne
j'ai rajouté le lien aussi.
---------------------- Ne cliquez pas ici ! |
|
|
|
unknow
Autorisation : Membre
Nb de messages : 229
Inscrit le : Jeu 12 Oct 2006, 19:30
|
Posté le : Dim 23 Sep 2007, 20:14
|
|
|
c'est quoi??
une sorte de zip?
---------------------- Ta le look coco |
|
|
|
coc5
Autorisation : Membre
Nb de messages : 891
Inscrit le : Sam 16 Jui 2007, 13:37
|
Posté le : Dim 23 Sep 2007, 21:25
|
|
|
En fait, ce programme explique une sorte d'extension à l'idée de Ratuss pour stocker des nombres.
Au lieu de mettre quatorze chiffres après la virgule représentant chacun l'un des nombres de départ, avec cette manière, on en stocke deux fois plus !
vingt-huit quoi
Je suis entrain de faire un démineur qui pourra avoir un quadrillage de 19*11 en utilisant que 100 et quelques octes de liste par exemple
---------------------- Ne cliquez pas ici ! |
|
|
|
Ratuss
Autorisation : Membre
Nb de messages : 1561
Inscrit le : Mer 01 Mar 2006, 20:41
|
Posté le : Lun 24 Sep 2007, 20:41
|
|
|
==> A noter qu'un nombre complexe utilise plus de mémoire qu'un réel.
(mais au final on y gagne quand même)
BUG 4 FOIS
---------------------- --- LISTE DES JEUX POUR TI --- |
|
|
|
webmaster
Autorisation : Administrateur
Nb de messages : 792
Inscrit le : Mer 18 Aoû 2004, 22:13
|
Posté le : Mer 26 Sep 2007, 12:04
|
|
|
Comment ça marche ? Ce prog n'est pas compatible TI-82 (il faut des chaînes de caractères).
@+ Le Webmaster
|
|
|
|
Google_AdSense
|
Publicité
|
|
|
|
|
coc5
Autorisation : Membre
Nb de messages : 891
Inscrit le : Sam 16 Jui 2007, 13:37
|
Posté le : Mer 26 Sep 2007, 16:58
|
|
|
En fait, niveau place, le gain n'est pas énorme, mais en revanche il permet d'avoir 28 chiffres dans une même variable.
(Pour les chaînes, c'est juste pour pouvoir choisir la liste de sauvegarde en fait)
Pour ceux qui se souviennes (si ils l'ont un jour étudié^^) du chapitre de maths sur les nombres complexes, rappelez vous qu'un nombre complexe est composé de :
-Un nombre classique, appelé "Réel" comme ceux que l'on connait, genre 0,146548645464, banal quoi^^
-Et surtout un nombre appelé "imaginaire". C'est en fait un nombre classique comme l'autre, mais facteurs de i. Il n'est pas écrivable autrement car i ne correspond à aucune valeur réelle.
En effet, i² = -1. La calculatrice est donc obligée de stocker le facteur de i comme valeur supplémentaire
Pour mettre un nombre complexe dans une variable, on peut écrire :
Code | :15,15 + 14,92[i][b]i[/b][/i] -> A |
Pour séparer les nombres, il faut utiliser les deux fonctions se trouvant dans [MATH] + [->] + [->] { real( ou imag( }
Code | :imag(A
:_________________14,92
:real(A
:_________________15,15 |
Et on peut même étendre :
Code | :int(imag(A
:_______________14
:100fpart(imag(A
:_______________92
:int(real(A
:_______________15
:100fpart(real(A
:_______________15
|
Les nombres complexs n'existent malheureusement pas sur Ti82 simple
Enfin bref, ça peut ouvrir des possiblités
---------------------- Ne cliquez pas ici ! |
|
|
|