AccueilAccueil  FAQFAQ  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment : -29%
PC portable Gamer ERAZER DEPUTY P60 – ...
Voir le deal
999.99 €

 

 Troncature

Aller en bas 
+3
nicoulas
M@d_Doc
SPLN
7 participants
AuteurMessage
SPLN
Utilisateur confirmé: Rang ***
SPLN


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)

Troncature Empty
MessageSujet: Troncature   Troncature EmptyVen 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

_________________
SP Lecteur Multimedia
I am an Troncature Gmq4 in the GM Quiz!


Dernière édition par SPLN le Ven 30 Juil 2010 - 23:40, édité 3 fois
Revenir en haut Aller en bas
http://sp-lecteur-multimedia.skyrock.com/
M@d_Doc
Modérateur
M@d_Doc


Messages : 6600
Localisation : 47°44'8.04
Projet Actuel : aucun

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 30 Juil 2010 - 21:13

floor

_________________
Troncature Control_commentTous les icones de gm utilisables sur le cbna ICI Troncature Main1_change_sprite
Revenir en haut Aller en bas
http://www.lecbna.org
nicoulas
*Excellent utilisateur*
nicoulas


Messages : 6030
Localisation : Dordogne
Projet Actuel : Croustaface Tower Defense Troncature Panicpr9

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 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)
Revenir en haut Aller en bas
http://blithe.nd.free.fr/
Wargamer
*Excellent utilisateur*
Wargamer


Messages : 6938
Projet Actuel : Bataille de cake au fruits

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 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

_________________
Troncature Wargamer3
Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend
Revenir en haut Aller en bas
glcraft
Utilisateur confirmé: Rang *****
glcraft


Messages : 1698
Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P
Projet Actuel : Jeu de survie avancé
||--------

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 30 Juil 2010 - 22:26

troncature = arrondi au nombre entier le plus pres non ?
si c'est le cas, c'est round()
Revenir en haut Aller en bas
http://gameblog49.skyblog.com/
SPLN
Utilisateur confirmé: Rang ***
SPLN


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)

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 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ù.

_________________
SP Lecteur Multimedia
I am an Troncature Gmq4 in the GM Quiz!
Revenir en haut Aller en bas
http://sp-lecteur-multimedia.skyrock.com/
glcraft
Utilisateur confirmé: Rang *****
glcraft


Messages : 1698
Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P
Projet Actuel : Jeu de survie avancé
||--------

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 30 Juil 2010 - 22:36

en fait, elle est utile la fonction comme ca car comme dit wargamer :
Citation :
floor != troncate Troncature Honte
floor arrondi au chiffre le plus bas
si t'a -4.3 ca te donne -5 au lieu de -4
Revenir en haut Aller en bas
http://gameblog49.skyblog.com/
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 30 Juil 2010 - 22:38

ou sinon floor(abs(x))*sign(x)

_________________
Troncature Runningpotato1Troncature TvF6GED Troncature MdetltS
Revenir en haut Aller en bas
SPLN
Utilisateur confirmé: Rang ***
SPLN


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)

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 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

_________________
SP Lecteur Multimedia
I am an Troncature Gmq4 in the GM Quiz!
Revenir en haut Aller en bas
http://sp-lecteur-multimedia.skyrock.com/
Wargamer
*Excellent utilisateur*
Wargamer


Messages : 6938
Projet Actuel : Bataille de cake au fruits

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 30 Juil 2010 - 23:02

niveau perf ca se vaut? gnii

_________________
Troncature Wargamer3
Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend
Revenir en haut Aller en bas
M@d_Doc
Modérateur
M@d_Doc


Messages : 6600
Localisation : 47°44'8.04
Projet Actuel : aucun

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 30 Juil 2010 - 23:17

ou
x-frac(x) gnii gnii

_________________
Troncature Control_commentTous les icones de gm utilisables sur le cbna ICI Troncature Main1_change_sprite
Revenir en haut Aller en bas
http://www.lecbna.org
SPLN
Utilisateur confirmé: Rang ***
SPLN


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)

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyVen 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.

_________________
SP Lecteur Multimedia
I am an Troncature Gmq4 in the GM Quiz!
Revenir en haut Aller en bas
http://sp-lecteur-multimedia.skyrock.com/
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptySam 31 Juil 2010 - 0:44

c'est parce qu'après ces zero y un petit un qui fait ***** beh
Revenir en haut Aller en bas
glcraft
Utilisateur confirmé: Rang *****
glcraft


