수많은 변수를 손쉽게 관리하려면, 배열
+배열이 필요한 이유
+배열
+컨테이너
변수의 종류 뒤에 [] 대괄호가 붙었으면.. 다음에 나오는 변수가 배열이라는 의미다.
int나 string 뒤에..
그럼 배열을 선언해보자.
//여섯 자리의 숫자를 저장하는 정수형 배열
int[] passcodeNumbers = { 6, 2, 1, 9, 4, 7 };
여기서ㅣ passcodeNumbers는 정수형배열 변수라고 함.
숫자를 줄줄이 넣기 위해 중괄호 {}를 사용했고, 쉼표로 구분해줌.
@배열에 들어 있는 값을 사용하는 방법을 알아보자.
@배열에 들어 있는 값을 바꾸는 방법은?
1. 배열에 들어있는 몇번째 값을 비교하거나 등..
if (passcodeNumbers[0] == userInput1)
{
Console.WriteLine("첫 번째 숫자가 같습니다.");
}
>>이렇게 passcodeNumbers[0]을 userInput1랑 비교했다.
배열에 들어있는 값에 접근할 때는 []를 사용하고, 그 []안에는 숫자를 넣어 읽어올 위치를 지정해준다.
첫, 두, 세 ...번째 값 순서대로 [0] [1] [2] ... 다.
[0]부터 시작한다는거 잊지 말자.
컴퓨터는 숫자를 셀 때 1부터가 아니라 0부터 센다!!
2. 사용자가 입력한 값을 배열로 저장해둘 수는 없을까??
이렇게 하자.
int[] userInput = new int[6]
정수형배열 변수인 userInput을 선언했고,
new int[6]가 의미하는 것은 userInput이라는 정수형배열 변수가 여섯개의 정수를 넣을 수 있는 배열이라는 뜻이다.
ㄱ
그렇다면 키보드 입력을 받은 코드를 첫 번째 수로 저장하는 코드는?
userInput[0] = int.Parse(Console.ReadLine());
정수형 배열변수인 userInput이 있잖아
그 userInput의 첫번째 자리, 즉 userInput[0]에다가 입력값을 넣는다는 것.
즉!! 코드 그대로
userInput[0] = int.Parse(Console.ReadLine());
++배열의 장점.. ㅂ변수 선언을 줄줄이 길게 할 필요 ㄴ
배열을 사용하여 길었던 변수 선언을 두 줄로 끝내버렸다.
비밀번호 배열이랑, 내가 입력한 배열 변수 이렇게 두개!
또 다른 배열을 만들어보자
정수형 변수 배열 뿐만이 아니라 string과 double도 배열로 만들어보자
아까 여섯 개의 정수값을 넣을 수 있는 배열을 만들 때 new int[6]를 사용했다.
그런데 배열 안에 들어갈 값의 개수도 사용자가 직접 정하게 할 수는 없을까?? 오케이~~가능~~!
학생 명부 관리 프로그램
키보드로 총학생 수를 입력, 그 수만큼 학생 배열 생성, 그리고 그중 한명의 정보를 입력받기
!! 하지만 컴퓨터에서 수는 0부터 세기 때문에,
우리가 10번째 학생의 정보를 입력하고 싶다면 9로 입력해야 한다는 거 당연히 주의
안전하게 배열을 사용하려면?
if (studentNumber >=0 && studentNumber <= studentCount - 1)
{ ... }
else
{
Console.Write("0에서");
Console.Write(studentCount - 1)
Console.WriteLine("사이의 숫자를 입력하세요.")
}
이런식으로 막으면 되지
컨테이너
예를 들어
passcodeNumber[0]에서 0을 인덱스라고 부른다. 0은 실제 값이 들어있는 위치를 알려주는 인덱스일 뿐이고
실제 값인 6은 passcodeNumber[0]이라는 코드를 통해 가져올 수 있는 값이다.
(인덱스와 실제 값의 개념 ㅇㅋ)
!! 여기서, 0,1,2같은 숫자가 아닌 문자열 같은 단어를 인덱스로 사용하려면 어떻게 해야 할까??
예를 들어서 양현석 하면 27이라는 값이 뜨게끔..
이 장에서 만들었던 학생 명부 프로그램에서 학생 번호 (0,1,2따위)가 아니라, 학생 이름인 양현석, 김예은을 인덱스로 쓰면 편할 것 같다.
이럴 때 사용하는 게 딕셔너리라는 컨테이너다.
!!배열에서의 인덱스는 정수~!
!!딕셔너리에서의 인덱스는 문자열 사용 가능~!
숫자야구구구
배열을 숫자야구에 적용해보자
>>일일이 변수선언한 코드를 배열형식으로 싹 바꿨다
디스웨이....>.<
결과는 똑같다
챕터7내용
ㅇ 같은 종류의 변수를 여러 개 만들 때 배열을 쓴다.
ㅇ 인덱스는 배열 안에 들어있는 값의 위치를 나타낸다.
ㅇ 배열 이외에도 리스트, 딕셔너리같은 컨테이너가 있다.
'기타' 카테고리의 다른 글
Hello Coding 헬로코딩 프로그래밍 챕터8; 반복문(while) (0) | 2020.01.16 |
---|---|
Hello Coding 헬로코딩 프로그래밍 챕터7; 기초문제 심화문제 (0) | 2020.01.08 |
Hello Coding 헬로코딩 프로그래밍 챕터6; 기초문제 심화문제 (0) | 2020.01.06 |
Hello Coding 헬로코딩 프로그래밍 챕터 6; 조건문 (0) | 2020.01.02 |
Hello Coding 헬로코딩 프로그래밍 챕터5; 기초문제 심화문제 (0) | 2020.01.02 |