diff options
Diffstat (limited to '462/CH2/EX2.3.d/ex2_3_d.sce')
-rwxr-xr-x | 462/CH2/EX2.3.d/ex2_3_d.sce | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/462/CH2/EX2.3.d/ex2_3_d.sce b/462/CH2/EX2.3.d/ex2_3_d.sce new file mode 100755 index 000000000..2896b8e09 --- /dev/null +++ b/462/CH2/EX2.3.d/ex2_3_d.sce @@ -0,0 +1,53 @@ +//example 2.3(d)//
+clc
+//clears the command window//
+clear
+//clears//
+p =1;
+//initialising//
+q =1;
+z =0;
+b =0;
+w =0;
+f =0;
+//bin= input ( ” Enter the binary no to be converted to its decimal equivalent : ”)
+//accepting the binary input from user//
+bin =0.10101;
+d = modulo(bin,1) ;
+//separating the decimal part and the integer part//
+d= d *10^10;
+a = floor(bin) ;
+//removing the decimal part//
+while (a >0)
+// Loop to take the binary bits of integer into a matrix//
+r = modulo (a ,10) ;
+b(1,q) = r ;
+a=a/10;
+a=floor( a ) ;
+q = q +1;
+end
+for m =1: q -1
+// multipliying the bits of integer with their position values and adding//
+c=m -1;
+f=f+b(1,m)*(2^c);
+end
+while (d >0)
+ // Loop to take the binary bits of decimal into a matrix//
+ e = modulo (d ,2)
+ w (1 , p ) = e
+ d = d /10;
+ d = floor ( d )
+ p = p +1;
+ end
+for n =1: p -1
+//multipliying the bits of decimal with their position values and adding//
+z = z + w (1 , n ) *(0.5) ^(11 - n ) ;
+end
+z = z *10000;
+//rounding of to 4 decimal values//
+z = round ( z ) ;
+z = z /10000;
+x=f+z;
+disp('The Decimal equivalent of the Binary number given is');
+disp(x);
+//Displaying the final result//
\ No newline at end of file |