Lớp II Các nhà thiên văn phân loại đối tượng trên vùng trời đang nghiên cứu theo cường độ

379

Với giải Câu F90 trang 52 SBT Tin học lớp 10 Cánh diều chi tiết trong Bài 17, 18: Thực hành lập trình giải bài toán trên máy tính giúp học sinh dễ dàng xem và so sánh lời giải từ đó biết cách làm bài tập trong SBT Tin học 10. Mời các bạn đón xem:

Giải SBT Tin học lớp 10 Bài 17, 18: Thực hành lập trình giải bài toán trên máy tính

Câu F90 trang 52 SBT Tin 10Lớp II

Các nhà thiên văn phân loại đối tượng trên vùng trời đang nghiên cứu theo cường độ bức xạ Gamma của chúng. Đối tượng thứ i có cường độ bức xạ gi, (glà số thực và lớn hơn 0, i= 1,2,..., n). Các đối tượng được phân thành từng lớp: lớp I gồm các đối tượng có cùng cường độ bức xạ Gamma lớn nhất; lớp II gồm các đối tượng có cùng cường độ bức xạ Gamma lớn thứ hai,...

Xác định số lượng đối tượng lớp II và cường độ bức xạ Gamma của đối tượng thuộc lớp này.

Em hãy lập trình giải bài toán trên. Trước khi lập trình cần tóm tắt bài toán, xác định thuật toán và cách tổ chức dữ liệu. Khi viết xong chương trình thì đề xuất thêm ít nhất hai bộ dữ liệu để kiểm thử chương trình.

Dữ liệu: Nhập vào từ thiết bị vào chuẩn gồm một dòng chứa các số thực dương g1, g2,…, gn.

Kết quả: Đưa ra thiết bị ra chuẩn trên một dòng, mỗi số cách nhau một dấu cách, số thứ nhất là số nguyên xác định số lượng đối tượng thuộc lớp II, số thứ hai là số thực xác định cường độ bức xạ của lớp II.

Ví dụ:

Input

Output

1.5  2.63  1.04  4.12  2.63  4.12  2.63

3  2.63

 

Trả lời:

Tóm tắt bài toán (Mô hình toán học)

Cho n số thực dương dương g1, g2,…, gn.

Yêu cầu: tìm giá trị lớn thứ hai của dãy số và số phần tử đạt giá trị này.

Thuật toán 1 và cách tổ chức dữ liệu

Bước 1. Nhập dữ liệu, lưu theo chỉ số bắt đầu từ 0 (dùng kiểu danh sách để chứa dãy số).

Bước 2. Sắp xếp dãy số theo thứ tự giảm dần.

Bước 3. Đếm số phần tử đạt max → k.

Bước 4. Đếm số phần tử có giá trị đạt gk

Bước 5. Đưa ra các giá trị tìm được.

Tham khảo chương trình sau:

Nhận xét: Chương trình trên đơn giản nhưng mất nhiều thời gian thực hiện vì phải sắp xếp

Thuật toán 2 và cách tổ chức dữ liệu

Bước 1. Nhập dữ liệu vào (dùng kiểu danh sách cho dãy số).

Bước 2. Tìm max của dãy số.

Bước 3. Xoá các phần tử bằng max.

Bước 4. Tìm max trong dãy số mới.

Bước 5. Đưa ra max và số phần tử đạt max.

Tham khảo chương trình sau:

Ví dụ một số bộ dữ liệu để kiểm thử chương trình:

Xem thêm lời giải sách bài tập Tin học 10 Cánh diều hay, chi tiết khác:

Câu F86 trang 50 SBT Tin 10Chia kẹo...

Câu F87 trang 50 SBT Tin 10Điểm dừng xe...

Câu F88 trang 51 SBT Tin 10Số bị thiếu...

Câu F89 trang 51 SBT Tin 10Trung vị...

Xem thêm các bài giải SBT Tin học lớp 10 Cánh diều hay, chi tiết khác:

SBT Tin học 10 Bài 16: Kiểm thử và gỡ lỗi chương trình

SBT Tin học 10 Bài 17, 18: Thực hành lập trình giải bài toán trên máy tính

Lý thuyết Tin học 10 Bài 18: Lập trình giải quyết bài toán trên máy tính

SBT Tin học 10 Bài 1, 2: Nhóm nghề thiết kế và lập trình - Dự án nhỏ: Tìm hiểu về nghề lập trình web, lập trình trò chơi và lập trình cho thiết bị di động

SBT Tin học 10 Bài 1, 2: Hệ nhị phân và ứng dụng - Thực hành về các phép toán bit và hệ nhị phân

Đánh giá

0

0 đánh giá