Lập trình Scratch giải bài toán dãy các số tự nhiên từ 1 đến n
Hôm nay có một bạn hỏi mình bài toán dãy các số tự nhiên từ 1 đến n như sau. Dưới đây sẽ là hướng dẫn thuật toán tính tổng dãy số từ 1 đến n mới nhất của onthihsg hãy cùng tham khảo nhé.
Video hướng dẫn chia các số tự nhiên từ 1 đến 100
Đề bài tính tổng từ 1 đến n
Cho dãy số 1; 2 ; 3; 4 ; 5 ; 6; 7; 8; 9; 10 ; … n
Em hãy sử dụng phần mềm Scratch để thực hiện các yêu cầu sau:
- Nhập vào n số lượng phần tử của dãy số
- Xuất ra dãy số
- Tính tổng các số lẻ chia hết cho 5 của dãy số rồi xuất kết quả ra màn hình.
- Lưu vào thư mục bài thi của em với tên dayso.sb2
Bây giờ mình sẽ hướng dẫn các bạn cách giải bài toán này trên Scratch nha
Viết chương trình tính tổng các số lẻ từ 1 đến n
Thuật toán tính tổng dãy số từ 1 đến n
Các bước viết chương trình tính tổng các số lẻ từ 1 đến n
Bước 1: Tạo các biến cần thiết
Bạn hãy tạo hai biến:
- Tổng: Để lưu tổng các số lẻ chia hết cho 5 của dãy số
- i: Để can thiệp và đếm số thứ tự các số trong danh sách
Và một danh sách: “Danh sách” để lưu các số từ 1 đến n
Bước 2: Nhập liệu cho dãy số
Bạn hãy kéo thả đoạn lệnh trên. Sau đây mình sẽ giải thích một chút cho các bạn hiểu;
- Lệnh xoá tất cả trong dãy số giúp khi chạy chương trình xoá bỏ toàn bộ các số trong danh sách đã được tạo ra lần chạy trước.
- Cho ẩn dãy số đi khi người dùng nhập n sẽ hay hơn, sau khi nhập n cho hiện lại dãy số.
- Biến “trả lời” mặc định của chương trình sẽ lưu giá trị n khi người dùng trả lời câu hỏi trong lệnh hỏi màu xanh.
Bây giờ bạn chạy thử và nhập n = 6 ta có kết quả sau:
Bước 3: Lập trình tính tổng các số lẻ chia hết cho 5 của dãy số
Tiếp theo bạn tạo tiếp các lệnh sau nối vào khối lệnh trên
Ở đây mình dùng kĩ thuật cộng gom, lúc đầu đặt biến tổng là 0 trong vòng lặp duyệt qua tất cả các phần tử của danh sách. Nếu phần tử nào lẻ và chia hết cho 5 thì cộng gom vào tổng.
Giải thích thêm một chút:
- Lệnh: Phần tử i của dãy số mod 2 = 1 : Kiểm tra xem số có phải là số lẻ không
- Lệnh: Phần tử i của dãy số mod 5 = 0 : Kiểm tra xem số có chia hết cho 5 không
Và kết quả khi chạy với n = 21 như sau:
Rõ ràng là tổng các số lẻ và chia hết cho 5 trong dãy từ 1 đến 21 là: 5 + 15 = 20 đúng không nào.
Thuật toán tính tích dãy số từ 1 đến n
Viết thuật toán tính tổng các số chia hết cho 3 và 5
Chương trình :
Uses crt;
Var s, i, n: longint;
Begin
Clrscr;
Write(‘Nhap n = ‘); readln(n);
s:=0;
For i:=1 to n do if (i mod 3 = 0) and (i mod 5 = 0) then inc(s,i);
Writeln(‘Tong = ‘,s:4:2);
Readln
End.
Vậy là mình đã hướng dẫn xong cho bạn rồi nha. Chúc bạn thành công và hãy xem thêm: