Skkn lớp các bài toán cơ bản trên mảng một chiều lập trình bằng ngôn ngữ c++

92 5 0
Skkn lớp các bài toán cơ bản trên mảng một chiều lập trình bằng ngôn ngữ c++

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC LỤC ĐẶT VẤN ĐỀ 1 Lý chọn đề tài 2 Cấu trúc nội dung Mục đích nghiên cứu Phương pháp nghiên cứu Giới hạn phạm vi nghiên cứu đề tài NỘI DUNG PHẦN KIẾN THỨC VỀ MẢNG MỘT CHIỀU I Khái niệm II Cách khai báo III Cách truy nhập đến phần tử mảng IV Cách nhập/xuất mảng V Mợt số tḥt tốn bản mảng một chiều PHẦN II BÀI TẬP 12 Bài tập chủ đề tìm giá trị nhỏ nhất, lớn nhất 12 Bài tập chủ đề xếp mảng 17 Bài tập chủ tìm kiếm mảng 24 Bài tập chủ đề tìm đoạn dài nhất thỏa mãn điều kiện cho trước 36 Bài tập chủ đề cắt mảng thành K đoạn thỏa mãn điều kiện cho trước 42 KẾT QUẢ ÁP DỤNG 44 KẾT LUẬN 44 TÀI LIỆU THAM KHẢO 45 PHỤ LỤC: HƯỚNG DẪN VÀ CHƯƠNG TRÌNH MẪU 46 Bài tập chủ đề tìm giá trị nhỏ nhất, lớn nhất 46 Bài tập chủ đề xếp mảng 53 Bài tập chủ đề tìm kiếm mảng 60 Bài tập chủ đề tìm đoạn dài nhất thỏa mãn điều kiện cho trước 80 Bài tập chủ đề cắt mảng thành K đoạn thỏa mãn điều kiện cho trước 89 skkn ĐẶT VẤN ĐỀ Lý chọn đề tài Mảng chiều là cấu trúc liệu đầu tiên và là cấu trúc liệu đơn giản phổ biến nhất Mảng chiều giúp giải quyết nhiều lớp bài tốn Vì vậy, sử dụng nhiều kỳ thi học sinh giỏi Tin học Với nhiều năm tham gia giảng dạy, bồi dưỡng học sinh giỏi và việc nghiên cứu vấn đề về lập trình theo dạng bài tập từ bản đến phức tạp ngơn ngữ lập trình C++, tài liệu về phương pháp giảng dạy phục vụ cho việc học tập, ôn thi học sinh giỏi học sinh giảng dạy giáo viên Từ đó, tơi viết sáng kiến kinh nghiệm với đề tài “Lớp các bài toán mảng chiều lập trình ngơn ngữ C++” Với mong muốn phần nào giúp học sinh giáo viên có tài liệu tham khảo phục vụ cho việc học tập và giảng dạy Cấu trúc nội dung Phần Kiến thức về Mảng chiều Khái niệm về mảng một chiều Khai báo mảng Truy nhập phần tử mảng Nhập/xuất mảng Mợt số tḥt tốn bản mảng chiều Phần Bài tập Tìm giá trị nhỏ nhất, giá trị lớn nhất Sắp xếp mảng Tìm kiếm mảng Tìm đoạn dài nhất thỏa mãn điều kiện cho trước Cắt mảng thành K đoạn thỏa mãn điều kiện cho trước Mục đích nghiên cứu Trong trình nghiên cứu và giảng dạy, tơi nhận thấy ngơn ngữ lập trình C++ cung cấp nhiều thư viện nên rất tiện lợi q trình lập trình giải bài tốn, đồng thời lớp bài toán mảng chiều vận dụng nhiều lập trình Vì vậy, tơi viết đề tài này với mục đích: - Thứ nhất, trao đổi với đồng nghiệp về việc vận dụng ngơn ngữ C++ việc lập trình - Thứ hai, là tài liệu cho giáo viên phục vụ giảng dạy, bồi dưỡng HSG skkn Phương pháp nghiên cứu Kinh nghiệm bản thân, thảo luận, sưu tầm tài liệu, thử nghiệm thực tế, rút kinh nghiệm từ tiết dạy lớp Giới hạn phạm vi nghiên cứu đề tài Đề tài chủ yếu nghiên cứu hệ thống lớp bài toán bản mảng chiều lập trình bằng ngơn ngữ C++ Đề tài có khả áp dụng rợng rãi vào giảng dạy, bồi dưỡng học sinh giỏi Tin học cho giáo viên và học sinh THCS, THPT địa bàn toàn tỉnh Nghệ An skkn NỘI DUNG Việc nắm vững lý thút về mảng mợt chiều bài tốn bản mảng một chiều là điều rất quan trọng, là sở để em học sinh vận dụng giải quyết toán phức tạp nâng cao Sau đây, tơi xin trình bày kiến thức và bài tập bản về mảng chiều sử dụng ngơn ngữ lập trình C++ mà tơi tìm hiểu vận dụng có hiệu quả trình giảng dạy PHẦN KIẾN THỨC VỀ MẢNG MỢT CHIỀU I Khái niệm Mảng mợt chiều dãy hữu hạn phần tử có kiểu liệu Khi nói đến mảng ta cần xác định được: - Kiểu liệu phần tử mảng - Số phần tử mảng II Cách khai báo Khai báo khơng có khởi tạo [Số phần tử]; Ví dụ: int a[5]; float b[10]; Khai báo có khởi tạo [Số phần tử] = {dãy giá trị}; Hoặc: [ ] = {dãy giá trị} ; (Lưu ý: Trong trường hợp khơng khai báo số phần tử mảng mảng vừa đủ lớn để giữ giá trị khởi tạo) Trong đó: - Tên kiểu liệu: kiểu liệu bản kiểu liệu có cấu trúc - Tên biến mảng: người dùng đặt theo quy tắc đặt tên - Số phần tử: kích thước mảng Ví dụ: float x[5]={3,5,7,2,1}; int a[ ] = {0, 2, 4, 6, 8}; III Cách truy nhập đến phần tử mảng [Chỉ số] Ví dụ: int a[5] 3 skkn a[1] = 3; a[3]= 7; Lưu ý: - Mảng C++ đánh số bắt đầu từ - Khi khai báo mảng cần khai báo số phần tử thừa IV Cách nhập/xuất mảng 4.1 Nhập mảng Cách 1: Biết số phần tử mảng cin>>n; for (int i = ; i < n; i++) cin>>a[i]; Cách 2: Chưa biết số phần tử mảng int x, n = 0; while (cin >> x) { n++; a[n] = x; } 4.2 Xuất mảng: for (int i=1 ; i

Ngày đăng: 09/02/2023, 14:10

Tài liệu cùng người dùng

Tài liệu liên quan