giao-trinh-tu-hoc-flash

Page 50

trace(Math.random()); Kết quả trả về đại loại giống như 0.023268056102097, nhưng mỗi lần lại khác nhau. Một ví dụ khác là bạn cần tạo một số ngẫu nhiên từ 1 đến 10, việc này rất đơn giản, chỉ cần nhân thêm số ngẫu nhiên cho 10. Đoạn code sau sẽ cho ta con số ngẫu nhiên từ 0.0 đến 10.0 CODE trace(Math.random() * 10); Nhưng cái chúng ta cần là con số ngẫu nhiên từ 1.0 đến 10.0 chứ không phải từ 0.0 đến 10.0, vì thế, hãy cộng thêm 1 CODE trace(Math.random() * 10 + 1); Bây giờ thì kết quả trả về là 1.0 đến 11.0 nhưng sẽ không có kết quả 11.0. Hãy sử dụng hàm Math.floor để làm tròn xuống. CODE trace(Math.floor(Math.random() * 10 + 1));

Thật ra thì con số ngẫu nhiên trong máy tính cũng chưa thật sự ngẫu nhiên. Bởi vì nó không thật sự thay đổi trong bộ vi xử lý. Thay vào đó sẽ có một con số chuẩn, một con số nào đó không biết trước được như là giờ hoặc phút… của hệ thống, con số này sẽ được đưa và một biểu thức rất phức tạp, rất rất phức tạp mà chúng ta không thể đoán được. Kết quả trả về cho chúng ta kết quả dường như là ngẫu nhiên. Kết quả này sẽ được đưa và một hàm tính một lần nữa là lưu lại thành con số chuẩn để tính ngẫu nhiên cho lần tiếp theo. Hãy nghĩ về điều này, số ngẫu nhiên trong đời sống thật sự cũng không thật sự ngẫu nhiên. Nếu chúng ta giữ một mặt của con xúc xắc, thẩy đúng theo một hướng thật chính xác, chúng ta sẽ có cùng một kết quả Được rồi, bây giờ hãy thử tạo một số ngẫu nhiên từ 3 đến 7. Làm thế nào đây? Ah, có một thủ thuật cho bạn đây: CODE trace(Math.floor(Math.random() * 5 + 3); Trong phạm vi từ 3 đến 7 sẽ có tất cả là 5 số nguyên 3, 4, 5, 6, và 7. Thế còn trong phạm vi từ 50 đến 100 thì sao CODE trace(Math.floor(Math.random() * 51 + 50);


Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.