목록전체 글 (364)
seong
1. 은행 계좌를 나타내는 BankAccount클래스를 입력하고 다양한 실험을 해보자. 잔고를 나타내는 정수형 멤버 변수 balance 예금 인출 메소드 draw 예입 메소드 deposit 잔고반환 메소드 getBalance 1-1 b의 잔고를 100으로한다 b에서 60을 인출한다. b의 현재 잔고를 얻어서 화면에 출력한다. package ex08; class BankAccount { private int balance;// 잔액표시 // b에서 60을 인출한다. // b의 현재 잔고를 출력한다. // 잔액 표시 메소드 int getBalance() { return balance; } // 저금 void setdeposit(int amount) { balance = amount; } // 인출 void ..
1. 3개의 숫자를 받아서 크기 순으로 정렬하는 프로그램을 작성하여보자. if-else문 사용한다. package Chap06; import java.util.Scanner; public class Ex01 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner sc = new Scanner(System.in); int a, b, c; System.out.print("정수를 입력하시오:"); a=sc.nextInt(); System.out.print("정수를 입력하시오:"); b=sc.nextInt(); System.out.print("정수를 입력하시오:"); c=sc.nextInt(); // 30 20 1..
버블 정렬 알고리즘 인접한 두 값들을 비교한다. 비교한 값들 중 정렬이 되어 있지 않으면 정렬해준다. 버블 정렬 하는 과정 5,4,3,2가 있다고 가정하자. 첫번째 사이클 5와 4를 비교후 정렬 -> 4, 5, 3, 2 5와 3를 비교후 정렬 -> 4, 3, 5, 2 5와 2를 비교후 정렬 -> 4, 3, 2, 5 이렇게 첫번째 사이클이 종료된다 마지막 5는 이미 오름차순으로 보았을때 정렬이 되어 있으므로, 두번째 사이클부터는 비교를 해주지 않아도 된다. 두번째 사이클 4와 3 비교 후 정렬 -> 3, 4, 2, 5 4와 2 비교 후 정렬 -> 3, 2, 4, 5 세번째 사이클 3와 2 비교 후 정렬 -> 2, 3, 4, 5 이제 모두 정렬 되었다. 한 사이클을 실행할 때마다 검사할 자릿수(인덱스)가 하..
절차 지향이란? 문제를 해결하는 절차를 중요시 하게 하는 방법이다. 절차들은 모두 함수, 프로시저 라는 단위로 묶인다. 단점 유지보수가 어렵다. 개발할때 순서대로 작성 하기 때문에 비효율 적이다. 객체 지향이란? 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들어, 객체를 서로 상호작용을 시켜주는 프로그래밍 방식이다. 객체 지향에서 상태는 행위를 통해서만 변경이 가능하다. ex) 믹서기(행위), 사과(상태) 가 있다. 믹서기를 가져온다 믹서기에 사과를 넣는다 믹서기로 사과를 갈아준다 (행위) 사과는 갈아진 사과가 된다.(상태) 중요하게 봐야할 점 행위를 함으로써 상태가 바뀐다. 믹서기와 사과는 서로 독립적이다.(어떠한 행동에 대해 책임을 지지 않는다) 서로 상호작용을 할 수 있다...
Dartpad로 사용 dartpad 검색 Dart 에서 class가 없어도 되는 이유 Dart에서는 자바와 달리 해당 파일을 메모리에 다 띄운 후 main을 찾기 때문에다. 메소드 안에 n1의 출력문이 존재 하지만, n1은 현재 메소드의 바깥에 선언되어 있다. Dart에서는 Java와는 다르게 클래스(Class)가 없어도 변수와 메소드가 메모리에 저장될 수 있다. 클래스 내부에 존재 하지않으면 함수(Funcition) 라고 한다. 메소드와 함수의 차이점 메소드(Method) 메소드는 클래스 내에 존재한다. 메소드는 객체와 연관 되어 있다. 함수(Funcition) 함수는 밖에 존재한다. 객체와 연관 없이 독립적이다. Dart의 자주 쓰이는 타입(Type)
package ex07; import java.util.Random; import java.util.Scanner; public class NumBaseBall { public static void main(String[] args) { // 숫자는 1~9까지 3자리의 임의의 숫자 -> o // 숫자와 위치가 모두 맞을경우 : 스트라이크 // 숫자는 맞지만 위치가 틀렸을경우 : 볼 // 숫자와 위치가 모두 틀렸을경우 : 아웃 // 기회는 5번 // 3아웃 -> 게임 끝 int st; int ball; int out = 0; int game = 0; int rdnum[] = new int[3]; // 랜덤 숫자 int user[] = new int[3]; // 사용자 숫자 Random rd = new Ra..
풀이 배열 안에 값들을 저장 저장된 값들을 비교해 만약 O라면 숫자 1증가 아니라면 0으로 초기화 여기서는 반복문, 조건문의 위치를 신경 써준다. import java.util.Scanner; public class HelloWorld { public static void main(String[] args) { Scanner sc = new Scanner(System.in); // 문자열 담을 배열, String arry[] = new String[sc.nextInt()]; for(int i = 0; i 이 변수들은 하..
import java.util.Arrays; import java.util.Scanner; import java.util.HashSet; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt();// 과목 수 double sub[] = new double[N]; for(int i =0; i < N; i++){//과목의 점수 저장 sub[i] = sc.nextDouble(); } //과목의 점수 중 최댓값 구하기 - Arrays.sort를 이용 Arrays.sort(sub);// 값들을 오름차순으로 정렬 double max = sub[N-1];// 최댓..