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;
}
}
p.118 예제3-8 책보고풀기
p.122 예제3-10 책보고 풀기
p.126 예제3-11 책보고풀기