C-프로그래밍 - 다차원 배열, 포인터로 역행렬 등 행렬 표시하는 프로그램
- 최초 등록일
- 2020.09.14
- 최종 저작일
- 2019.06
- 11페이지/ MS 워드
- 가격 2,500원
소개글
자세한 설명과 분석 포함입니다.
목차
1. 프로그램 배경
2. 프로그램 개요
3. 실행결과
본문내용
Program) 아래의 예시와 같이 동작하는 프로그램을 구현하려고 한다.
먼저 메뉴를 표시하고 각 메뉴는 다음과 같이 동작한다.
“1. Random Square Matrix Generation” 선택 시, 3*3 정방행렬(square matrix)을 0 ~ 99 범위 내에서 난수 (Random number)를 생성하여 두 정방행렬 X, Y 를 출력한다.
“2. Transpose” 선택 시, X, Y 의 전치행렬(Transpose)를 출력한다.
“3. Rotation” 선택 시 (0, 90, 180, 270, 360) 중 원하는 각도를 입력 받아 X, Y 를 오른쪽(시계방향)으로 입력 받은 각도만큼 회전한 행렬을 출력한다.
“4. Inverse” 선택 시 각 행렬 X, Y 의 역행렬(inverse)를 출력한다. 이때, 행렬식(Determinant)을 구할 필요 있다. 역행렬이 존재하지 않을 때는 그 메시지를 출력한다. (예, “행렬 X is not invertible”)
“5. Calculation” 선택 시 (‘+’, ‘-‘, ‘*’) 중 원하는 연산을 입력 받아 그 결과를 출력한다.
“6. Exit” 선택 시 프로그램 종료한다.
1 번 메뉴 선택 전에 다른 메뉴를 선택했을 시 행렬이 존재하지 않는다는 Error 메시지 출력하게끔 한다.
1) 프로그램 배경
〮 0~99 범위 내에 수를 갖는 3행 3열로 이루어진 두 개의 정방행렬 X, Y을 이용해, 1~6까지 메뉴를 선택해 전치행렬, (0, 90, 180, 270, 360) 중 원하는 각도로 회전한 행렬, 역행렬, (‘+’, ‘-‘, ‘*’) 중 원하는 연산을 한 행렬을 구하는 프로그램을 만들었다.
〮 menu의 내용을 저장할 수 있도록 하는 get_menu 함수를 선언하였는데, const 선언을 이용해 포인터 변수가 가리키는 변수에 저장된 값을 변경하지 않도록 했다.
참고 자료
없음