Messages : 1698
Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P
Projet Actuel : Jeu de survie avancé
||--------

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptySam 31 Juil 2010 - 2:49

onilink_ a écrit:
c'est parce qu'après ces zero y un petit un qui fait ***** beh
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é Wink
Revenir en haut Aller en bas
http://gameblog49.skyblog.com/
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptySam 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).

_________________
Troncature Runningpotato1Troncature TvF6GED Troncature MdetltS
Revenir en haut Aller en bas
glcraft
Utilisateur confirmé: Rang *****
glcraft


Messages : 1698
Localisation : Entre l'Espagne, l'Italie, la Suisse, L'allemagne et le RU :P
Projet Actuel : Jeu de survie avancé
||--------

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptySam 31 Juil 2010 - 3:30

Citation :
ou sinon floor(abs(x))*sign(x)

au pire restons avec celle ci Troncature Happy1
Revenir en haut Aller en bas
http://gameblog49.skyblog.com/
Wargamer
*Excellent utilisateur*
Wargamer


Messages : 6938
Projet Actuel : Bataille de cake au fruits

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptySam 31 Juil 2010 - 4:19

au pire tu fiat un décalage et hop...(faut jsute savoir gm utilise quoi)

_________________
Troncature Wargamer3
Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptySam 31 Juil 2010 - 13:16

comme types de donnée ? des double et des *char

_________________
Troncature Runningpotato1Troncature TvF6GED Troncature MdetltS
Revenir en haut Aller en bas
Wargamer
*Excellent utilisateur*
Wargamer


Messages : 6938
Projet Actuel : Bataille de cake au fruits

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptySam 31 Juil 2010 - 20:30

arf ca risque d'être plus compliquer et surement pas très performant

_________________
Troncature Wargamer3
Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptySam 31 Juil 2010 - 20:49

De toute façon on ne peut pas accéder a la mémoire des variables directement.

_________________
Troncature Runningpotato1Troncature TvF6GED Troncature MdetltS
Revenir en haut Aller en bas
PHENIXprod
Utilisateur confirmé: Rang ****
PHENIXprod


Messages : 835

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyDim 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^^)
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyDim 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

_________________
Troncature Runningpotato1Troncature TvF6GED Troncature MdetltS
Revenir en haut Aller en bas
Wargamer
*Excellent utilisateur*
Wargamer


Messages : 6938
Projet Actuel : Bataille de cake au fruits

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyDim 1 Aoû 2010 - 16:20

tu peux pas faire bob = bob>>8 ❓

_________________
Troncature Wargamer3
Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyDim 1 Aoû 2010 - 17:00

ben la tu vas juste diviser ton nombre par 256

_________________
Troncature Runningpotato1Troncature TvF6GED Troncature MdetltS
Revenir en haut Aller en bas
Wargamer
*Excellent utilisateur*
Wargamer


Messages : 6938
Projet Actuel : Bataille de cake au fruits

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyDim 1 Aoû 2010 - 17:13

c'est un exemple, d'ailleur si c'est un double ca risque plus de tout faire foirer Very Happy

_________________
Troncature Wargamer3
Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyDim 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.

_________________
Troncature Runningpotato1Troncature TvF6GED Troncature MdetltS
Revenir en haut Aller en bas
Wargamer
*Excellent utilisateur*
Wargamer


Messages : 6938
Projet Actuel : Bataille de cake au fruits

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyDim 1 Aoû 2010 - 17:47

ah je vois... c'est con quoi triste

_________________
Troncature Wargamer3
Règle #1 du CBNA, ne pas chercher à faire dans la subtilité; personne comprend
Revenir en haut Aller en bas
onilink_
Modérateur
onilink_


Messages : 9178
Localisation : Montpellier
Projet Actuel : Planet Centauri
OniDev

Troncature Empty
MessageSujet: Re: Troncature   Troncature EmptyDim 1 Aoû 2010 - 17:48

C'est le gml

_________________
Troncature Runningpotato1Troncature TvF6GED Troncature MdetltS
Revenir en haut Aller en bas
Contenu sponsorisé





Troncature Empty
MessageSujet: Re: Troncature   Troncature Empty

Revenir en haut Aller en bas
 
Troncature
Revenir en haut 
Page 1 sur 1

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum Le CBNA :: Développement :: Scripts GML-
Sauter vers: