7
votes

Entier converti en or wow

pour un monde MMORPG de Warcraft im essayant d'écrire une lib. L'argent dans ces jeux est stocké comme un entier et en monnaie de jeu n'est pas un entier qu'il est basé sur des pièces d'or, d'argent et de cuivre.

Tous les 100 cuivre sont 1 argent et tous les 100 argent sont 1 or.

Maintenant, je dois convertir un tel entier au format WOW Money: Par exemple

123123 devrait revenir: 23c 31s 12g

Quelqu'un sait faire cela


2 commentaires

N'a pas d'importance. J'ai juste besoin d'avoir l'idée d'avoir l'idée xD


Êtes-vous sûr qu'il y a 32 argent là-bas?


5 Réponses :


2
votes

Tout d'abord dévier 123123 à 10000. Cela vous donne 12.3123. Le nombre entier (12) est le numéro d'or. Le reste (après le délimètre) 3123 dévier à 100 pour obtenir l'argent. Cela vous donne 31,23. Encore une fois la première partie (31) est l'argent et le reste (23) est votre cuivre.

en C ++ par exemple, cet algorithme ressemblera à xxx


0 commentaires

3
votes

python: xxx


1 commentaires

AVERTISSEMENT: cette réponse a deux bugs -> Il ne devrait pas y avoir de% 100 pour l'or, mais «Valeur // 10000» et le montant des négatifs ne sont pas correctement gérés.



2
votes
  1. Divisez entier de 10 000 (cuivre en or), prenez la partie entière, ce sera la quantité d'or.
  2. Prenez le reste de l'étape précédente. Divisez par 100 (cuivre en argent), ce sera la quantité d'argent.
  3. Prenez le reste de l'étape précédente. Ce sera le cuivre.

0 commentaires

12
votes

C #:

int[] WoWMoney(int m)
{
        int[] result = new int[3];
        int copper = m % 100;
        m = (m - copper) / 100;
        int silver = m % 100;
        int gold = (m - silver) / 100;
        result[0] = copper;
        result[1] = silver;
        result[2] = gold;
        return result;
}


0 commentaires

0
votes

Perl:

print "How much : ";
$money = <>;
chomp $money;

$gold = int($money/10000);
$money = int($money%10000);
$silver = int($money/100);
$copper = int($money%100);


$result = sprintf("You need : %dg %ds %dc", $gold, $silver, $copper);
print "\n$result\n";

<>;


0 commentaires