t 형 2중 배열을 이용하여 원하는 값 출력하기
1. 이중배열 안에 값을 100까지의 숫자로 바꿔서 출력하기.
이중배열이기 때문에 반복문도 2개를 돌려서 바꿔줘야 한다.
나중에 안 사실이지만 Random클래스를 이용하면 좀 더 코드를 간략화할 수 있다
import java.util.Random -> Random ran = new Random()
ran을 이용해서 원하는 범위만 설정하면 된다.
위 사진은 Random 클래스를 몰랐기 때문에, (int)(Math.random()*101)을 사용하였다
행을 row 지정하고 열을 column 으로 지정하였다
2중 반복문으로 row = 즉, 한 행을 돌때 그 안에 반복문이 또 있어서 열을 돈다
쉽게 말해, 한개의 행이 돌 때 그 안에 있는 열을 다 돌고 나서
다음 행으로 가서 도는 그런 식.
그렇게 돌리면서 각각의 열마다 랜덤으로 숫자를 채워준다
----------------------------------------------------------------------------------------------------------------------
2. 배열안에 숫자 총합과 평균 구하기.
총합은 int sum = 0으로 놓고,
2 중반 복문 돌 때 => sum += numArr [row][column] 해준다
그럼 sum 값에 각 열들이 다 더해질 것이다.
평균 sum에서 count를 나누는데
count는 numArr [row]. length의 길이를 더해준다 == 이것은 총 열의 개수
그리고, 나눌 때 count를 double타입으로 나눠준다. 평균을 소수점까지 구하기 위해서!
(정수 나누기 정수는 몫만 출력하기 때문에 타입을 억지로 바꿔주는 것)
------------------------------------------------------------------------------------------------------------------------------------
3. 행의 합 구하기
rowSum []이라는 int 형 배열을 numArr의 배열 길이만큼 만든다
그리고 2 중반 복문을 돌려서,
rowSum [row] += numArr [row][column]라고 코드를 작성한다
그럼 위에서 미리 만든 rowSum 배열에 순서대로 한 행에 속해있는 열의 총 값들이 들어가게 된다
그리고 출력할 시에는 java.util.Arrays.toString으로 배열식으로 출력하게 해야 한다
----------------------------------------------------------------------------------------------------------------------
4. 열의 합 구하기
numArr을 보면 열이 행마다 개수가 다른 걸 볼 수 있다
max_len을 int형 변수로 초기값을 0으로 놓고
반복문을 numArr의 길이까지 돌려서 Math.max(max_len, numArr [row]. length)로 큰 값을 max_len으로 다시 지칭한다
그 후, colSum [] int 형 변수를 max_len의 개수만큼만 만든다
(열이 없는 행도 있기 때문에)
그리고 2 중반 복문으로.
colSum의 각 인덱스에 numArr [row][column]을 더해주고 위와 같이 문자열로 반환하여 출력하면 끝!
'TIL > Java' 카테고리의 다른 글
Basic Algorithm 14th (0) | 2021.08.03 |
---|---|
Basic Algorithm 13th (0) | 2021.08.03 |
Basic Algorithm 11th (0) | 2021.08.03 |
Basic Algorithm 10th (0) | 2021.08.03 |
Basic Algorithm 9th (0) | 2021.08.03 |