01/10/2018, 08:31
Giải bài tập pascal giúp mình!
Đề bài là in ra các số hoàn thiện từ 1 đến n (n nhập vào ), lúc mình code xong chạy ctrinh, mình nhập vào số 6 rồi enter thì chương trình ko in ra gì cả mà chỉ có con trỏ nhấp nháy mãi, không enter đc, cho mình hỏi mình code sai chỗ nào ?
Bài liên quan
Bạn cho cái vòng while nhỏ công với m := m + 1; vào trong một khối begin-end đi xem nào?
Mà thực ra mình cũng chưa hiểu thuật toán của bạn là gì
Số hoàn hảo là như nào hả bạn
Thêm nữa là bạn nên dùng FreePascal, mình nghĩ vậy, và sử dụng trình soạn thảo hay IDE khác để thuận tiện hơn. Code trên nền DOS kiểu này mệt và khó nhìn lắm.
Bạn quên khởi tạo lại i sau khi m thay đổi và ném biến tong ra ngoài vòng while i<m nhé. Trước dòng while i < m thì bạn thêm i := 1 vào.
À mà nhắc bạn luôn là nếu viết được for thì cứ viết for để debug cho dễ. Chứ viết while thì khó debug lắm. Chỉ viết while khi mình không chắc chắn về điều kiện dừng của vòng lặp thôi.
Cộng ước lại nếu bằng đúng số đó thì là nó. Dùng bảng tra là nhanh nhất vì có mấy số thôi. Nếu muốn thành bài thì đề phải là tính ước.
@thớt: thôi viết lại từ đầu vậy, nhìn vầy rối lắm, nếu kêu chỉ lỗi thì mình chỉ vậy thôi.
Thử cách này đi, chắc đọc dễ hiểu hơn
Bạn để cái Tong :=0 ra ngoài vòng while do thứ 2 là được =)))
thanks all đã giải đc :)))