### $p_string (varchar(255)) will take the Hexadecimal values and will return the integer values
#### $lv_length (int) will evaluate the length of Hexadecimal value
### $lv_count (int) will always be 1 whenever it encounters a new row
### $lv_count value is incremented by 1 inside while loop
### $lv_sum (int), Initial sum is set to 0
### $lv_char (varchar(1)) will fetch the Hexadecimal value one by one from $p_string
#### $lv_num is the integer alue corresponding to Hexadecimal value
print( 'Value entering function is: '|| $p_string );
$p_string = upper( $p_string );
$lv_length = length( $p_string );
print( 'Length of string is: '|| $lv_length );
$lv_count = 1;
$lv_sum = 0;
while ( $lv_count <= $lv_length )
begin
$lv_char = substr( $p_string, -1*($lv_count) , 1 );
print( 'Hexadecimal number is: '|| $lv_char );
if ( $lv_char = ('A') )
begin
$lv_num = 10;
$lv_num = $lv_num*power( 16, $lv_count-1 );
print( 'Integer value of [$lv_char] is: '|| $lv_num );
end
else if ( $lv_char = ('B') )
begin
$lv_num = 11;
$lv_num = $lv_num*power( 16, $lv_count-1 );
print( 'Integer value of [$lv_char] is: '|| $lv_num );
end
else if ( $lv_char = ('C') )
begin
$lv_num = 12;
$lv_num = $lv_num*power( 16, $lv_count-1 );
print( 'Integer value of [$lv_char] is: '|| $lv_num );
end
else if ( $lv_char = ('D') )
begin
$lv_num = 13;
$lv_num = $lv_num*power( 16, $lv_count-1 );
print( 'Integer value of [$lv_char] is: '|| $lv_num );
end
else if ( $lv_char = ('E') )
begin
$lv_num = 14;
$lv_num = $lv_num*power( 16, $lv_count-1 );
print( 'Integer value of [$lv_char] is: '|| $lv_num );
end
else if ( $lv_char = ('F') )
begin
$lv_num = 15;
$lv_num = $lv_num*power( 16, $lv_count-1 );
print( 'Integer value of [$lv_char] is: '|| $lv_num );
end
else if ( $lv_char in (0,1,2,3,4,5,6,7,8,9))
begin
$lv_num = $lv_char ;
$lv_num = $lv_num*power( 16, $lv_count-1 );
print( 'Integer value of [$lv_char] is: '|| $lv_num );
end
else if ( $lv_char not in (0,1,2,3,4,5,6,7,8,9,'A','B','C','D','E','F'))
begin
$lv_num = 0;
print( 'This is not Hexadecimal number: '|| $lv_char );
end
$lv_sum = $lv_num + $lv_sum ;
print( 'Sum is: '|| $lv_sum );
$lv_count = $lv_count + 1;
end
$p_string = $lv_sum ;
print( 'Integer is: '|| $p_string );
Return $p_string;
### Return value of $p_string is converted into int ######
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
7 | |
5 | |
5 | |
5 | |
5 | |
4 | |
4 | |
4 | |
3 | |
3 |