1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 | #include <iostream> using namespace std; #define MAX 100 //MẢNG 2 CHIỀU - MA TRẬN VUÔNG // 1. NHẬP SỐ PHẦN TỬ CỦA MA TRẬN void NhapN(int &N) { do { cout << "Nhap N = "; cin >> N; if (N <= 0 || N > MAX) cout << "Nhap sai xin vui long nhap lai!!!\n"; } while (N <= 0 || N > MAX); } // 2. NHẬP MA TRẬN void Nhap_MaTran(int A[][MAX], int N) { for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { cout << "A["<<i<<"]["<<j<<"] = "; cin>>A[i][j]; } } } // 3. XUẤT MA TRẬN void Xuat_MaTran(int A[][MAX], int N) { for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { cout << A[i][j] << "\t"; } cout << "\n"; } } // TÍNH TOÁN // 1. Khai báo biến Tổng // 2.Duyệt bởi 2 vòng lặp // 2.1 Nếu // Tăng tổng // 3. Trả về tổng //320 Tổng các số dương trong ma trận thực int Tong_Duong(int A[][MAX], int N) { int S = 0; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { if (A[i][j] > 0) S += A[i][j]; } } return S; } //321 Tích các số lẻ trong ma trận nguyên int Tich_Le(int A[][MAX], int N) { int P = 1; for (int i = 0; i < N; i++) { for (int j = 0; j < N; j++) { if (A[i][j] % 2 != 0) P *= A[i][j]; } } return P; } //322 Tổng giá trị trên 1 dòng ma trận thực // VD: // 1 3 4 ==> 8 // 4 5 1 ==> 10 // 1 4 2 ==> 7 int Tong_Dong_BK(int A[][MAX], int N, int dong) { int S = 0; for (int j = 0; j < N; j++) { S += A[dong][j]; } return S; } void Xuat_Tong_Dong(int A[][MAX], int N) { for (int i = 0; i < N; i++) { int kq = Tong_Dong_BK(A, N, i); cout << "Tong dong thu " << i << " la " << kq<<"\n"; } } //323 Tích giá trị dương trên 1 cột ma trận thực int Tich_Cot_Duong_BK(int A[][MAX], int N, int cot) { int P = 1; for (int i = 0; i < N; i++) { if (A[i][cot] > 0) P *= A[i][cot]; } return P; } void Xuat_Tich_Cot_Duong(int A[][MAX], int N) { for (int j = 0; j < N; j++) { int kq = Tich_Cot_Duong_BK(A, N, j); cout << "Tich cot duong thu " << j << " la " << kq << "\n"; } } //324 Tổng giá trị dương trên 1 dòng ma trận thực int Tong_Dong_Duong_BK(int A[][MAX], int N, int dong) { int S = 0; for (int j = 0; j < N; j++) { if (A[dong][j]> 0) S += A[dong][j]; } return S; } void Xuat_Tong_Dong_Duong(int A[][MAX], int N) { for (int i = 0; i < N; i++) { int kq = Tong_Dong_Duong_BK(A, N, i); cout << "Tong dong thu " << i << " la " << kq << "\n"; } } void main() { int A[MAX][MAX], N = 0; // Nhập số phần tử của ma trận NhapN(N); // Nhập ma trận Nhap_MaTran(A, N); // Xuất ma trận cout << "Ma tran ban dau gom : \n"; Xuat_MaTran(A, N); cout << "\n"; int kq_Tongduong = Tong_Duong(A, N); cout << "BAI TAP 320 : Tong duong la " << kq_Tongduong; cout << "\n"; int kq_Tichle = Tich_Le(A, N); cout << "BAI TAP 321 : Tich le la " << kq_Tichle; cout << "\n"; cout << "BAI TAP 322 tong dong la \n"; Xuat_Tong_Dong(A, N); cout << "\n"; cout << "BAI TAP 323 Tich cot duong la \n"; Xuat_Tich_Cot_Duong(A, N); cout << "\n"; cout << "BAI TAP 324 Tong dong duong la \n"; Xuat_Tong_Dong_Duong(A, N); cout << "\n"; } |
Lập trình máy tính (gọi tắt là lập trình; tiếng Anh: programming) là kỹ thuật cài đặt một hoặc nhiều thuật toán trừu tượng có liên quan với nhau bằng một hoặc nhiều ngôn ngữ lập trình để tạo ra một chương trình máy tính. Lập trình có các thành tố nghệ thuật, khoa học, toán học, và kỹ nghệ. Lập trình nhiều thì bạn sẽ thấy niềm vui và sự hứng thú torng đó. CNTT lập trình tuyệt vời.
Thứ Hai, 2 tháng 1, 2017
Bài tập 320-321-322-323-324: Tính Tổng các số dương trong ma trận
Đăng ký:
Đăng Nhận xét (Atom)
Không có nhận xét nào:
Đăng nhận xét