GTA-Center.com » Forum http://www.gta-center.com/forums/ |
|
[GUIDA] Uso del float.inc http://www.gta-center.com/forums/viewtopic.php?f=40&t=197 |
Pagina 1 di 1 |
Autore: | Angelo [ 03/11/2010, 11:30 ] |
Oggetto del messaggio: | [GUIDA] Uso del float.inc |
Raga in questa guida vi spiegherò l'uso delle funzioni contenute nel "float.inc" Prima di iniziare vi spiegherò cosa è un float. Un float è generalmente un numero decimale, cioè un numero con la virgola. Per creare un float in pawno basterà mettere dopo il "new" la parola "Float:" esempio: new Omg; (Questo non sarà un float, ma una variabile normale a cui verrà attribuito un valore in futuro. new Float:Omg; (Questo sarà un float che potrà assumere come valore un numero decimale, come 6.3 oppure 2.7 ecc...) Iniziamo con la guida: 1° "floatadd" Il floatadd serve per sommare tra di loro due float (decimali), esempio Codice: new Float:x = 3.4; new Float:y = 6.6; new Float:xy = floatadd(x,y); printf("La somma di x + y è %0.2f", Float:xy); La somma di x + y sarà 10 e quindi verrà printato il numero 10.0 2° "floatsub" Il floatsub serve per sottrarre tra loro due float, esempio: Codice: new Float:x=6.0; new Float:y=4.0; new Float:xy=floatsub(x,y); printf("La differenza di x - y è %0.2f",Float:xy); Quando aprirete sampserver nel dos apparirà la scritta "La differenza di x + y è 2.00" 3° "floatmul" Il floatmul serve per moltiplicare tra loro due float, esempio: Codice: new Float:x=2.0; new Float:y=7.0; new Float:xy=floatmul(x,y); printf("Il risultato di x * y è %0.2f",Float:xy); Quando aprirete sampserver nel dos apparirà la scritta "Il risultato di x + y è 14.00" 4° "floatdiv" Il floatdiv serve per dividere tra loro due float, esempio: Codice: new Float:x=90.0; new Float:y=3.0; new Float:xy=floatdiv(x,y); printf("Il risultato di x : y è %0.2f",Float:xy); Quando aprirete sampserver nel dos apparirà la scritta "Il risultato di x : y è 30.00" 5° "floatcmp" Il floatcmp serve per vedere se due float sono uguali tra loro, esempio: Codice: new Float:x=90.0; new Float:y=90.0; if(floatcmp(x,y)==1) { printf("x e y comparano"); } Quando aprirete sampserver nel dos apparirà la scritta "x e y comparano" 6° "floatabs" Il floatabs restituisce un valore assoluto del float, cioè se un numero ha un segno(+ o -) davanti ad esso, quest'ultimo viene tolto esempio: Codice: new Float:x=-10.0; x=floatabs(x); printf("%0.2f",Float:x); Quando aprirete sampserver nel dos apparirà la scritta "10.00" 7° "floatlog" Il floatlog restituisce il valore logaritmo del float, cioè il valore logaritmo aumenta di 0.04 per i numeri dispari e di 0.03 per quelli pari (10=1 , 11=1.04, 12=1.07), esso puo essere utile per convertire prodotti in somme o rapporti in differenze, esempio Codice: new Float:x=10.0; x=floatlog(x); printf("%0.2f",Float:x); Quando aprirete sampserver nel dos apparirà la scritta "1.00" 8° "floatpower" Il floatpower restituisce il valore elevato alla potenza del float Codice: new Float:x=10.0; new Float:we=floatpower(x,2);//2 è l'esponente della potenza printf("%0.2f",Float:we); Quando aprirete sampserver nel dos apparirà la scritta "100.00" perchè 10^2 è uguale a 10*10 cosìcome 10^3 è uguale a 10*10*10 9° "floatround" Il floatround server ad arrotondare per eccesso o per difetto un float, Codice: new Float:x=4.3; floatround(x,floatround_round); printf("%0.2f",x); Quando aprirete sampserver nel dos apparirà la scritta 4.00, perchè 4.3 è stato arrotondato per difetto, oltre al floatround_round , troviamo il floatround_floor (che arrotonda per eccesso la float), il floatround_tozero (che arrotonda per eccesso i numeri positivi e per difetto quelli negativi) e il floatround_ceil (che arrotonda per difetto la float) 10° "floatcos, floatsin e floattan " Questi tre sono delle funzioni trigonometriche. Il floatcos ritorna il coseno dell'angolo del float, il floatsin ritorna il seno dell'angolo del float mentre il floattan ritorna la tangente dell'angolo del float, non mi chiedete cosa sono ._. per approfondire: http://it.wikipedia....no_(matematica) http://it.wikipedia.org/wiki/Coseno http://it.wikipedia....(trigonometria) 11° "floatsqroot" Il floatsqroot restituisce la radice quadrata di una float, esempio: Codice: new Float:x=16; x=floatsqroot(x); printf("%0.2f",Float:x); Quando aprirete sampserver nel dos apparirà la scritta "4.00" cioè la radice quadrata di 16 12° "floatstr" Il floatstr converte una stringa in un float Codice: public OnPlayerConnect(playerid) { new before[4]; format(before,4,"%d"playerid); printf("%0.2f",floatstr(before)); return 1; } Quando aprirete sampserver verrà scritto nel dos l'id del player, cioè l'id del player appena connesso verrà convertito in una float, esempio se l'id è 4 verrà convertito in 4.00 13° floatfract Il floatfract returna la parte decimale di un numero float, per esempio: Codice: new Float:x = 14.34; new Float:fx = floatfract(x); printf("%0.2f", fx); fx sarà uguale a 0.34 P.s. alcune di queste funzioni le ho tradotte dal wiki tra queste ci sono: il floatcos, il floatsin, il floattan e il floatlog. Spero sia stata utile Thx Aggiungo una funzione creata da me, l'ho chiamata floatprc restituisce la percentuale tra due float Codice: new Float:x=50;//numero new Float:y=50;//percentuale da trovare new Float:result; result=floatprc(x,y); printf("Il 10 per cento di 100 è %0.2f",Float:result); per usarlo in cima mettete questo Codice: #define floatprc(%1,%2) floatdiv(floatmul(%1,%2),100)
|
Autore: | Giuseppe_Mazzei [ 03/11/2010, 13:31 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
Inserito nella lista delle guide |
Autore: | SNaKe_OlD [ 03/11/2010, 14:39 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
bella guida, bravo |
Autore: | MoND [ 03/11/2010, 14:51 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
Bravo Angelo |
Autore: | Giovanni94m [ 03/11/2010, 15:14 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
bella guida angelo |
Autore: | Peppinux AKA Peppe_Stasu [ 03/11/2010, 15:48 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
Bella Angelo |
Autore: | Angelo [ 03/11/2010, 22:17 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
Grazie a tutti |
Autore: | barletheking [ 04/11/2010, 16:40 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
la guida è stata ricopiata da un forum che non cito per spam. |
Autore: | Angelo [ 04/11/2010, 17:00 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
si lo so infatti l'ho postata in 3 forum in uno col nome di Angelo_95 in un altro col nome di Mr.Fabri e in questo col nome di Angelo |
Autore: | barletheking [ 04/11/2010, 17:05 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
aa allora sei Fabri xD wee xD |
Autore: | Angelo [ 04/11/2010, 17:07 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
Lol |
Autore: | Peppinux AKA Peppe_Stasu [ 04/11/2010, 17:10 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
Barle prima di accusare assicurati dei nick XDDD |
Autore: | barletheking [ 04/11/2010, 17:11 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
si ma che lol se qua si chiama angelo come posso sospettare che era fabri xD |
Autore: | Peppinux AKA Peppe_Stasu [ 04/11/2010, 17:53 ] |
Oggetto del messaggio: | Re: [GUIDA] Uso del float.inc |
xD Comunque stop OT |
Pagina 1 di 1 | Tutti gli orari sono UTC + 1 ora [ ora legale ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |