200821 숙제용 코드

갓김치·2020년 8월 21일
0

자바 문제풀이

목록 보기
4/6

p.104 문제 3-3

class Qu3_3{
	public static void main(String[] args){
    	    MethodTest.add1();
            
            int re2 = MethodTest.add2(90);
            System.out.println(re2);
            
            MethodTest example = new MethodTest();
            
            int re3 = example.add3(100);
            System.out.println(re3);
            
            example.add4();
            
    }
}

class MethodTest{
    static int a = 10;
    static int b = 20;
    int c = 50;
    
    static void add01(){
    	int result = a + b;
        System.out.println(result);
    }
    
    static int add02(int c){
    	int result = a + b + c;
    	return result;
    }
    
    int add03(int c){
    	int result = this.c + c;
        return result;
    }
    
    void add04(){
    	int random = (int)(Math.random()*101);
        int result = c + random;
        System.out.println(result);
    }
}

p.106 문제3-5

public class Calculator{
    public static void main(String[] args) {
    
    Scanner scan = new Scanner(System.in);
    System.out.println("첫번째 숫자를 입력해 주세요");
    int firstNum = scan.nextInt();
    
    System.out.println("부호를 입력해 주세요");
    String buho = scan.next();
    
    System.out.println("두번째 숫자를 입력해 주세요");
    int secondNum = scan.nextInt();
    
    Calc example = new Calc();
    
    if("+".equals(buho)){
    	int result = example.add(firstNum, secondNum);
        System.out.println("result");
    }else if("-".equals(buho)){
    	int result = example.add(firstNum, secondNum);
        System.out.println("result");
    }else if("*".equals(buho)){
    	int result = example.add(firstNum, secondNum);
        System.out.println("result");
    }else if("/".equals(buho)){
    	int result = example.add(firstNum, secondNum);
        System.out.println("result");
    }else{
    	System.out.println("연산종료");
    }
        
    }  
  	
}

class Calc {
    int add(int x, int y){
    	int result = x + y;
        return result;
    }

    int substract(int x, int y){
    	int result = x - y;
        return result;
    }

    long multiply(int x, int y){
    	long result = (long)x * y;
        return result;
    }


    float divide(int x, int y){
    	float result = (int)((float)x / y * 10 + 0.5)/10f;
        return result;
    }
}

p. 107 문제3-6

class Data{
    int x; 
}

public class DataTest{
    public satic void main(String[] args){
    
        Data d1 = new Data();
        d1.x = 10;
        System.out.println(d1.x);
        DataTest.change(d1.x);
        System.out.println(d1.x);
        
        Data d2 = new Data();
        d2.x = 10;
        System.out.println(d2.x);
        DataTest.change(d2);
        System.out.println(d2.x);
        
    }
    
    static void change(int x){
    	x = 1000;
        System.out.println("change() 기본형 : "+x);
    }
    
    static void change(Data d1){
    	d1.x = 1000;
        System.out.println("change() 참조형 : "+d1.x);
        
    }
}

p.111 예제3-7

public class FactorialTest{
    public static void main(String[] args){
        int result = factorial(4);
        System.out.println(result);
    }


    static int factorial(int n){
    	int result = 0;
        if(n==1){
            result = 1;
        }else{
            result = n * factorial(n-1);
        }
        return result;
    }
}

p. 113 문제3-9

public class DiceTest{
    public static void main(String[] args){
        DoubleDice monopoly = new DoubleDice();
        int steps = monopoly.throwDice();
        SYstem.out.println(steps+"칸 이동하세요!");
    }
}

class DoubleDice{

    int throwDice(){
    	int firstDice = (int)(Math.random()*6+1);
        int secondDice = (int)(Math.random()*6+1);
        int result = firstDice + secondDice;
        System.out.println("("+firstDice+","+secondDice+")");
        
        if(firstDice == secondDice){
            result += throwDice();
        }
		
        return result;
        
    }

}

p. 116 문제3-8

public class Qu3_8 {
    public static void main(String[] args) {
    
        int result1 = MyAdd.add(10);
        System.out.println(result1);
        
        MyAdd ex = new MyAdd();
        int result2 = ex.add(10, 20);
        System.out.println(result2);
        
        long result3 = ex.add(10, 20L);
        System.out.println(result3);
        
        float result4 = ex.add('1', 10F);
        System.out.println(result4);
        
    }
}

class MyAdd{
    static int a = 20;
    int b = 15;
    
    static int add(int x){
        int result = a + x;
        return result;
    }
    
    int add(int x, int y){
        int result = x + y;
        return result;
    }
    
    long add(int x, long y){
        long result = x + y;
        return result;
    }
    
    float add(char x, float y){
        float result = x + y;
        return result;
    }
    
    long add(long x, int y){
        long result = x + y;
        return result;
    }
    
    /*
    long add(int x, long y){
        long result = (long)x + y;
        return result;
    }
    */
    
}

p.118 예제3-8 책보고풀기

p.122 예제3-10 책보고 풀기

p.126 예제3-11 책보고풀기

profile
갈 길이 멀다

0개의 댓글