• Chào mừng Bạn tham gia Diễn Đàn Kiến Thức tổng hợp No.1 VNKienThuc.com - Định hướng VN Kiến Thức
    -
    HÃY TẠO CHỦ ĐỀ KIẾN THỨC HỮU ÍCH VÀ CÙNG NHAU THẢO LUẬN

Cái biến dấu nó hoạt động ntn ạ?

Rose and Tear

New member
Xu
0
Tính tổng s= 1-2+3..... + (-1)n^n-1

B1: Nhập N
B2: i <- 1; S <- 0
B3: i < N
Đúng đến B3. Sai đến B5
B3: i <- i+1 ; S <- S+i
B4: S <- S+i.dau
dau <--- - dau
i <- i+1
Quay trở lại B3
B5: Kthúc

Mọi người xem giúp em thuật toán đúng không ạ ??
*Cái biến dấu nó hoạt động ntn ạ?? i thì luôn dương mà biến dau<- - dau thì làm sao để xuất hiện dấu cộng ạ ??

Em xin cảm ơn :)





 
B1: Nhập N
B2: i <- 1; S <- 0, dau<- 1;
B3: i < N Nếu sai đến B5 ( mặc định là nếu đúng tự xuống bước tiếp theo, nên bạn không cần ghi)
B4: S<- S+i.dau; dau<-dau*-1;i <- i+1;
Quay trở lại B3
B5: Đưa ra S rồi Kthúc

Quy trình của biến dau: sau lần lặp đầu tiên nó mang dấu dương. Thực hiện xong B4 nó sẽ trở thành dấu âm. vì dau= 1*-1 = -1. Nếu lặp lần tiếp theo nó lại mang dấu dương ( dau=-1*-1=1)
Cứ thế vòng lặp tiếp tục tới điều kiện
 
Thực sự thì mình không hiểu cái điều kiện lặp này lắm. Vì 1, 2, 3 nó đâu có theo cấu trúc (-1)n^n-1.òn

Còn về hoạt động của biến dấu, mình trả lời khác @KienVHT 1 chút. Trong dãy, dấu của các phép toán thay đổi lần lượt giữa cộng (+) và trừ (-). Ban đầu, dau được gán bằng 1. Thực hiện phép cộng đầu tiên. Sau đó, theo thực tế sẽ là dấu trừ (-). Khi đó, dau := -dau; có nghia dau = -1. Lấy kết quả i * dau sẽ là bằng -i, khi đó S + i*dau = S -i. Cứ tiếp tục, tới bước tiếp theo. dai := -dau; có nghĩa dau = - (-1) = 1. Khi này i*dau sẽ bằng i. S + i = S + i.

Có vẻ hơi khó hiểu, nếu bạn không hiểu cứ thắc mắc, mọi người sẽ cùng bàn luận nha!
 
Bài mình sai 1 chỗ: Kiểm tra điều Kiện i<N; đúng ra phải là i<=N;
Thứ nhất: theo đề bài bạn ý đưa ra là: S=1-2+3-4+5-....+ (-1)n^n-1
Tổng này luôn <0;
SD phương pháp cộng dồn, mỗi lần dồn vào S, biến dau thay đổi +-+-+-.... luôn luôn lặp.
Chạy thử luôn chương trình của mình nhé:
Giả sử nhập N=5
- Lần1: sau khi khởi tạo ta có: i=1;S=0;dau=1;
Kiểm tra: 1<5 ( đúng) thực hiện: S=S+i*dau =0+1*1 = 1;dau=dau*-1 = 1*-1=-1;i=i+1=2;
- Lần 2:i=2;S=1;dau=-1;
Kiểm tra: 2<2 ( đúng ) thực hiện: S=S+i*dau = 1+2*-1=1-2=-1; dau=dau*-1 = -1*-1=1; i=i+1=3;
- Lần 3: i=3;S=-1;dau=1;
Kiểm tra: .....

Các lần khác như vậy tới 5

Theo mình là bài của mình không có chỗ nào sai cả
 
Mình có nói bạn làm sai đâu bạn Kiên ơi, mình chỉ giải thích khác bạn 1 chút thôi. :D

Ở đây, mình nói là không rõ, ở chỗ: Nếu n = 5, có nghĩa (-1)n^n-1 sẽ cho ta số hạng là (-1)*5^5 - 1 = -3126 đúng không?
Thứ 1: Bài làm của bạn, chuỗi S mới chỉ là 1 - 2 + 3 - 4 + 5 -....+n đúng không
Thứ 2: Đề bài không rõ ràng, vì với 1, 2, 3 thì n bằng bao nhiêu? Có nghĩa, với n bằng bao nhiêu để S = 1 - 2 + 3?

Mọi người cùng trao đổi tiếp nè!
 
Sửa lần cuối bởi điều hành viên:

Chủ đề mới

VnKienthuc lúc này

Không có thành viên trực tuyến.

Định hướng

Diễn đàn VnKienthuc.com là nơi thảo luận và chia sẻ về mọi kiến thức hữu ích trong học tập và cuộc sống, khởi nghiệp, kinh doanh,...
Top