Aide de traduction d'un vbs à java
bifaka
-
bifaka -
bifaka -
salut à vous,
qui pourra m'aider à traduire ce code en code Java.
Public Function HexToDec(ByVal Hex As String) As Long
Dim n As Long
Dim i As Integer
For i = 1 To Len(Hex)
Dim CharHex As String
CharHex = UCase(Mid(Hex, i, 1))
If Asc(CharHex) >= 65 Then
n = n + (Asc(CharHex) - 55) * (16 ^ (-i + Len(Hex)))
Else
n = n + CInt(CharHex) * (16 ^ (-i + Len(Hex)))
End If
Next i
HexToDec = n
End Function
meci d'avance
qui pourra m'aider à traduire ce code en code Java.
Public Function HexToDec(ByVal Hex As String) As Long
Dim n As Long
Dim i As Integer
For i = 1 To Len(Hex)
Dim CharHex As String
CharHex = UCase(Mid(Hex, i, 1))
If Asc(CharHex) >= 65 Then
n = n + (Asc(CharHex) - 55) * (16 ^ (-i + Len(Hex)))
Else
n = n + CInt(CharHex) * (16 ^ (-i + Len(Hex)))
End If
Next i
HexToDec = n
End Function
meci d'avance
A voir également:
- Aide de traduction d'un vbs à java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Vbs windows - Accueil - Optimisation
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
2 réponses
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")); } }
;-)
HackTrack
merci beaucoup HackTrack ca fontionne ce que tu m'a donné. J'ai essayé d'adopter ce que tu m'a donné à l'énoncé de mon problème mais ca me donne les fautes que je n'arrive pas à corrigé. Peux tu aussi commenter ce que tuas fait? parexemple pourquoi utiluse tu des chiffres comme 48?
import java.io.*;
public class Converter {
public static long hexToDec() {
char []zahl = {'0','1','2','3','4','5','6','7','8','9', 'a', 'b', 'c','d', 'e', 'f', '\0' };
String hex="00000000" ;
long n = 0;
//Einlesen hexazahl
//do{
System.out.print("Bitte geben ein hexazahl ein: ");
hex =(char)System.in.read();
//überprüfen ob der eingelesene Zahl richtig ist
//wenn nicht meldet es eni Fehler
// if (!(hex >= '0' && hex <= '9') && !(hex >= 'a' && hex <= 'f'))
// {
// System.out.println ("invalide character wurde detectiert");
//}//Ende if
// }while(!(hex >= '0' &&hex<= '9') && !(hex >= 'a' && hex <= 'f'));
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());
}
}
import java.io.*;
public class Converter {
public static long hexToDec() {
char []zahl = {'0','1','2','3','4','5','6','7','8','9', 'a', 'b', 'c','d', 'e', 'f', '\0' };
String hex="00000000" ;
long n = 0;
//Einlesen hexazahl
//do{
System.out.print("Bitte geben ein hexazahl ein: ");
hex =(char)System.in.read();
//überprüfen ob der eingelesene Zahl richtig ist
//wenn nicht meldet es eni Fehler
// if (!(hex >= '0' && hex <= '9') && !(hex >= 'a' && hex <= 'f'))
// {
// System.out.println ("invalide character wurde detectiert");
//}//Ende if
// }while(!(hex >= '0' &&hex<= '9') && !(hex >= 'a' && hex <= 'f'));
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());
}
}