Cody

Solution 215369

Submitted on 10 Mar 2013 by Tim
  • Size: 59
  • This is the leading solution.
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
%% assert(double2half(2^(-24)) == uint16(1)) % Smallest number
2   Pass
%% assert(double2half(2^(-25)) == uint16(1)) % Rounds up to smallest number
3   Pass
%% assert(double2half(2^(-26)) == uint16(0)) % Rounds down to zero
4   Pass
%% assert(bin2dec('0 01111 0000000000') == double2half(1))
5   Pass
%% assert(bin2dec('0 01111 0000000001') == double2half(1 + 2^(-10)))
6   Pass
%% assert(bin2dec('1 10000 0000000000') == double2half(-2))
7   Pass
%% assert(bin2dec('0 11110 1111111111') == double2half(65504))
8   Pass
%% assert(bin2dec('0 00001 0000000000') == double2half(2^(-14)))
9   Pass
%% assert(bin2dec('0 00000 1111111111') == double2half(2^(-14) - 2^(-24)))
10   Pass
%% assert(bin2dec('0 00000 0000000001') == double2half(2^(-24)))
11   Pass
%% assert(bin2dec('0 00000 0000000000') == double2half(0))
12   Pass
%% assert(bin2dec('1 00000 0000000000') == double2half(-0))
13   Pass
%% assert(bin2dec('0 11111 0000000000') == double2half(inf))
14   Pass
%% assert(bin2dec('1 11111 0000000000') == double2half(-inf))
15   Pass
%% assert(bin2dec('0 01101 0101010101') == double2half(0.33325))