Un message pour hacktrack

Fermé
bifaka - 14 déc. 2005 à 08:30
 bifaka - 20 déc. 2005 à 19:58
merci de vouloir bien m'aider. Peux tu commenter ton algorithme?
Si ca ne te gene pas, j'aimerai avoir ton adresse internet pour directement de poser la question si j'en ai une. Je te trouve génial.
voici la mienne: domancini@yahoo.fr
Bonne journée à toi.


public class Converter {

public static long hexToDec(String hex) {
long n = 0;
for (int i = 0; i < hex.length(); i++) {
char charHex = hex.charAt(i);
int exponent = hex.length() - (i + 1);
long mult = (long)Math.pow(16, exponent);
if (charHex >= 65) {
n += (charHex - 55) * mult;
} else {
n += (charHex-48) * mult;
}
}
return n;
}

public static void main(String[] args) {
System.out.println(Converter.hexToDec("AAA"));
}
}
A voir également:

3 réponses

Zep3k!GnO Messages postés 2025 Date d'inscription jeudi 22 septembre 2005 Statut Membre Dernière intervention 18 novembre 2015 200
14 déc. 2005 à 13:09
Je te trouve génial.
WahoOoo si ça c'est pas de la déclaration d'amour, je m'y connais pas :P

Zep3k!GnO
_/______________________________\_
/On est des rangers mec, des rangers !\
\_____________..._________________/
1
Utilisateur anonyme
20 déc. 2005 à 09:00
Code commenté

public class Converter {

	public static long hexToDec(String hex) {
		long n = 0;
		//On itére sur chaque caractère de la chaîne à convertir
		for (int i = 0; i < hex.length(); i++) {
			//On extrait un caractère de la chaîne à convertir
			char charHex = hex.charAt(i);
			//On calcule la puissance de 16 pour ce caractère en fonction de sa place dans la chaîne
			//Par exemple: le dernier caractère de la chaîne sera multiplié par 16^0, l'avant-dernier
			//par 16^1,...
			int exponent = hex.length() - (i + 1);
			//On calcule 16 à la puissance désirée. Ce facteur sera multiplié plus bas
			//par la valeur décimale du caractère en cours
			long mult = (long)Math.pow(16, exponent);
			//Si le code ASCII du caractère >=65, iul s'agit d'une lettre
			//La valeur de cette lettre est 11 pour A, 12 pour B,...
			//On calcule donc la valeur décimale du caractère en cours.
			//Dans notre exemple, l'avant-dernier caractère 'A'
			//vaudra: 11*16^1, soit 176. On additionne ce nombre à la valeur totale de la chaîne
			if (charHex >= 65) {
				n += (charHex - 55) * mult;
			//sinon il s'agit d'un chiffre
			} else {
				n += (charHex-48) * mult;
			}	
			//on passe au caratère suivant
		}
		return n;
	}

	public static void main(String[] args) {
		System.out.println(Converter.hexToDec("AAA"));
	}
}


;-)

HackTrack
0
tu es un ange qui vient de me faire un beau cadeau de noel.
je te souhaite de très bonnes fêtes
0