Internet checksum program java
Senin, 02 Desember 2013
0
komentar
import java.util.*; class InternetChecksum { public static void main (String args[]){
Scanner scan = new Scanner (System.in); System.out.println("Enter the string input:"); String input = scan.next(); int checksum = generateChecksum(input); System.out.println("The checksum generated is "+Integer.toHexString(checksum));
System.out.println("Enter the data to be sent:"); input = scan.next(); System.out.println("Enter the checksum to be sent:"); checksum = Integer.parseInt((scan.next()),16); receive(input,checksum); }
static int generateChecksum(String s) { String hex_value = new String(); int x,i,checksum=0; for(i=0; i <s.length()-2; i=i+2){
x = (int)(s.charAt(i)); hex_value = Integer.toHexString(x); x = (int)(s.charAt(i+1)); hex_value = hex_value + Integer.toHexString(x);
System.out.println(s.charAt(i)+""+s.charAt(i+1)+":"+hex_value); x=Integer.parseInt(hex_value,16); checksum+=x; }
if(s.length()%2==0){
x = (int)(s.charAt(i)); hex_value = Integer.toHexString(x); x = (int)(s.charAt(i+1)); hex_value = hex_value + Integer.toHexString(x);
System.out.println(s.charAt(i)+""+s.charAt(i+1)+":"+hex_value); x=Integer.parseInt(hex_value,16);
checksum+=x; }
else{
x =(int)(s.charAt(i)); hex_value= "00" + Integer.toHexString(x); x=Integer.parseInt(hex_value,16); System.out.println(s.charAt(i) + " : " + hex_value); }
checksum+=x; hex_value=Integer.toHexString(checksum); if(hex_value.length()>4){
int carry = Integer.parseInt(""+hex_value.charAt(0),16); hex_value=hex_value.substring(1,5); checksum=Integer.parseInt(hex_value,16); checksum+=carry; }
checksum = generateComplement(checksum); return checksum; }
static void receive (String s, int checksum){ int generated_Checksum = generateChecksum(s); generated_Checksum = generateComplement(generated_Checksum); int syndrome = generated_Checksum+checksum; syndrome = generateComplement(syndrome); System.out.println("Syndrome = " + Integer.toHexString(syndrome));
if(syndrome == 0) {
System.out.println("Data is received without error."); } else {
System.out.println("There is an error in the received data."); } }
static int generateComplement (int checksum){
checksum = Integer.parseInt("FFFF",16) - checksum;
return checksum;
}
}
Happy coding!! Enjoy!TERIMA KASIH ATAS KUNJUNGAN SAUDARA
Judul: Internet checksum program java
Ditulis oleh Unknown
Rating Blog 5 dari 5
Semoga artikel ini bermanfaat bagi saudara. Jika ingin mengutip, baik itu sebagian atau keseluruhan dari isi artikel ini harap menyertakan link dofollow ke https://android-reverb.blogspot.com/2013/12/internet-checksum-program-java.html. Terima kasih sudah singgah membaca artikel ini.Ditulis oleh Unknown
Rating Blog 5 dari 5
0 komentar:
Posting Komentar