- 10개의 수를 입력받아 배열에 넣고 그 배열의 합계와 가장 작은 수 구하기 (Exam01)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
package day04;
import java.util.Scanner;
public class Exam01 {
public static void main(String[] args) {
//10개의 수를 입력받아 배열에 넣고
//그 배열의 합계와 가장 작은 수 구하기
Scanner sc=new Scanner(System.in);
System.out.println("10개의 양수 입력>>");
int []arr=new int[10];
int sum=0;
for(int i=0;i<10;i++) {
arr[i]=sc.nextInt();
sum+=arr[i];
}
System.out.println("합계: "+sum);
int min=arr[0];
for(int i=0;i<10;i++) {
if(min>arr[i]) {
min=arr[i];
}
}
System.out.println("최소값: "+min);
for(int a:arr) {
System.out.print(a+"\t");
}
System.out.println();
}
}
|
- 난수를 배열에 입력하되 들어갈 위치를 랜덤하게 정하고 1부터 100이하의 수를 넣으시오. 단, 값이 이미 들어가 있으면 넣지 않는다. (Exam02)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
package day04;
public class Exam02 {
public static void main(String[] args) {
//난수를 배열에 입력하되
//들어갈 위치를 랜덤하게 정하고
//1부터 100이하의 수를 넣으시오
//단, 값이 이미 들어가 있으면 넣지 않는다.
int []arr=new int[5]; //0 0 0 0 0
int n=0;
while(n<arr.length){ //배열의 길이 만큼 반복한다.
int col=(int)(Math.random()*5); //배열위치를 랜덤하게 정한다.
if(arr[col]!=0) { //이 위치에는 이미 값이 들어갔음. 그럼 다시 while문을 돌아서 "배열의 위치"를 정한다.
continue;
}else { //배열에 들어간 값이 0이라면 (=값이 없다면) 1에서 100이하의 난수를 발생.
arr[col]=(int)(Math.random()*100)+1; //1에서 100이하이므로 0이 나왔을때 1을 더해주는 것.
n++;
}
}
for(int i=0;i<arr.length;i++) {
System.out.print(arr[i]+"\t");
}
}
}
|
cs |
- Student 클래스를 선언하고 속성과 행위 표현 (멤버변수, 메소드) (Student)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
package day04;
public class Student { //클래스를 선언. 속성과 행위를 표현할 수 있고, 속성은 멤버변수, 행위는 메소드.
int StudentID; //학번
String name; //이름
int grade; //학년
String address; //주소
//공부하다 라는 행위를 표현하고 싶다. 그 행위를 프로그램에서는 함수라고 함. 객체지향의 함수는 메소드.
public void study() { //함수는 반드시 괄호가 있음
System.out.println(name+"공부하다");
}
public void play() {
System.out.println(name+"운동하다");
}
public static void main(String[] args) { //실행은 항상 main함수 부터
Student s1=new Student(); //Student 클래스 안에 s1이라는 객체 생성
s1.StudentID=100; //누구의 학번인지 표현해야하므로 점(.)을 찍는게 중요.
s1.name="홍길동";
s1.grade=1;
s1.address="부산";
System.out.println("s1의 이름: "+s1.name);
Student s2=new Student();
s2.StudentID=200;
s2.name="이순신";
s2.grade=4;
s2.address="서울";
System.out.println("s2의 이름: "+s2.name);
System.out.println(s1.name+"의 주소: "+s1.address);
//이름이 강감찬이고 3학년, 인천에 사는 학생 s3을
//생성하고 s3의 이름과 주소를 출력하시오.
Student s3=new Student();
s3.name="강감찬";
s3.grade=3;
s3.address="인천";
System.out.println("s3 이름: "+s3.name);
System.out.println("s3 주소: "+s3.address);
//홍길동이 공부하다
s1.study();
//강감찬이 공부하다
s3.study();
//학생이라는 클래스를 만들때 학번, 이름, 학년, 주소를 만들었고
//공부하다라는 행위까지 표현.
//학생이라는 클래스를 수정하는데 play()함수를 가지고 있고..
//여기에서 이름 운동한다라는 값을 출력하시오
s1.play();
}
}
|
cs |
- Baby 클래스를 선언하고 속성값에 이름과 나이. 웃는다와 운다 행위 표현. (Baby)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
package day04;
public class Baby { //클래스는 보통 대문자로 시작하게끔 표현
String name;
int age;
//웃는다
//운다
public void smile() {
System.out.println(name+"이 웃는다.");
}
public void cry() {
System.out.println(name+"이 운다.");
}
public static void main(String[] args) {
//Baby 객체 b1을 만들고
//이름 베이비1 나이 2
//베이비1 이 웃는다
Baby b1=new Baby();
b1.name="베이비1";
b1.age=2;
b1.smile();
//Baby 객체 b2을 만들고
//이름 베이비2 나이 1
//베이비2 이 운다
Baby b2=new Baby();
b2.name="베이비2";
b2.age=1;
b2.cry();
}
}
|
- 사칙연산하는 클래스 만들고 매개변수를 할당받아 사칙연산하기 (Sachik)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
package day04;
public class Sachik {
//덧셈
public void sum(int a, int b) {
System.out.println("덧셈: "+(a+b));
}
//뺄셈
public void sub(int a, int b) {
System.out.println("뺄셈: "+(a-b));
}
//곱셈
public void mul(int a, int b) {
System.out.println("곱셈: "+(a*b));
}
//나눗셈
public void div(int a, int b) {
System.out.println("나눗셈: "+(a/b));
}
public static void main(String[] args) {
Sachik s1=new Sachik();
s1.sum(10,5); //함수를 부를때 값을 전달할 매개변수. 5번으로 가서 각각 순서대로 정수형 변수 a,b에 전달됨.
s1.sub(20,10);
s1.mul(3,5);
s1.div(9,3);
}
}
|
- 사칙연산하는 클래스 만들고 매개변수를 할당받아 사칙연산하기-리턴값을 주고 메인함수에서 나눗셈의 값 출력 (Sachik)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
package day04;
public class Sachik {
//덧셈
public void sum(int a, int b) {
System.out.println("덧셈: "+(a+b));
}
//뺄셈
public void sub(int a, int b) {
System.out.println("뺄셈: "+(a-b));
}
//곱셈
public void mul(int a, int b) {
System.out.println("곱셈: "+(a*b));
}
//나눗셈
public int div(int a, int b) { //void는 리턴값이 없다는 뜻. 리턴이 있으므로 그 자료형을 void대신에 적어준다.
//System.out.println("나눗셈: "+(a/b));
return a/b; //return은 값을 돌려준다는 것.
}
public static void main(String[] args) {
Sachik s1=new Sachik();
s1.sum(10,5); //함수를 부를때 값을 전달할 매개변수. 5번으로 가서 각각 순서대로 정수형 변수 a,b에 전달됨.
s1.sub(20,10);
s1.mul(3,5);
//s1.div(9,3);
System.out.println(s1.div(20,5));
}
}
|
- Bank클래스 만들고 입금, 출금, 잔액확인 메소드를 만들기. 객체 b1생성하고 이름을 홍길동이라 하기. 입금, 출금하고 잔액확인 (Bank)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
package day04;
public class Bank {
String name; //이름 멤버변수 (전역변수)
int money; //잔액
//입금. 잔액에다가 입금한 만큼의 돈을 더하는 것.
public void inputMoney(int don) { //don은 지역변수
money+=don;
}
//출금
public void outputMoney(int don) {
money-=don;
}
//잔액확인
public void getMoney() {
System.out.println(name+" 님의 잔액은 "+money+"원 입니다.");
}
public static void main(String[]args) {
//Bank 객체 b1을 만들고
//b1의 이름은 홍길동
//홍길동이 5000원을 입금하고 잔액을 확인함
//홍길동님의 잔액은 5000원입니다.
Bank b1=new Bank();
b1.name="홍길동";
b1.inputMoney(5000);
b1.getMoney();
//홍길동이 3000원을 출금하고 잔액확인
//홍길동님의 잔액은 2000원 입니다.
b1.outputMoney(3000);
b1.getMoney();
}
}
|
'Learning > JAVA' 카테고리의 다른 글
배열안에 객체 만들기 (이차원 배열/입력 클래스, 출력클래스 분리) (0) | 2020.06.01 |
---|---|
메인함수 클래스와 출력 클래스 분리하고 출력하기 (0) | 2020.06.01 |
1차원 배열, 2차원 배열 (0) | 2020.06.01 |
Switch문, for문, while문 (0) | 2020.06.01 |
조건문, 값 입력하기 (0) | 2020.06.01 |