Valor mбximo de uma variavel -
Locky_ - 27.09.2013
Bem, acho que й um tipo de limite que nгo possui chance de aumentar, mas й estranho ter limite nй.
Muitos sabem que o valor mбximo de uma variбvel й
2147483647.
Teria alguma chance de aumentar esse valor por acaso?
Re: Valor mбximo de uma variavel -
ipsBruno - 27.09.2013
PHP Code:
printf("%d e %d", cellmax, cellmin);
Tem sim, pode-se fazer uma gambiarra com strings. Mas em pawn puro, nгo hб como.
Re: Valor mбximo de uma variavel -
Locky_ - 27.09.2013
Quote:
Originally Posted by ipsBruno
PHP Code:
printf("%d e %d", cellmax, cellmin);
Tem sim, pode-se fazer uma gambiarra com strings. Mas em pawn puro, nгo hб como.
|
Por exemplo, dividir seus valores? Se bem que dividindo nгo teria como exibir o resultados de todos juntos (somando) pois assim passaria do limite .-. fail
Re: Valor mбximo de uma variavel -
ipsBruno - 27.09.2013
Na verdade nгo. Eu jб fiz algo assim em javascript. Basta simular como vocк dividiria no papel para a string. Entгo vai dividir nъmero por nъmero, que serб posteriormente exibido na string. Nгo hб manipulaзгo direta com um tipo de dado
Veja isto
https://sampforum.blast.hk/showthread.php?tid=372994
Й extremamente LENTO. Уbvio, mas quer o que, vocк estб calculando nъmeros acima de 200 bilhхes
Veja o exemplo dele:
11111111113579864223154367593477645692194543699367 3499346452359356363461
+ 99999999999999999916577655598765432112345678993456 9257124869357946783486
= 11111111111357986413973202319224307780454022269282 42756471321717303146947
Viu? Nъmeros gigantes. Obviamente o dele й adiзгo, o meu era divisгo em javascript. Que tem o mesmo limite de pawn.
Re: Valor mбximo de uma variavel -
ipsBruno - 27.09.2013
Aqui, achei meu cуdigo
pawn Code:
function divisao(s1, s2) {
y = -1;
if(s1.search(".") != -1) {
y = parseInt("1"+ new Array(s1.substr(s1.search(".")).length).join("0"));
s1 = ''+(parseFloat(s1) * y)
s2 = ''+(parseFloat(s2) * y)
}
n2 = parseInt(s2);
ns = 0;
resto = 0;
conca = ""
while(s1.length > 0) {
ns = parseInt(s1.substr(0, s2.length))
s1 = s1.substr(s2.length)
if(ns < n2 && s1.length > s2.length) {
ns = ns + "" + parseInt(s1.substr(0, 1))
s1 = s1.substr(1)
}
if(resto) {
ns = resto + "" + ns;
}
ns = parseInt(ns);
resto = ns-(n2*((ns / n2) >> 0))
conca += "" + ((ns / n2) >> 0);
}
s2 = "" + ((resto) / n2);
return conca + s2.substr(1);
}
Aqui o meu teste:
alert(divisao("19646946996469469964694699646946996 46946996469469964694699646946996469469964694699646 94699646946996469469964694699646946996469469964694 69964694699646946996469469964694699646946996469469 96469469964694699646946996469469964694690096469469 96469469964694699646946996469469964694699646946996 46946996469469964694699646946996469469964694699646 94690096469469964694699646946996469469964694699646 94699646946996469469964694699646946996469469964694 69964694699646946900964694699646946996469469964694 69964694699646946996469469964694699646946996469469 96469469964694699646946996469469009646946996469469 96469469964694699646946996469469964694699646946996 46946996469469964694699646946996469469964694690096 46946996469469964694699646946996469469964694699646 94699646946996469469964694699646946996469469964694 69964694690096469469964694699646946996469469964694 69964694699646946996469469964694699646946996469469 96469469964694699646946900964694699646946996469469 96469469964694699646946996469469964694699646946996 46946996469469", "1864684688646846886468468864684688646846886468468 86468468864684688646846886468468864684688646846886 46846886468468864684688646846886468468864684688646 84688646846886468468864684688646846886468468864684 68864684688646846886468468008646846886468468864684 68864684688646846886468468864684688646846886468468 86468468864684688646846886468468864684680086468468 86468468864684688646846886468468864684688646846886 46846886468468864684688646846886468468864684688646 84680086468468864684688646846886468468864684688646 84688646846886468468864684688646846886468468864684 68864684688646846800864684688646846886468468864684 68864684688646846886468468864684688646846886468468 86468468864684688646846886468468008646846886468468 86468468864684688646846886468468864684688646846886 46846886468468864684688646846886468468864684680086 46846886468468864684688646846886468468864684688646 84688646846886468468864684688646846886468468864684 68864684680086468468864684688646846886468468864684 68864684688646846886468468864684688646846886468468 "));
Dб pra converter pra pawn tranquilamente. Й de divisгo.
Re: Valor mбximo de uma variavel -
Locky_ - 27.09.2013
Caraca, tu deve ter mу cabeзгo, pra fazer esses bangs assim o_O
Re: Valor mбximo de uma variavel -
ipsBruno - 27.09.2013
Capaz, deve ter alguns bugs. Й arriscado dividir assim porque quanto maior o nъmero maior a probabilidade de ele quebrar no caminho. Como vocк estб dividindo em partes, na hora de juntar tudo acaba dando algum erro de precisгo. Mas para nгo muito grande ele dividi tranquilo.
Tipo:
4184594145148146148164/ 198449818914
4184594145148146148164 / 198449818914 =21086409491.6 (******)
4184594145148146148164 / 198449818914 = 21086409491.5681297742320398 (Meu)
Mais preciso que o ****** neste caso
o ****** arredondou para 91.6, o meu retornou 91.5681297742320398
Re: Valor mбximo de uma variavel -
Locky_ - 27.09.2013
Caralho, tб de parabйns. Atй que ponto chega o ser humano auheuaheuhauhae'
Re: Valor mбximo de uma variavel -
ipsBruno - 27.09.2013
Para pawn, tem isto:
https://github.com/LassiR/numlib-samp
Re: Valor mбximo de uma variavel -
Locky_ - 27.09.2013
Vou ver aqui depois como posso utiliza-lo.
Cara, valeu mesmo, tu й fera pra caralho nessas paradas.
Posso andar com vocк no recreio? (: kk