01/10/2018, 12:04

Nhờ sửa lỗi code in ra tổng các số nguyên

bài tập là Viết chương trình yêu cầu người dùng nhập
vào số nguyên dương n, sau đó in ra tổng các số nguyên
dương (bắt đầu từ 1) lớn nhất có thể sao cho tổng này
nhỏ hơn n. em muốn nó ra đáp án phai lam sao ạ. a c nào giúp em bài này với

Student X viết 14:17 ngày 01/10/2018

Thuật toán sai bạn nhé. xem lại thuật toán xem. đơn giản hơn bạn có thể tính tổng theo công thức sum = (n/2)*(n+1)

HK boy viết 14:10 ngày 01/10/2018

sum = (n/2)*(n+1)

Cái này cũng không hẳn đúng đâu. sum = (n * (n + 1)) / 2, vì n / 2 chưa chắc đã nguyên, mà không nên để n / 2 là 1 số thực, vì việc nhân sẽ trở nên vô nghĩa (thực * nguyên = thực, ép kiểu ngược lại sang nguyên chắc chắn sẽ sai số).

rogp10 viết 14:11 ngày 01/10/2018

Có thể chọn một trong hai mà (n+1)/2*n.

Student X viết 14:19 ngày 01/10/2018

ahihi. ngại quá mà. không để ý đến thứ tự phép toán.

Student X viết 14:08 ngày 01/10/2018

bác lại giống em rồi. tổng này chắc chắn là số nguyên. (n+1)/2 ở trường hợp n chẵn thì sẽ trả ra kết quả sai. em nghĩ tốt nhất để theo cách của sueruan012 là n*(n+1)/2 chắc okie ạ

Bài liên quan
0