Bài thực hành số 5: Kỹ thuật xử lý mảng một chiều
Số trang: 11
Loại file: doc
Dung lượng: 101.50 KB
Lượt xem: 3
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Kiểu của mảng (của các phần tử của mảng), có thể là một kiểu dữliệu nào đó khác kiểu mảng.
Nội dung trích xuất từ tài liệu:
Bài thực hành số 5: Kỹ thuật xử lý mảng một chiềuBài thực hành số 5: Kỹ thuật xử lý mảng một chiều A. Mục tiêu Tổ chức tốt hệ thống menu chương trình Nắm vững các khái niệm, thao tác nhập xuất trên mảng một chiều Nắm vững một số kỹ thuật xử lý cơ bản trên mảng 1 chiều Rèn luyện cách gọi hàm, truyền tham số. B. Ôn tập: Cú pháp định nghĩa biến mảng, kiểu mảng. Các thao tác nhập xuất dữ liệu Các kỹ thuật xử lý mảng 1. Cú pháp khai báo (định nghĩa) biến mảng 1 chiều KDL Ten_Mang[KT];Trong đó: • KDL: Kiểu của mảng (của các phần tử của mảng), có thể là một kiểu dữ liệu nào đó khác kiểu mảng. • Ten_Mang: Tên của mảng (là một từ tự đặt, đặt theo qui ước đặt tên) • KT: một số nguyên dương 2. Cú pháp định nghĩa Kiểu mảng 1 chiều typedef KDL Ten_Mang[KT]; • Ten_Mang: trở thành tên của kiểu dữ liệu mảng 1 chiều 3. Các thao tác nhập xuất://Hàm nhập dữ liệu; MAX: là một giá trị hằng định nghĩa trướcvoid Nhap (int a[MAX], int n){ int i; for ( i = 0; i < n; i++) { coutLưu ý: a. đối với mảng 1 chiều, có 2 giá trị thường đi theo: • KT: kích thước khai báo, là một giá trị có trước, nên là một hằng định nghĩa trước. • n : Kích thước thực sự của mảng trong mỗi lần chạy chương trình (n 1. Tìm x có trong a ? Nếu có trả về 1, nếu không trả về 0.2. a có thứ tự tăng3. Max(a0,..,an-1): giá trị lớn nhất của dãy.4. CSDT_Max : Trả về chỉ số đầu tiên đạt max(a0,..,an-1)5. Thóat khỏi chương trình - Muốn thực hiện thao tác nào thì chọn chức năng tương ứng của menu .Thực hiện:Bước 1: Tạo Project với tên “Lab5_Vd1”.Bước 2: Tạo tập tin chương trình vd1.cppBước 3: Trong tập tin vd1.cpp, soạn code theo cấu trúc:#include #define MAX 1000using namespace std;//Cac ham menuvoid Menu();int ChonMenu();void XL_Menu(int a[MAX], int n, int Chon);//Cac ham nhap xuatvoid Nhap (int a[MAX], int n);void Xuat (int a[MAX], int n);//Cac ham chuc nangint Tim_x(int a[MAX], int n, int x);int Tang(int a[MAX], int n);int Max(int a[MAX], int n);int CSDT_Max(int a[MAX], int n);//---------------------------------------------------void main(){ int Chon, n, a[MAX]; coutn; Nhap (a, n); do { Chon = ChonMenu(); XL_Menu(a, n,Chon); } while(1);}void Menu(){ cout for(;;) { Menu(); cout>Chon; if (1 //void Xuat (int a[MAX], int n) : Tự viết//---------------------------------------------------//Tim x co trong mang : bt ORint Tim_x(int a[MAX], int n, int x){ int i, Kq = 0; for(i= 0; i < n; i++) if(a[i] == x) { Kq = 1; break; } return Kq;}//Kiem tra day tang : BT ANDint Tang(int a[MAX], int n){ int Kq, i; Kq = 1;//Day tang - AND for(i = 0; i < n-1; i++) if(a[i] > a[i+1]) { Kq = 0; break; } return Kq;}//Tim gia tri max cua day: Thu va saiint Max(int a[MAX], int n){ int i, Gt_Max; Gt_Max = a[0]; for(i = 1; i < n; i++) if(Gt_Max < a[i]) Gt_Max = a[i]; return Gt_Max;}//Tra ve chi so cua phan tu dau tien dat max: Thu va saiint CSDT_Max(int a[MAX], int n){ int Kq, i, Max; Kq = 0; Max = a[Kq]; for(i = 1; i < n; i++) if(Max < a[i]) { Kq = i; Max = a[Kq]; } return Kq;}Ví dụ 2: (Các bài toán Duyệt, Thử và sai) Viết chương trình thực hiện các thao tác trên dãy a gồm n số nguyên. Yêu cầucủa chương trình là : - In ra màn hình menu có các chức năng sau :1. Đếm số lần xuất hiện của x trong dãy a2. Tổng các phần tử trong dãy3. Tổng các số nguyên tố trong dãy4. Sắp theo yêu cầu: • Đầu dãy: Các số dương tăng dần • Tiếp theo: Các số âm giảm dần • Cuối cùng: Các số 05. Thóat khỏi chương trình - Muốn thực hiện thao tác nào thì chọn chức năng tương ứng của menu .Thực hiện:Bước 1: Tạo Project với tên “Lab5_Vd2”.Bước 2: Tạo tập tin chương trình vd2.cppBước 3: Trong tập tin vd2.cpp, soạn code theo cấu trúc://Duyet, THU VA SAI#include #include #define MAX 1000using namespace std;//Cac ham menuvoid Menu();int ChonMenu();void XL_Menu(int a[MAX], int n, int Chon);//Cac ham nhap xuatvoid Nhap (int a[MAX], int n);void Xuat (int a[MAX], int n);//Cac ham chuc nangint Dem_x(int a[MAX], int n, int x);int Tong(int a[MAX], int n);int Tong_NT(int a[MAX], int n);void Sap_D_A_0(int a[MAX], int n);//Cac ham bo troint Nt(int x);//-----------------------------------------------void main(){ int Chon, n, a[MAX]; coutn; Nhap (a, n); do { Chon = ChonMenu(); XL_Menu(a, n,Chon); } while(1);}void Menu(){ cout Sap_D_A_0(a,n); cout//Duyet cuc bo - Lap bangvoid Sap_D_A_0(int a[MAX], int n){ int i,j, t, Mc; for(i= 0; i < n-1; i++) for(j= i+1; j < n; j++) { Mc = ((a[i] < 0) && (a[j] < 0) && (a[i] < a[j])) || ...
Nội dung trích xuất từ tài liệu:
Bài thực hành số 5: Kỹ thuật xử lý mảng một chiềuBài thực hành số 5: Kỹ thuật xử lý mảng một chiều A. Mục tiêu Tổ chức tốt hệ thống menu chương trình Nắm vững các khái niệm, thao tác nhập xuất trên mảng một chiều Nắm vững một số kỹ thuật xử lý cơ bản trên mảng 1 chiều Rèn luyện cách gọi hàm, truyền tham số. B. Ôn tập: Cú pháp định nghĩa biến mảng, kiểu mảng. Các thao tác nhập xuất dữ liệu Các kỹ thuật xử lý mảng 1. Cú pháp khai báo (định nghĩa) biến mảng 1 chiều KDL Ten_Mang[KT];Trong đó: • KDL: Kiểu của mảng (của các phần tử của mảng), có thể là một kiểu dữ liệu nào đó khác kiểu mảng. • Ten_Mang: Tên của mảng (là một từ tự đặt, đặt theo qui ước đặt tên) • KT: một số nguyên dương 2. Cú pháp định nghĩa Kiểu mảng 1 chiều typedef KDL Ten_Mang[KT]; • Ten_Mang: trở thành tên của kiểu dữ liệu mảng 1 chiều 3. Các thao tác nhập xuất://Hàm nhập dữ liệu; MAX: là một giá trị hằng định nghĩa trướcvoid Nhap (int a[MAX], int n){ int i; for ( i = 0; i < n; i++) { coutLưu ý: a. đối với mảng 1 chiều, có 2 giá trị thường đi theo: • KT: kích thước khai báo, là một giá trị có trước, nên là một hằng định nghĩa trước. • n : Kích thước thực sự của mảng trong mỗi lần chạy chương trình (n 1. Tìm x có trong a ? Nếu có trả về 1, nếu không trả về 0.2. a có thứ tự tăng3. Max(a0,..,an-1): giá trị lớn nhất của dãy.4. CSDT_Max : Trả về chỉ số đầu tiên đạt max(a0,..,an-1)5. Thóat khỏi chương trình - Muốn thực hiện thao tác nào thì chọn chức năng tương ứng của menu .Thực hiện:Bước 1: Tạo Project với tên “Lab5_Vd1”.Bước 2: Tạo tập tin chương trình vd1.cppBước 3: Trong tập tin vd1.cpp, soạn code theo cấu trúc:#include #define MAX 1000using namespace std;//Cac ham menuvoid Menu();int ChonMenu();void XL_Menu(int a[MAX], int n, int Chon);//Cac ham nhap xuatvoid Nhap (int a[MAX], int n);void Xuat (int a[MAX], int n);//Cac ham chuc nangint Tim_x(int a[MAX], int n, int x);int Tang(int a[MAX], int n);int Max(int a[MAX], int n);int CSDT_Max(int a[MAX], int n);//---------------------------------------------------void main(){ int Chon, n, a[MAX]; coutn; Nhap (a, n); do { Chon = ChonMenu(); XL_Menu(a, n,Chon); } while(1);}void Menu(){ cout for(;;) { Menu(); cout>Chon; if (1 //void Xuat (int a[MAX], int n) : Tự viết//---------------------------------------------------//Tim x co trong mang : bt ORint Tim_x(int a[MAX], int n, int x){ int i, Kq = 0; for(i= 0; i < n; i++) if(a[i] == x) { Kq = 1; break; } return Kq;}//Kiem tra day tang : BT ANDint Tang(int a[MAX], int n){ int Kq, i; Kq = 1;//Day tang - AND for(i = 0; i < n-1; i++) if(a[i] > a[i+1]) { Kq = 0; break; } return Kq;}//Tim gia tri max cua day: Thu va saiint Max(int a[MAX], int n){ int i, Gt_Max; Gt_Max = a[0]; for(i = 1; i < n; i++) if(Gt_Max < a[i]) Gt_Max = a[i]; return Gt_Max;}//Tra ve chi so cua phan tu dau tien dat max: Thu va saiint CSDT_Max(int a[MAX], int n){ int Kq, i, Max; Kq = 0; Max = a[Kq]; for(i = 1; i < n; i++) if(Max < a[i]) { Kq = i; Max = a[Kq]; } return Kq;}Ví dụ 2: (Các bài toán Duyệt, Thử và sai) Viết chương trình thực hiện các thao tác trên dãy a gồm n số nguyên. Yêu cầucủa chương trình là : - In ra màn hình menu có các chức năng sau :1. Đếm số lần xuất hiện của x trong dãy a2. Tổng các phần tử trong dãy3. Tổng các số nguyên tố trong dãy4. Sắp theo yêu cầu: • Đầu dãy: Các số dương tăng dần • Tiếp theo: Các số âm giảm dần • Cuối cùng: Các số 05. Thóat khỏi chương trình - Muốn thực hiện thao tác nào thì chọn chức năng tương ứng của menu .Thực hiện:Bước 1: Tạo Project với tên “Lab5_Vd2”.Bước 2: Tạo tập tin chương trình vd2.cppBước 3: Trong tập tin vd2.cpp, soạn code theo cấu trúc://Duyet, THU VA SAI#include #include #define MAX 1000using namespace std;//Cac ham menuvoid Menu();int ChonMenu();void XL_Menu(int a[MAX], int n, int Chon);//Cac ham nhap xuatvoid Nhap (int a[MAX], int n);void Xuat (int a[MAX], int n);//Cac ham chuc nangint Dem_x(int a[MAX], int n, int x);int Tong(int a[MAX], int n);int Tong_NT(int a[MAX], int n);void Sap_D_A_0(int a[MAX], int n);//Cac ham bo troint Nt(int x);//-----------------------------------------------void main(){ int Chon, n, a[MAX]; coutn; Nhap (a, n); do { Chon = ChonMenu(); XL_Menu(a, n,Chon); } while(1);}void Menu(){ cout Sap_D_A_0(a,n); cout//Duyet cuc bo - Lap bangvoid Sap_D_A_0(int a[MAX], int n){ int i,j, t, Mc; for(i= 0; i < n-1; i++) for(j= i+1; j < n; j++) { Mc = ((a[i] < 0) && (a[j] < 0) && (a[i] < a[j])) || ...
Tìm kiếm theo từ khóa liên quan:
xử lý hình ảnh chương trình đồ họa thiết kế đồ họa giáo trình đồ họa xử lý mảng một chiềuGợi ý tài liệu liên quan:
-
Đề cương chi tiết học phần Thiết kế đồ họa (Graphic Designer)
12 trang 538 2 0 -
Đồ án tốt nghiệp Thiết kế đồ họa: Cụm thiết kế đồ họa quảng cáo cho shop giày Denah Sneaker
39 trang 275 0 0 -
5 trang 266 2 0
-
Ý tưởng lớn trong kỹ thuật thiết kế đồ họa: Phần 1
92 trang 264 1 0 -
60 trang 233 1 0
-
Để chụp ảnh biển đẹp và độc đáo
4 trang 231 0 0 -
Đồ án tốt nghiệp: Thiết kế nội thất khách sạn thuyền buồm
21 trang 198 0 0 -
43 trang 185 1 0
-
Tóm tắt Đồ án tốt nghiệp Thiết kế đồ họa: Cụm thiết kế đồ họa quảng bá hiệp hội bảo vệ động vật Peta
33 trang 178 1 0 -
182 trang 172 0 0