Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // main.cpp
- // giải ma trận vuông cấp 3 đơn giản
- //
- // Created by Toan on 9/12/18.
- // Copyright © 2018 Toan. All rights reserved.
- //
- /*
- ma trận cấp vuống 3 sẽ có dạng
- A =
- a11 a12 a13
- a21 a22 a23
- a31 a32 a33
- Tính Det A
- */
- #include <iostream>
- using namespace std;
- float A[9] = {}; // ma trận 3 sẽ có 9 phần tử eg: {0,1,2,3,4,5,6,7,8}
- int getNumRow(int i){
- /*
- Phân tích:
- ta có 9 phần tử độ dài hàng ma trận tối đa là 3
- như vậy tính hàng của ma trận = vị trí / kích thước dài ma trận
- row = i/3
- */
- int row;
- row = i/3;
- return row + 1; // Cộngh thêm 1 vì ta gọi hàng số 0 sẽ là 1
- }
- int getNumColumn(int i){
- /*
- tinh cot ma tran col = index % width
- */
- int col;
- col = i % 3;
- return col + 1;
- }
- void displayMatrix(){
- for (int i = 0; i < 9; i++){
- if(i %3 ==0 ){
- cout << "\n";
- }
- cout << A[i] << " ";
- }
- }
- void detA(){
- float d;
- /*
- A =
- a11 a12 a13
- a21 a22 a23
- a31 a32 a33
- det A = [a11 *(a22* a33 - a23 * a32)] - [a12 * (a21* a33 - a23 * a31)] + [a13*(a21 * a32 - a22 * a31)]
- */
- int a11, a22,a23,a32, a12,a21,a31,a13, a33;
- a11 = A[0];
- a22 = A[4];
- a23 = A[5];
- a32 = A[7];
- a12 = A[1];
- a21 = A[3];
- a33 = A[8];
- a31 = A[6];
- a13 = A[2];
- d = a11 *(a22* a33 - a23 * a32) - a12 * (a21* a33 - a23 * a31) + a13*(a21 * a32 - a22 * a31);
- cout << "Ma Trận A: \n";
- displayMatrix();
- cout << "\n";
- cout << "Định thức ma trận A là:" << d;
- }
- int main(int argc, const char * argv[]) {
- // ma trận vuông cấp 3 sẽ có tổng số phần tử là 3*3 : 9
- int x = 0;
- for (int i = 0; i < 9; i++){
- cout << "Nhập giá trị hàng " << getNumRow(i) << " Cột " << getNumColumn(i) << ":\n";
- cin >> x;
- A[i] = x;
- }
- // tinh det a
- detA();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement