Trang chủ Tin Học Lớp 10 Viết thuật toán: cho dãy gồm N số nguyên từ...

Viết thuật toán: cho dãy gồm N số nguyên từ a1 đến an .cho biết trong dãy có bao nhiêu số có giá trị dương? câu hỏi 65175 - hoctapsgk.com

Câu hỏi :

Viết thuật toán: cho dãy gồm N số nguyên từ a1 đến an .cho biết trong dãy có bao nhiêu số có giá trị dương?

Lời giải 1 :

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

Input: Dãy A gồm N số nguyên a1, a2..., aN ;

Output: Số số hạng trong dãy A có giá trị lớn hơn 0.

Ý tưởng: Tìm kiếm tuần tự được thực hiện một cách tự nhiên. Ta dùng biến đếm k để đếm số số hạng trong dãy A có giá trị lớn hơn 0. Bắt đầu từ i = 0 và mỗi lần tăng i lên 1, ta lần lượt so sánh ai > 0?, nếu ai > 0 thì tăng k lên 1, tiếp tục quá trình cho đến khi i > N thì đưa ra kết quả k và kết thúc.

Cách liệt kê

Bước 1. Nhập N, các số hạng a1, a2..., aN

Bước 2. i = 0, k= 0,

Bước 3. Nếu ai > 0 thì k = k+1;

Bước 4. i = i + 1

Bước 5: Nếu i > N thì đưa ra giá trị k, rồi kết thúc;

Bước 6. Quay lại bước 3.

image

Thảo luận

-- đáp án trên đã đúng chưa ạ
-- anh ơi muốn lên chuyên gia phải làm sao ạ? Anh chỉ hộ em với
-- em muốn lắm r nhưng k dc
-- ad ơi cho em hỏi là em muốn làm thành viên biệt đội hăng hái nhưng ko bik lm thế nào ad có thể chỉ em ko ạ??
-- Các anh cho em xin xác thực nhé hehe
-- vào nhóm ko ạ
-- Em chào anh Tuệ ạ Em xin hỏi là em muốn tự khoá acc thì làm như thế nào ạ ?
-- Ad ơi xác thực cho em `1` câu đi ạ

Lời giải 2 :

Input: n, dãy A.

Output: Số số có giá trị dương.

Thuật toán:

Bước 1: i ← 1; d ← 0.

Bước 2:

- Nhập A[i]. 

- Nếu A[i]>0 thì d ← d+1.

Bước 3: i ← i+1.

Bước 4: Nếu i<=n quay lại bước 2. Ngược lại chuyển đến bước 5.

Bước 5: Thông báo d và kết thúc thuật toán.

***Tham khảo thêm:

Hoạt động của thuật toán:

Bước 1: Gán i = 1; d = 0.

Bước 2:

- Nhập A[1] đến A[n].

- Sau mỗi lần nhập, chương trình sẽ kiểm tra: nếu số vừa nhập lớp hơn 0 thì giá trị d tăng thêm 1 đơn vị. (Đếm giá trị).

Bước 3: Sau mỗi vòng lặp, biến đếm tăng thêm 1 đơn vị.

Bước 4: Nếu i ≤ n (điều kiện đúng) thì quay lại thực hiện tiếp câu lệnh. Ngược lại (điều kiện sai) thì chuyển tới bước tiếp theo.

Bước 5: Thông báo số số có giá trị dương có trong dãy và kết thúc thuật toán.

Cách viết chương trình:

- Sử dụng mảng 1 chiều.

   + Cú pháp: var <tên biến mảng>: array[<chỉ số đầu>..<chỉ số cuối>] of <kiểu dữ liệu>;

   + Tên biến mảng tự đặt (tuân theo quy tắc đặt tên).

   + Chỉ số đầu và chỉ số cuối là kiểu số nguyên. Chỉ số đầu là giá trị 1, chỉ số cuối có thể là 100; 500; 1000;....

   + Trong bài, sử dụng kiểu dữ liệu là integer.

- Sử dụng lệnh lặp với số lần biết trước (có thể dùng lệnh lặp chưa biết trước).

   + Cú pháp: for <biến đếm>:=<giá trị đầu> to <giá trị cuối> do <câu lệnh>;

   + Giá trị đầu và giá trị cuối là kiểu số nguyên. Giá trị đầu là giá trị 1, giá trị cuối là n.

- Câu lệnh kiểm tra: if <tên mảng>[<biến đếm>]>0 then <giá trị đếm>:=<giá trị đếm>+1;

Viết chương trình:

program phuont;

uses crt;

  var A: array[1..500] of integer;

        i, n, d: integer;

begin

       clrscr;

       write('Nhap n = '); readln(n);

       d:=0;

       for i:=1 to n do

       begin

                write('A[', i, '] = '); readln(A[i]);

                if A[i]>0 then d:=d+1;

       end;

       write('Co ', d, ' so co gia tri duong');

       readln

end.

Bạn có biết?

Tin học, tiếng Anh: informatics, tiếng Pháp: informatique, là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng (ảo). Với cách hiểu hiện nay, tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin.

Nguồn : Wikipedia - Bách khoa toàn thư

Tâm sự 10

Lớp 10 - Năm thứ nhất ở cấp trung học phổ thông, năm đầu tiên nên có nhiều bạn bè mới đến từ những nơi xa hơn vì ngôi trường mới lại mỗi lúc lại xa nhà mình hơn. Được biết bên ngoài kia là một thế giới mới to và nhiều điều thú vị, một trang mới đang chò đợi chúng ta.

Nguồn : ADMIN :))

Copyright © 2021 HOCTAP247