| Troncature | |
|
|
Auteur | Message |
---|
SPLN Utilisateur confirmé: Rang ***
Messages : 588 Localisation : Sur son ordinateur *vous vois* arrêtez de me regarder comme ça Projet Actuel : En quête de projet(s)!
Mes projets:
SP Lecteur Multimedia (Stand by)
S-Portable Graphics (demo1.8 is out! demo2.0 is planned)
SSB RPG (Stand by)
| Sujet: Troncature Ven 30 Juil 2010 - 21:11 | |
| J'ai cherché et je n'est pas trouver donc je pose ici un script qui permet de faire la troncature d'un nombre. Troncature à l'unité: - Citation :
- SPLN a écrit:
var a, b; a = real(argument0) b = a - frac(a)
return real(b) - onilink_ a écrit:
return floor(abs(argument0))*sign(argument0) Troncature multiple: - Code:
-
var a,b,c; a = argument0; //Nb a tronquer b = argument1; // Tronquature à c = a - frac(a*power(10,b))/power(10,b)
return c; C'est simple, mais efficace! Exemple: tronc(97.4) = 97
Dernière édition par SPLN le Ven 30 Juil 2010 - 23:40, édité 3 fois |
|
| |
M@d_Doc Modérateur
Messages : 6600 Localisation : 47°44'8.04 Projet Actuel : aucun
| Sujet: Re: Troncature Ven 30 Juil 2010 - 21:13 | |
| floor
_________________ Tous les icones de gm utilisables sur le cbna ICI |
|
| |
nicoulas *Excellent utilisateur*
Messages : 6030 Localisation : Dordogne Projet Actuel : Croustaface Tower Defense
| Sujet: Re: Troncature Ven 30 Juil 2010 - 21:17 | |
| Lol ouais floor(); Puis sinon la ligne b = 0; sert à rien. (et aussi c'est pas optimisé et tu utilise au moins un real() pour rien) |
|
| |
Wargamer *Excellent utilisateur*
Messages : 6938 Projet Actuel : Bataille de cake au fruits
| Sujet: Re: Troncature Ven 30 Juil 2010 - 21:31 | |
| floor != troncate :honte: floor arrondi au chiffre le plus bas si t'a -4.3 ca te donne -5 au lieu de -4 _________________ Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: Troncature Ven 30 Juil 2010 - 22:26 | |
| troncature = arrondi au nombre entier le plus pres non ? si c'est le cas, c'est round() |
|
| |
SPLN Utilisateur confirmé: Rang ***
Messages : 588 Localisation : Sur son ordinateur *vous vois* arrêtez de me regarder comme ça Projet Actuel : En quête de projet(s)!
Mes projets:
SP Lecteur Multimedia (Stand by)
S-Portable Graphics (demo1.8 is out! demo2.0 is planned)
SSB RPG (Stand by)
| Sujet: Re: Troncature Ven 30 Juil 2010 - 22:31 | |
| b = 0 est une erreur de ma part.[corrigé] Tronquer un nombre c'est un nombre dont on a retiré la partie décimale.
10.77 = 10; 10.11 = 10;
C'est ça une troncature.
Pour l'histoire du real() c'est que généralement les vars que j'utilise qui passe sous cette fonction tronc sont des strings.De plus frac() ne marche qu'avec des réels!C'est juste au cas où. |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: Troncature Ven 30 Juil 2010 - 22:36 | |
| en fait, elle est utile la fonction comme ca car comme dit wargamer : - Citation :
- floor != troncate
floor arrondi au chiffre le plus bas si t'a -4.3 ca te donne -5 au lieu de -4 |
|
| |
onilink_ Modérateur
Messages : 9178 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Troncature Ven 30 Juil 2010 - 22:38 | |
| ou sinon floor(abs(x))*sign(x) |
|
| |
SPLN Utilisateur confirmé: Rang ***
Messages : 588 Localisation : Sur son ordinateur *vous vois* arrêtez de me regarder comme ça Projet Actuel : En quête de projet(s)!
Mes projets:
SP Lecteur Multimedia (Stand by)
S-Portable Graphics (demo1.8 is out! demo2.0 is planned)
SSB RPG (Stand by)
| Sujet: Re: Troncature Ven 30 Juil 2010 - 22:52 | |
| - onilink_ a écrit:
- ou sinon floor(abs(x))*sign(x)
En effet, ça fonctionne aussi. Et prend moins de place et :snif2: ! XvD |
|
| |
Wargamer *Excellent utilisateur*
Messages : 6938 Projet Actuel : Bataille de cake au fruits
| Sujet: Re: Troncature Ven 30 Juil 2010 - 23:02 | |
| niveau perf ca se vaut? _________________ Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend |
|
| |
M@d_Doc Modérateur
Messages : 6600 Localisation : 47°44'8.04 Projet Actuel : aucun
| Sujet: Re: Troncature Ven 30 Juil 2010 - 23:17 | |
| ou x-frac(x) _________________ Tous les icones de gm utilisables sur le cbna ICI |
|
| |
SPLN Utilisateur confirmé: Rang ***
Messages : 588 Localisation : Sur son ordinateur *vous vois* arrêtez de me regarder comme ça Projet Actuel : En quête de projet(s)!
Mes projets:
SP Lecteur Multimedia (Stand by)
S-Portable Graphics (demo1.8 is out! demo2.0 is planned)
SSB RPG (Stand by)
| Sujet: Re: Troncature Ven 30 Juil 2010 - 23:34 | |
| Ou bien: - Code:
-
var a, b, c; a = argument0; //Nb a tronquer b = argument1; // Tronquature à (0 - unité ; 1 - dixième ; etc..) c = a - frac(a*power(10,b))/power(10,b)
return c; Fonction optimisé pour qu'on puisse tronquer à l'endroit souhaiter! Par contre GM est débile car parfois il affiche des 0 inutiles. |
|
| |
onilink_ Modérateur
Messages : 9178 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Troncature Sam 31 Juil 2010 - 0:44 | |
| c'est parce qu'après ces zero y un petit un qui fait ***** |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: Troncature Sam 31 Juil 2010 - 2:49 | |
| - onilink_ a écrit:
- c'est parce qu'après ces zero y un petit un qui fait *****
ba c'est a ce moment la qu'on peut utiliser round(), comme ca, il enleve le zero, ca donne : return round(c);et le tour est joué |
|
| |
onilink_ Modérateur
Messages : 9178 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Troncature Sam 31 Juil 2010 - 3:20 | |
| Oui mais ça fait toujours une opération supplémentaire. De plus selon les calculs ont veux pas toujours utiliser round pour pas détruire toutes nos décimales (pas ici évidement). |
|
| |
glcraft Utilisateur confirmé: Rang *****
Messages : 1698 Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P Projet Actuel : Jeu de survie avancé
||--------
| Sujet: Re: Troncature Sam 31 Juil 2010 - 3:30 | |
| - Citation :
- ou sinon floor(abs(x))*sign(x)
au pire restons avec celle ci |
|
| |
Wargamer *Excellent utilisateur*
Messages : 6938 Projet Actuel : Bataille de cake au fruits
| Sujet: Re: Troncature Sam 31 Juil 2010 - 4:19 | |
| au pire tu fiat un décalage et hop...(faut jsute savoir gm utilise quoi) _________________ Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend |
|
| |
onilink_ Modérateur
Messages : 9178 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Troncature Sam 31 Juil 2010 - 13:16 | |
| comme types de donnée ? des double et des *char |
|
| |
Wargamer *Excellent utilisateur*
Messages : 6938 Projet Actuel : Bataille de cake au fruits
| Sujet: Re: Troncature Sam 31 Juil 2010 - 20:30 | |
| arf ca risque d'être plus compliquer et surement pas très performant _________________ Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend |
|
| |
onilink_ Modérateur
Messages : 9178 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Troncature Sam 31 Juil 2010 - 20:49 | |
| De toute façon on ne peut pas accéder a la mémoire des variables directement. |
|
| |
PHENIXprod Utilisateur confirmé: Rang ****
Messages : 835
| Sujet: Re: Troncature Dim 1 Aoû 2010 - 11:47 | |
| Peut-être avec une dll? (J'avais essayé d'en faire une pour modifier les variables d'un autre programme^^) |
|
| |
onilink_ Modérateur
Messages : 9178 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Troncature Dim 1 Aoû 2010 - 12:41 | |
| Oui mais après reste a savoir quelles sont les variables (leurs noms) , si ce sont celles du moteur GM , ou du jeu ... bref la galere |
|
| |
Wargamer *Excellent utilisateur*
Messages : 6938 Projet Actuel : Bataille de cake au fruits
| Sujet: Re: Troncature Dim 1 Aoû 2010 - 16:20 | |
| tu peux pas faire bob = bob>>8 _________________ Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend |
|
| |
onilink_ Modérateur
Messages : 9178 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Troncature Dim 1 Aoû 2010 - 17:00 | |
| ben la tu vas juste diviser ton nombre par 256 |
|
| |
Wargamer *Excellent utilisateur*
Messages : 6938 Projet Actuel : Bataille de cake au fruits
| Sujet: Re: Troncature Dim 1 Aoû 2010 - 17:13 | |
| c'est un exemple, d'ailleur si c'est un double ca risque plus de tout faire foirer _________________ Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend |
|
| |
onilink_ Modérateur
Messages : 9178 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Troncature Dim 1 Aoû 2010 - 17:16 | |
| non, en fait tu n'as pas accès a la mémoire mais juste a la valeur de ta variable. |
|
| |
Wargamer *Excellent utilisateur*
Messages : 6938 Projet Actuel : Bataille de cake au fruits
| Sujet: Re: Troncature Dim 1 Aoû 2010 - 17:47 | |
| ah je vois... c'est con quoi _________________ Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend |
|
| |
onilink_ Modérateur
Messages : 9178 Localisation : Montpellier Projet Actuel : Planet Centauri
OniDev
| Sujet: Re: Troncature Dim 1 Aoû 2010 - 17:48 | |
| |
|
| |
Contenu sponsorisé
| Sujet: Re: Troncature | |
| |
|
| |
| Troncature | |
|