Viết chương trình tính và đưa ra màn hình tổng S=1+2+3 100

uses crt;var s,n:longint;beginclrscr;s:=0;n:=1;while s≥25 dobegins:=s+n;inc(n);end;writeln(s);writeln('So n nho nhat sao cho tong S≥25 la: ',n);readln;

end.

Câu hỏi: viết chương trình tính tổng s=1+1/2+1/3+...+1/n

Lời giải:

program tinhtong;

uses crt;

var i, n : integer; S : real;

begin

clrscr;

writeln('Nhap so thu n: '); readln(n);

S:=0; i:=1;

while i<=n do begin

S:=S+1/i; i:=i+1;

end;

writeln('Tong la: ',S:2:3);

readln

end.

Cùng Top lời giải ôn lại kiến thức để làm bài tốt hơn nhé!!!

1. Các công việc phải thực hiện

Trong cuộc sống hằng ngày, nhiều hoạt động được thực hiện lặp đi lặp lại nhiều lần.

Ví dụ:

+ Các ngày trong tuần các em đều lặp đi lặp lại hoạt động buổi sáng đến trường và buổi trưa trở về nhà

+ Các em học bài thì phải đọc đi đọc lại nhiều lần cho đến khi thuộc bài

Ví dụ số lần lặp biết trước:Các ngày trong tuần các em đều lặp đi lặp lại hoạt động buổi sáng đến trường và buổi trưa trở về nhà.

Ví dụ số lần lặp không biết trước:Trong một trận cầu lông các em lặp đi lặp lại công việc đánh cầu cho đến khi kết thúc trận cầu.

Tóm lại:Khi viết chương trình máy tính, trong nhiều trường hợp ta cũng phải viết lặp lại nhiều câu lệnh chỉ để thực hiện 1 phép tính nhất định.

2.Câu lệnh lặp- một lệnh thay cho nhiều lệnh

Ví dụ 1:Giả sử cần vẽ 3 hình vuông có cạnh 1 đơn vị. Mỗi hình vuông là ảnh dịch chuyển của hình bên trái nó một khoảng cách 2 đơn vị.

Thuật toán:

+ Bước 1. Vẽ hình vuông (vẽ liên tiếp bốn cạnh và trở về đỉnh ban đầu)

+ Bước 2. Nếu số hình vuông đã vẽ được ít hơn 3, di chuyển bút vẽ về bên phải 2 đơn vị và trở lại bước 1, ngược lại kết thúc thuật toán

Bài toán vẽ một hình vuông:

Thuật toán mô tả các bước để vẽ hình vuông:

+ Bước 1. k←0 (k là số đoạn thẳng đã vẽ được)

+ Bước 2. k←k+1. Vẽ đoạn thẳng 1 đơn vị độ dài và quay thước 900 sang phải

+ Bước 3. Nếu k < 4 thì trở lại Bước 2; Ngược lại, kết thúc thuật toán

Trong đó, biến k được sử dụng như là biến đếm để ghi lại số cạnh đã vẽ được.

Kết luận

- Cách mô tả các hoạt động lặp trong thuật toán như ví dụ trên được gọi là cấu trúc lặp

- Để chỉ thị cho máy tính thực hiện cấu trúc lặp với một câu lệnh gọi là câu lệnh lặp

3. Ví dụ về câu lệnh lặp

Cú pháp:

For< Biến đếm > := < Giá trị đầu >to< Giá trị cuối >do< Câu lệnh >;

Trong đó:

+ For, to, dolà các từ khóa

+ Biến đếm là biến kiểu nguyên

+ Giá trị đầu, giá trị cuối là các giá trị nguyên

Lưu ý:

+ Giá trị đầu phải nhỏ hơn giá trị cuối

+ Câu lệnh không làm thay đổi giá trị của biến đếm

+ Nếu câu lệnh nhiều hơn một lệnh thì phải đặt trong cặp Begin … end

Hoạt động của vòng lặp:

+ Bước 1: Biến đếm nhận giá trị đầu

+ Bước 2: Chương trình kiểm tra biểu thức điều kiện, nếu biểu thức điều kiện đúng thì thực hiện câu lệnh

+ Bước 3: Biến đếm tự động tăng lên 1 đơn vị và quay lại Bước 2

+ Bước 4: Nếu biểu thức điều kiện nhận giá trị sai thì thoát ra khỏi vòng lặp

Ví dụ 3:Chương trình sau sẽ in ra màn hình thứ tự lần lặp.

Chương trình mẫu:

PHP:

Ví dụ 4:In một chữ "O" trên màn hình.

Chương trình mẫu:

PHP:

4. Tính tổng và tích bằng câu lệnh lặp

Ví dụ 5:Chương trình sau đây sẽ tính tổng N số tự nhiên đầu tiên với N nhập từ bàn phím.

Chương trình mẫu:

PHP:

Ví dụ 6:Ta kí hiệu N! là tích N số tự nhiên đầu tiên: N! = 1.2.3…N.

