Skip to content

dmhd6219/Matrix-Algebra

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Matrix Algebra

Was created as homework for Linear Algerba course at Innopolis University.

Task 1

In C++ programming language write an OOP program that allows to:

  • store matrices n by m (create a necessary class);
  • input / output matrices with the use of cin / cout operators (overload the necessary operators);
  • assign one matrix to another (overload = operator);
  • add two matrices A and B (overload the + operator, prints the error message);
  • subtract two matrices A and B (overload the - operator, prints the error message if needed);
  • multiply two matrices A and B (overload the * operator, prints the error message if needed);
  • getTranspose matrix;

Task 2

In C++ programming language write an OOP program that allows to:

  • store square matrices n by n (create a necessary class using inheritance);
  • input / output matrices with the use of cin / cout operators (overload the necessary operators);
  • add two matrices A and B (overload the + operator using upcasting and downcasting via pointers);
  • subtract two matrices A and B (overload the - operator using upcasting and downcasting via pointers);
  • multiply two matrices A and B (overload the * operator using upcasting and downcasting via pointers);
  • getTranspose matrix (using upcasting and downcasting via pointers);

Task 3

In C++ programming language write an OOP program (as an extension of the previous one) that allows you to:

  • store identity matrices n by n (create a necessary class using inheritance);
  • store elimination matrices n by n which nullify aij element (create a necessary class using inheritance);
  • store permutation matrices n by n which exchange i1/i2 rows (create a necessary class using inheritance);

Task 4

In C++ programming language write an OOP program (as an extension of the previous one) that computes the determinant of a matrix using the Gaussian elimination process with pivoting by maximum (in absolute) element.

Task 5

In C++ programming language write an OOP program (as an extension of the previous one) that computes the inverse matrix for the input one using the Gaussian elimination process with pivoting by maximum (in absolute) element.

Task 6

Write a computer program in C++ programming language to solve a system of linear equations A ⋅ x = b. For this purpose implement a class «ColumnVector» with necessary fields, methods and necessary operators' overloading for summation, multiplication, inputting-outputting and computing the norm.

Task 7

Write a computer program in C++ programming language to solve the given system of linear algebraic equations with the use of iterative Jacobi method.

Task 8

Write a computer program in C++ programming language to solve the given system of linear algebraic equations with the use of iterative Seidel method.