SA-MP Forums Archive
[Ajuda] como colocar . no meio do dinheiro - 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] como colocar . no meio do dinheiro (/showthread.php?tid=657877)



como colocar . no meio do dinheiro - SamuelMatheus05 - 16.08.2018

Eu criei um sistema no meu server de ints com ups

PHP код:
format(stringtextsizeof(stringtext),"{ffffff}Vocк deseja acrescentar mais um\nup em sua casa por {00ff00}$%d?",CasaInfo[GetPlayerVirtualWorld(playerid)][cPreco] / 2); 
Daн por ex o resultado sai 5000 sу que eu queria q ficasse 5.000 alguйm pode me ajudar?

Obg desde jб


Re: como colocar . no meio do dinheiro - Santso - 16.08.2018

PHP код:
new Float:Dinheiro;
Dinheiro 50000;
new 
String[8];
strdel(Dinheiro2strlen(dinheiro));
format(Stringsizeof(String), "%d.0000",Dinheiro); 
eu faria assim, mas й estranho isso ai jб que um Float й imprimido asiim: 20000, no caso sу falta o ponto nй ?


Re: como colocar . no meio do dinheiro - NelsonC - 16.08.2018

PHP код:
stock convertNumber(value)
{
    new 
string[24];
    
format(stringsizeof(string), "%d"value);
    for(new 
= (strlen(string) - 3); > (value 0) ; -= 3)
    {
        
strins(string[i], ","0);
    }
    return 
string;




Re: como colocar . no meio do dinheiro - humildadeforever - 16.08.2018

Quote:
Originally Posted by Santso
Посмотреть сообщение
PHP код:
new Float:Dinheiro;
Dinheiro 50000;
new 
String[8];
strdel(Dinheiro2strlen(dinheiro));
format(Stringsizeof(String), "%d.0000",Dinheiro); 
eu faria assim, mas й estranho isso ai jб que um Float й imprimido asiim: 20000, no caso sу falta o ponto nй ?
Isso nгo vai dar certo..

Aqui tem vбrios cуdigos que realizam esse tipo de tarefa: https://sampwiki.blast.hk/wiki/AddThousa...ors#Definition

Basicamente, o que vocк precisa й:

PHP код:
AddPonto(number, const separator[] = ".")
{
    new 
output[15]; 
    
format(outputsizeof(output), "%d"number);
    for(new 
strlen(output) - 3&& output[i-1] != '-'-= 3)
    {
        
strins(outputseparatori);
    }
    return 
output;

Modo de uso.. no seu caso:
PHP код:
new CasaInfo[GetPlayerVirtualWorld(playerid)][cPreco] / 2;
format(stringtextsizeof(stringtext),"{ffffff}Vocк deseja acrescentar mais um\nup em sua casa por {00ff00}$%d?"AddPonto(n)); 



Re: como colocar . no meio do dinheiro - BobbMarley - 16.08.2018

Eu acho que seria uma tentativa frustrada, й mais ou menos vocк querer criar um sistema de Centavos dentro do Dinheiro do GTA, por exemplo: Um Lanche nгo custa 5$, custa 4.7$.


Re: como colocar . no meio do dinheiro - Santso - 16.08.2018

Quote:
Originally Posted by humildadeforever
Посмотреть сообщение
Isso nгo vai dar certo..

Aqui tem vбrios cуdigos que realizam esse tipo de tarefa: https://sampwiki.blast.hk/wiki/AddThousa...ors#Definition

Basicamente, o que vocк precisa й:

PHP код:
AddPonto(number, const separator[] = ".")
{
    new 
output[15]; 
    
format(outputsizeof(output), "%d"number);
    for(new 
strlen(output) - 3&& output[i-1] != '-'-= 3)
    {
        
strins(outputseparatori);
    }
    return 
output;

Modo de uso.. no seu caso:
PHP код:
new CasaInfo[GetPlayerVirtualWorld(playerid)][cPreco] / 2;
format(stringtextsizeof(stringtext),"{ffffff}Vocк deseja acrescentar mais um\nup em sua casa por {00ff00}$%d?"AddPonto(n)); 
certo dб sim pq testei, porem como falei tem outros modos mais facil ou menor de fazer isso, atй pq este metodo sу funciona comFloat inteiro EX: 50000, se for: 56921, vai ficar assim: 5.0000


Re: como colocar . no meio do dinheiro - 1sbedx - 17.08.2018

Quote:
Originally Posted by Santso
Посмотреть сообщение
Float inteiro EX: 50000
Float inteiro??


Re: como colocar . no meio do dinheiro - Santso - 17.08.2018

Quote:
Originally Posted by 1sbedx
Посмотреть сообщение
Float inteiro??
imaginei que iriam questionar isso kkk, quis dizer que o numero vai ser assim: 5.000000, e nгo assim: 5.78156394, entende ? tipo vai ter sу o 5 eo 0, espero que tenha entendido


Re: como colocar . no meio do dinheiro - willttoonn - 17.08.2018

Use e abuse.

pawn Код:
FormatNumber(number, prefix[] = "$")
{
    static
        value[32],
        length;

    format(value, sizeof(value), "%d", (number < 0) ? (-number) : (number));

    if ((length = strlen(value)) > 3)
    {
        for (new i = length, l = 0; --i >= 0; l ++) {
            if ((l > 0) && (l % 3 == 0)) strins(value, ",", i + 1);
        }
    }
    if (prefix[0] != 0)
        strins(value, prefix, 0);

    if (number < 0)
        strins(value, "-", 0);

    return value;
}



Re: como colocar . no meio do dinheiro - SamuelMatheus05 - 17.08.2018

Obrigado a todos.
Mas atй agora nenhum foi