How to Design Programs phần 8

Để hiểu được vấn đề, tốt nhất là để đồng ý trên một lược đồ đại diện cố định và thử nghiệm với các cơ quan đại diện số. Chúng ta hãy đại diện cho một số kích thước cố định với một cấu trúc có ba lĩnh vực: (xác định cấu trúc inex (phần định trị ký số mũ)) | To understand the problems it is best to agree on a fixed representation schema and to experiment with the number representations. Let s represent a fixed-size number with a structure that has three fields define-struct inex mantissa sign exponent The first and last field contain the mantissa and exponent of the number the sign field is 1 or -1 and represents the sign of the exponent. This sign field enables us to represent numbers between 0 and 1. Here is the data definition An inex is a structure make-inex m s e where m and e are natural numbers in 0 99 and s is 1 or -1. Because the conditions on the fields of an inex structure are so stringent we use the function create-inex to create these structures. Figure 94 contains the function d inex which is a generalized constructor that is a checked constructor se figure also defines the function inex- number which turns inexs int principles of our new notation. create-inex 12 1 2 create-inex 20 inition for create-section . The bers according to the e arguments don t satisfy the stated data contract. For other equivalents. One example is Let s translate the above example 12 0 0 into our S The alternative representation 10 in our Scheme world however. If we evaluate we get an error message b numbers though we can fi which we can express as ause two inex create-inex 50 -1 and create-inex 5 -1 19 Confirm the equivalence of these two representations with inex- number. The range of inex numbers is vast define MAX-POSITIVE make-inex 99 1 99 define MIN-POSITIVE make-inex 1 -1 99 That is we can represent large numbers that consist of up to 101 digits in the standard decimal notation we can also represent small positive fractions smaller than 1 down to the fraction 1 over 10. 0 with 99 zeros. The appearances however are deceiving. Not all real numbers in the range between 0 and MAX-POSITIVE can be translated into an inex structure. In particular any positive number less than -394- TEAM FLY PRESENTS 10

Không thể tạo bản xem trước, hãy bấm tải xuống
TÀI LIỆU MỚI ĐĂNG
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.