전체 글
-
[Java 언어]배열 실습(1)Java 2024. 2. 22. 21:08
문제 1 - 배열을 사용하도록 변경 - 다음 문제를 배열을 사용해서 개선하자. - 실행 결과 더보기 - 실행 결과
-
[프로그램 이론]향상된 for문(for each)프로그래밍 이론 2024. 2. 22. 05:26
● 향상된 for문(for each) - 배열을 먼저 알아야 향상된 for문을 알기 편하다. - 향상된 for문 정의 - for each문 예시 - 실행 결과 ▶ 일반 for문 - 배열에 있는 값을 순서대로 읽어서 nunber 변수에 넣고, 출력한다. 배열은 처음부터 끝까지 순서대로 읽어서 사용하는 경우가 많다. 그런데 배열의 값을 읽으려면 int i와 같은 인덱스를 탐색할 수 있는 변수를 선언해야 한다. 그리고 i < numbers.length와 같이 배열의 끝 조건을 지정해야 주어야 한다. 마지막으로 배열의 값을 하나 읽을 때마다 인덱스를 하나씩 증가해야 한다. ★ 개발자 입장에서는 그냥 배열을 순서대로 처음부터 끝까지 탐색하고 싶은데, 너무 번잡한 일을 해주어야 한다. 그래서 향상된 for문이 등장..
-
[프로그램 이론]배열(Array)(4)프로그래밍 이론 2024. 2. 21. 22:03
● 2차원 배열 - 리펙토링 ▶ 구조 개선 - 행 출력 반복 - 코드 구조를 보면 비슷한 부분이 반복된다. - 코드를 보면 행을 출력하는 부분이 거의 같다. 차이가 있는 부분은 행에서 arr[0]으로 시작할지 arr[1]로 시작할지의 차이다. ★ 다음과 같이 행(row)에 들어가는 숫자만 하나씩 증가하면서 반복하면 될 것 같다. - 반복문을 사용하여 코드 변경 예시 ● for문을 통해서 행(row)을 반복해서 접근한다. 각 행 안에서 열(column)이 3개이므로 arr[row][0], arr[row][1], arr[row][2] 3번 출력한다. 이렇게 하면 for문을 한번 도는 동안 3개의 열을 출력할 수 있다. ⊙ row=0의 for문이 실행되면 arr[0][0], arr[0][1], arr[0][2..
-
[프로그램 이론]배열(Array)(3)프로그래밍 이론 2024. 2. 21. 21:03
● 2차원 배열 - 지금까지 학습한 배열은 단순히 순서대로 나열되어 있었다. 이것을 1차원 배열이라 한다. - 2차원 배열은 이름 그대로 하나의 차원이 추가된다. 2차원 배열은 행과 열로 구성된다. - 2차원 배열은 int[] [] arr = new int[2] [3]와 같이 선언하고 생성한다. - arr[1] [2]와 같이 상요하는데, 먼저 행 번호를 찾고, 그 다음에 열 번호를 찾으면 된다. - 행은 영어로 row(로우), 열은 영어로 column(컬럼)이라 한다. - 2차원 배열의 사용법은 []가 하나 추가되는 것을 제외하고는 1차원 배열과 같다. - 2차원 배열 예시 - 실행 결과
-
[프로그램 이론]배열(Array)(2)프로그래밍 이론 2024. 2. 21. 20:39
● 배열 리펙토링 ★ 리펙토링(Refactoring) : 기존의 코드 기능을 유지하면서 내부 구조를 개선하여 가독성을 높이고, 유지보수를 용이하게 하는 과정을 뜻한다. ▶ 배열 리펙토링 - 변수 값 사용 - 코드를 단계별로 리펙토링 - 변수 값을 사용한 부분 *변수명이 students로 같기 때문에 숫자가 반복되는 부분만 해결하면 반복문을 도입할 수 있을 것 같다. for문을 사용해서 문제를 해결해 보자. ● 반복문을 사용해서 배열을 통해 값을 사용하는 부분을 효과적으로 변경했다. ● 배열의 인덱스는 0부터 시작하기 때문에 반복문에서 i = 0을 초기값으로 사용했다. ● students.length ⊙ 배열의 길이를 제공하는 특별한 기능이다. ⊙ 참고로 이 값은 조회만 할 수 있다. 대입은 할 수는 없다..
-
[프로그램 이론]배열(Array)(1)프로그래밍 이론 2024. 2. 20. 23:30
● 배열 시작 ▶ 배열이 필요한 이유 - 학생의 점수를 출력하는 간단한 프로그램을 작성해 보자. - 실행 결과 ● 학생을 몇 명 더 추가해야 한다면 변수를 선언하는 부분과 점수를 출력하는 부분의 코드도 추가해야 한다. 학생을 몇 명 더 추가하는 것은 개발자가 코딩으로 해결할 수 있겠지만, 학생을 수백 명 이상 추가해야 한다면 코드가 상당히 많이 늘어날 것이다. 결국 학생 수가 증가함에 따라 코딩 양이 비례해서 증가하는 문제가 발생한다. ● 변수를 선언하는 부분을 보면 학생 수가 증가함에 따라 int형 변수를 계속해서 추가해야 한다. 학생 수가 5명이면 int형 변수를 5개 선언해야 하고, 학생 수가 100명이라면 int형 변수를 100개 선언해야 한다. 결국 비슷한 변수를 반복해서 선언하는 문제가 발생한..
-
[Java 언어]스캐너 실습(9)Java 2024. 2. 18. 21:57
문제 9 - 상품 구매 - 사용자로부터 상품 정보(상품명, 가격, 수량)를 입력받고, 이들의 총가격을 출력하는 프로그램을 작성하세요. - 사용자는 여러 상품을 추가하고 결제할 수 있으며, 프로그램을 언제든지 종료할 수 있습니다. - 사용자에게 다음 세 가지 옵션을 제공해야 합니다 : 1: 상품 입력, 2:결제, 3: 프로그램 종료. 옵션은 정수로 입력받으며, 옵션을 저장하는 변수의 이름은 option이어야 합니다. - 상품 입력 옵션을 선택하면, 사용자에게 상품명과 가격, 수량을 입력받으세요. - 결제 옵션을 선택하면, 총 비용을 출력하고 총비용을 0으로 초기화하세요. (사용자가 총 비용을총비용을 확인하고, 결제를 완료했다고 가정합니다. 따라서 다음 사용자를 위해 총비용을 다시 0으로 초기화해야 합니다...