SA-MP Forums Archive
[Ajuda] Nъmeros Sendo Arredondados ! - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: Non-English (https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Português/Portuguese (https://sampforum.blast.hk/forumdisplay.php?fid=34)
+---- Thread: [Ajuda] Nъmeros Sendo Arredondados ! (/showthread.php?tid=405985)



Nъmeros Sendo Arredondados ! - Geo1996 - 08.01.2013

pawn Код:
new Float:InfoHQs[][] =
{
    {1530.8351,-1662.6337,6.2188}, // HQ PM LS
    {321.9424,-1521.7406,36.0391}, // HQ ROTAM LS
    {-1511.3052,461.5399,7.1875}, // HQ GN
    {2041.0734,-1413.3622,17.1708}, // HQ SAMU
    {1807.3854,-1700.1106,13.5470}, // HQ Aztecas LS
    {-33.5359,-313.0482,5.4229}, // HQ Taliban
    {1499.9359,-1850.9807,13.5469}, // HQ Prefeito
    {2345.9382,-1273.9539,22.5017}, // HQ Hitmans
    {763.2606,-1333.0393,13.5436}, // HQ Reporteres
    {614.0219,-1510.6649,14.9389}, // HQ Taxistas
    {-506.5255,-539.6215,25.5234}, // HQ Policia Federal
    {1489.8945,-687.8761,94.7500}, // Mafia CN
    {669.0487,-1281.1802,13.4609}, // Yakuza
    {2515.7603,-1689.9014,14.0460}, // HQ Groove LS
    {-530.9841,-76.9073,62.7302}, // Alquaeda
    {918.2829,-1259.0022,15.6641}, // Policia Civil
    {996.1760,-1096.9597,23.8281}, // Ballas
    {392.6393,-2053.2495,7.8359}, // Vagos
    {718.2350,-1442.3379,17.6953,}, // Comando Vermelho
    {1245.1061,-1646.0415,12.6187}, // PCC
    {668.9551,-472.2881,16.3359}, // Sons Of Anarchy
    {1563.5671,15.5118,24.1641}, // Mayans
    {1368.8695,401.7981,19.7238}, // Interpol
    {996.1299,-1460.3545,13.5469} // Mecanicos
};

public OnGameModeInit()
{

    for(new i = 0; i < 24; i++)
    {
        printf("%.4f, %.4f, %.4f \n", InfoHQs[i][0], InfoHQs[i][1], InfoHQs[i][2] );
    }
    return 1;
}
Agora os nъmeros q estгo sendo printados !

PHP код:
[17:16:571530.8350, -1662.63366.2188 
[17:16:57321.9424, -1521.740636.0391 
[17:16:57] -1511.3051461.53987.1875 
[17:16:572041.0733, -1413.362117.1707 
[17:16:571807.3853, -1700.110513.5469 
[17:16:57] -33.5359, -313.04815.4229 
[17:16:571499.9359, -1850.980713.5468 
[17:16:572345.9382, -1273.953822.5016 
[17:16:57763.2606, -1333.039313.5436 
[17:16:57614.0219, -1510.664914.9388 
[17:16:57] -506.5255, -539.621525.5233 
[17:16:571489.8945, -687.876094.7500 
[17:16:57669.0487, -1281.180113.4609 
[17:16:572515.7602, -1689.901314.0459 
[17:16:57] -530.9840, -76.907362.7302 
[17:16:57918.2828, -1259.002115.6640 
[17:16:57996.1760, -1096.959723.8281 
[17:16:57392.6393, -2053.24957.8358 
[17:16:57718.2349, -1442.337817.6952 
[17:16:571245.1060, -1646.041512.6187 
[17:16:57668.9550, -472.288016.3358 
[17:16:571563.567115.511724.1641 
[17:16:571368.8695401.798019.7238 
[17:16:57996.1298, -1460.354413.5468 



Re: Nъmeros Sendo Arredondados ! - ViniBorn - 08.01.2013

Qual o problema? ^o)


Re: Nъmeros Sendo Arredondados ! - Geo1996 - 08.01.2013

Quote:
Originally Posted by Viniborn
Посмотреть сообщение
Qual o problema? ^o)
olhe os nъmeros que declarei dentro da matriz e olhe os que estгo sendo mostrados !


Re: Nъmeros Sendo Arredondados ! - paulor - 08.01.2013

Imperfeiзгo do Float, se tivesse double estaria resolvido mas como nгo tem vocк deve somar a todo Float 0.001, isso corrige a imperfeiзгo do Float.


Re: Nъmeros Sendo Arredondados ! - Geo1996 - 08.01.2013

Quote:
Originally Posted by paulor
Посмотреть сообщение
Imperfeiзгo do Float, se tivesse double estaria resolvido mas como nгo tem vocк deve somar a todo Float 0.001, isso corrige a imperfeiзгo do Float.
se й que intendi o que vocк quis dizer fiz da seguinte maneira

pawn Код:
printf("%.4f, %.4f, %.4f \n", InfoHQs[i][0] + 0.001, InfoHQs[i][1]  + 0.001, InfoHQs[i][2]  + 0.001 );
porem os valores se tornaram mais distintos ainda !

@sobre o double

logo qnd apareceu isso me lembrei de c++ q tinha double, porem fui pesquisar se o mesmo se aplciava em pawn e nao encontrei nada relacionado a isso em pawn


Re: Nъmeros Sendo Arredondados ! - paulor - 08.01.2013

Quote:
Originally Posted by Geo1996
Посмотреть сообщение
se й que intendi o que vocк quis dizer fiz da seguinte maneira

pawn Код:
printf("%.4f, %.4f, %.4f \n", InfoHQs[i][0] + 0.001, InfoHQs[i][1]  + 0.001, InfoHQs[i][2]  + 0.001 );
porem os valores se tornaram mais distintos ainda !

@sobre o double

logo qnd apareceu isso me lembrei de c++ q tinha double, porem fui pesquisar se o mesmo se aplciava em pawn e nao encontrei nada relacionado a isso em pawn
Foi o que eu disse, Pawn nгo tem double. Por isso й necessбrio esta correзгo, Mais ai entra um detalhe que nгo tinha percebido, vocк quer Mostra 4 digitos dps do Ponto entгo esse metodo nгo irб te ajudar, estarei tentando descobrir algo que te ajude..


Re: Nъmeros Sendo Arredondados ! - Geo1996 - 08.01.2013

Quote:
Originally Posted by paulor
Посмотреть сообщение
Foi o que eu disse, Pawn nгo tem double. Por isso й necessбrio esta correзгo, Mais ai entra um detalhe que nгo tinha percebido, vocк quer Mostra 4 digitos dps do Ponto entгo esse metodo nгo irб te ajudar, estarei tentando descobrir algo que te ajude..
ok, tentei usar floatstr porem deu tag mistach, se minha lуgica estiver errada avise !


Respuesta: Nъmeros Sendo Arredondados ! - ipsBruno - 08.01.2013

Nгo hб algo bom para se fazer, eu sei um truquezinho para fixar o valor, mas nгo sei se funcionaria:

pawn Код:
//

    new Float: var = 14.1234;

    new inteiro = floatround(var);
    new Float: decimal = var - inteiro + 0.000001;
   
    printf("Sem correзгo: %f", var);
    printf( "Com correзгo: %f", inteiro + decimal);

Boa sorte


Ou tente isto:

pawn Код:
new Float: var = 14.1399;

    printf( "Com correзгo: %0.4f", var);



Re: Nъmeros Sendo Arredondados ! - paulor - 08.01.2013

pawn Код:
new InfoHQs[][] =
{
    {1530,8351,-1662,6337,6,2188}, // HQ PM LS
    {321,9424,-1521,7406,36,0391}, // HQ ROTAM LS
    {-1511,3052,461,5399,7,1875}, // HQ GN
    {2041,0734,-1413,3622,17,1708}, // HQ SAMU
    {1807,3854,-1700,1106,13,5470}, // HQ Aztecas LS
    {-33,5359,-313,0482,5,4229}, // HQ Taliban
    {1499,9359,-1850,9807,13,5469}, // HQ Prefeito
    {2345,9382,-1273,9539,22,5017}, // HQ Hitmans
    {763,2606,-1333,0393,13,5436}, // HQ Reporteres
    {614,0219,-1510,6649,14,9389}, // HQ Taxistas
    {-506,5255,-539,6215,25,5234}, // HQ Policia Federal
    {1489,8945,-687,8761,94,7500}, // Mafia CN
    {669,0487,-1281,1802,13,4609}, // Yakuza
    {2515,7603,-1689,9014,14,0460}, // HQ Groove LS
    {-530,9841,-76,9073,62,7302}, // Alquaeda
    {918,2829,-1259,0022,15,6641}, // Policia Civil
    {996,1760,-1096,9597,23,8281}, // Ballas
    {392,6393,-2053,2495,7,8359}, // Vagos
    {718,2350,-1442,3379,17,6953,}, // Comando Vermelho
    {1245,1061,-1646,0415,12,6187}, // PCC
    {668,9551,-472,2881,16,3359}, // Sons Of Anarchy
    {1563,5671,15,5118,24,1641}, // Mayans
    {1368,8695,401,7981,19,7238}, // Interpol
    {996,1299,-1460,3545,13,5469} // Mecanicos
};

public OnGameModeInit()
{
    for(new i = 0; i < 24; i++)
    {
        printf("%i.%i, %i.%i, %i.%i \n", InfoHQs[i][0], InfoHQs[i][1], InfoHQs[i][2], InfoHQs[i][3], InfoHQs[i][4], InfoHQs[i][5]);
    }
    return 1;
}
Ъnica maneira cara, By. iPsBruno.

@Bruno

Dessa maneira nгo tem como, jб tentei aqui e nгo deu certo!



Re: Nъmeros Sendo Arredondados ! - Geo1996 - 08.01.2013

Quote:
Originally Posted by paulor
Посмотреть сообщение
pawn Код:
new InfoHQs[][] =
{
    {1530,8351,-1662,6337,6,2188}, // HQ PM LS
    {321,9424,-1521,7406,36,0391}, // HQ ROTAM LS
    {-1511,3052,461,5399,7,1875}, // HQ GN
    {2041,0734,-1413,3622,17,1708}, // HQ SAMU
    {1807,3854,-1700,1106,13,5470}, // HQ Aztecas LS
    {-33,5359,-313,0482,5,4229}, // HQ Taliban
    {1499,9359,-1850,9807,13,5469}, // HQ Prefeito
    {2345,9382,-1273,9539,22,5017}, // HQ Hitmans
    {763,2606,-1333,0393,13,5436}, // HQ Reporteres
    {614,0219,-1510,6649,14,9389}, // HQ Taxistas
    {-506,5255,-539,6215,25,5234}, // HQ Policia Federal
    {1489,8945,-687,8761,94,7500}, // Mafia CN
    {669,0487,-1281,1802,13,4609}, // Yakuza
    {2515,7603,-1689,9014,14,0460}, // HQ Groove LS
    {-530,9841,-76,9073,62,7302}, // Alquaeda
    {918,2829,-1259,0022,15,6641}, // Policia Civil
    {996,1760,-1096,9597,23,8281}, // Ballas
    {392,6393,-2053,2495,7,8359}, // Vagos
    {718,2350,-1442,3379,17,6953,}, // Comando Vermelho
    {1245,1061,-1646,0415,12,6187}, // PCC
    {668,9551,-472,2881,16,3359}, // Sons Of Anarchy
    {1563,5671,15,5118,24,1641}, // Mayans
    {1368,8695,401,7981,19,7238}, // Interpol
    {996,1299,-1460,3545,13,5469} // Mecanicos
};

public OnGameModeInit()
{
    for(new i = 0; i < 24; i++)
    {
        printf("%i.%i, %i.%i, %i.%i \n", InfoHQs[i][0], InfoHQs[i][1], InfoHQs[i][2], InfoHQs[i][3], InfoHQs[i][4], InfoHQs[i][5]);
    }
    return 1;
}
Ъnica maneira cara, By. iPsBruno.

@Bruno

Dessa maneira nгo tem como, jб tentei aqui e nгo deu certo!
vlw !

teste a maneira do bruno porem nгo obtive sucesso ! obrigado paulor