Chương trình mẫu:

PHP:

Câu hỏi: Viết chương trình tính tổng S=1+2+3+...+n

Lời giải:

Cùng Top lời giải ôn lại lý thuyết cơ bản nhé

1. Bài toán và chương trình

- Bài toán là một công việc hay một nhiệm vụ cần phải giải quyết.

- Chẳng hạn, với bài toán ghi ra màn hình tổng của hai số a và b được gõ vào từ bàn phím, chương trình có thể gồm các lệnh như hình sau đây:

2. Bài toán và cách xác định bài toán

- Để phát biểu một bài toán cụ thể, người ta cần xác định rõ các điều kiện cho trước và kết quả cần thu được.

a. Ví dụ 1:Tính diện tích hình tam giác:

  • Điều kiện cho trước: Một cạnh và chiều cao tương ứng với cạnh đó;
  • Kết quả cần thu được: Diện tích hình tam giác.

b. Ví dụ 2:Xét bài toán nấu một món ăn

  • Điều kiện cho trước: Các thực phẩm hiện có (trứng, mỡ, mắm, muối, rau.)
  • Kết quả cần thu được: Một món ăn.

3.Quá trình giải bài toán trên máy tính

- Các bước để nhờ máy giải một bài toán:

  • Bước 1: Xác định bài toán là xác định (thông tin vào – INPUT) và kết quả cần xác định (thông tin ra – OUTPUT).
  • Bước 2: Thiết lập phương án giải quyết (xây dựng thuật toán) là tìm, lựa chọn thuật toán và mô tả nó bằng ngôn ngữ thông thường.
  • Bước 3: Viết chương trình (lập trình) là diễn đạt thuật toán bằng một ngôn ngữ lập trình sao cho máy tính có thể hiểu và thực hiện.​

4. Thuật toán và mô tả thuật toán

- Mô tả thuật toán là liệt kê các bước cần thiết để giải một bài toán.

- Ví dụ 1: Hãy xác định yêu cầu và mô tả việc nấu cơm dưới dạng thuật toán
Giải

  • INPUT: Gạo, nước, nồi cơm điện.
  • OUTPUT: Bát cơm ngon.
  • Mô tả thuật toán:
    • Bước 1. Vo gạo bằng nước.
    • Bước 2. Cho gạo vào nồi.
    • Bước 3. Cho nước ngập gạo.
    • Bước 4. Cắm điện.
    • Bước 5. Bát cơm ngon.

- Ví dụ 2: Bài toán "Chuẩn bị món trứng tráng"

  • INPUT: Trứng, dầu ăn, muối và hành.
  • OUTPUT: Trứng tráng.
  • Thuật toán:
    • Bước 1. Đập trứng, tách vỏ và cho trứng vào bát.
    • Bước 2. Cho ít muối và hành lá thái nhỏ. Dùng đũa khuấy mạnh cho đến khi đều.
    • Bước 3. Cho một thìa dầu ăn vào chảo, đun nóng đều rồi đổ trứng vào, đun trong khoảng 1 phút.
    • Bước 4. Lật mặt trên của miếng trứng úp xuống dưới, đun tiếp trong khoảng 1 phút.
    • Bước 5. Lấy trứng ra đĩa.

=>Thuật toán là dãy các thao tác cần thực hiện theo một trình tự xác định để thu được kết quả cần tìm từ những điều kiện cho trước.

5. Một số ví dụ về thuật toán

a. Ví dụ 1: Tính tổng của 100 số tự nhiên đầu tiên

1. Xác định bài toán:

  • INPUT: Dãy 100 số tự nhiên đầu tiên (từ 1 đến 100).
  • OUTPUT: Giá trị SUM = 1 + 2 + ...+ 100.

2. Mô tả thuật toán:

  • Bước 1: Gán SUM←0; i←1.
  • Bước 2: Gán i←i + 1.
  • Bước 3: Nếu i ≤ 100, thì SUM←SUM + i và chuyển lên bước 2. Trong trường hợp ngược lại (i > 100), kết thúc thuật toán.

b. Ví dụ 2: Tìm số lớn nhất trong dãy A các số a1, a2, ..., ancho trước.

- Xác định bài toán:

  • INPUT: Dãy A các số a1, a2, ..., an(n≥1).
  • OUTPUT: Giá trị SMAX= max {a1, a2, ..., an}.

- Mô tả thuật toán:

  • Bước 1: Nhập số n và dãy A; gán SMAX←a1; i←0;
  • Bước 2: i←i + 1;
  • Bước 3: Nếu i > n, kết thúc thuật toán (khi đó SMAXlà giá trị phần tử lớn nhất của dãy A). Trong trường hợp ngược lại (i ≠ n), thực hiện bước 4.
  • Bước 4: Nếu ai> SMAX, thay đổi giá trị SMAX:SMAX←airồi chuyển về bước 2. Trong trường hợp ngược lại (SMAX≥ai), giữ nguyên SMAXvà chuyển về bước 2.​