λ¬Έμ
Java κΈ°μ΄λ₯Ό λ°°μ°κΈ° μν΄ λ¬Έμ λ₯Ό μ’ λ μ½κ² μμ ν΄μ λ¬Έμ νμ΄λ₯Ό μ§ννλ€.
μμ ν λ¬Έμ λ λ€μκ³Ό κ°λ€.
π κΈ°λ₯ μꡬ μ¬ν
μ΄κ°λ¨ μλμ°¨ κ²½μ£Ό κ²μμ ꡬννλ€.
μ£Όμ΄μ§ νμ λμ nλμ μλμ°¨λ μ μ§ λλ λ©μΆ μ μλ€.κ° μλμ°¨μ μ΄λ¦μ λΆμ¬ν μ μλ€. μ μ§νλ μλμ°¨λ₯Ό μΆλ ₯ν λ μλμ°¨ μ΄λ¦μ κ°μ΄ μΆλ ₯νλ€.μλμ°¨ μ΄λ¦μ 5μ μ΄νλ§ κ°λ₯νλ€.μ¬μ©μλ λͺ λ²μ μ΄λμ ν κ²μΈμ§λ₯Ό μ λ ₯ν μ μμ΄μΌ νλ€.μ μ§νλ 쑰건μ 0μμ 9 μ¬μ΄μμ 무μμ κ°μ ꡬν ν 무μμ κ°μ΄ 4 μ΄μμΌ κ²½μ°μ΄λ€.μλμ°¨ κ²½μ£Ό κ²μμ μλ£ν ν λκ° μ°μΉνλμ§λ₯Ό μλ €μ€λ€. μ°μΉμλ ν λͺ μ΄μμΌ μ μλ€.μ°μΉμκ° μ¬λ¬ λͺ μΌ κ²½μ° μΌν(,)λ₯Ό μ΄μ©νμ¬ κ΅¬λΆνλ€.
π μ μΆλ ₯ μꡬ μ¬ν
πμ λ ₯
κ²½μ£Όν μλμ°¨μ μ μ λ ₯
3
κ²½μ£Ό ν μλμ°¨ μ΄λ¦μ μ°¨λ‘λλ‘ μ λ ₯
pobi woni jun
μλν νμ
5
πμΆλ ₯
κ²½μ£Όν μλμ°¨ μ΄λ¦μ μ λ ₯νμΈμ.(μ΄λ¦μ μΌν(,) κΈ°μ€μΌλ‘ ꡬλΆ)
pobi
woni
jun
μλν νμλ λͺνμΈκ°μ?
5
μ€ν κ²°κ³Ό
pobi : -
woni :
jun : -
pobi : --
woni : -
jun : --
pobi : ---
woni : --
jun : ---
pobi : ----
woni : ---
jun : ----
pobi : -----
woni : ----
jun : -----
μ΅μ’ μ°μΉμ : pobi, jun
νμ΄
ν΄λμ€ κ΅¬μ‘° : Car, Race, CarRaceMain
- μλμ°¨μ μμ±λ€μ λ΄μ Car.java
- Raceλ₯Ό μ§ν, μΆλ ₯μν€λ λ©μλλ₯Ό λ΄μ Race.java
- μ λ ν΄λμ°λ₯Ό κ°μ§κ³ κ²μμ μ§νν Main ν΄λμ°μΈ CarRaceMain.java
Carμ μμ±μ nameκ³Ό λμκ° λ―Έν°μμΈ metersλ₯Ό μ§μ ν΄λμλ€.
μμ±μμμλ metersλ 0μΌλ‘ λͺ¨λ μμνκΈ° λλ¬Έμ nameλ§ λ°λλ‘ μ€μ νλ€.
λͺ¨λ μμ±μ privateμΌλ‘ μ€μ ν΄μ μ½λμ μ μ§λ³΄μλ₯Ό λμκ³ , μ΄λ₯Ό getνκ³ setνκΈ° μν΄ getterμ setterλ μ€μ ν΄μ£Όμλ€.
Car.java
package day04.carRace;
public class Car {
private String name;
private int meters;
public Car(String name) {
this.name = name;
this.meters = 0;
}
public String getName() {
return name;
}
public int getMeters() {
return meters;
}
public void setMeters(int meters) {
this.meters = meters;
}
}
Raceλ₯Ό μ§νμν€κΈ° μν΄ Car κ°μ²΄λ₯Ό μ μ₯ν λ°°μ΄κ³Ό μ΄ λͺ νλ₯Ό μ€μν μ§λ₯Ό μ μ₯ν λ³μ tcλ₯Ό μ μΈνλ€.
proceed()
0~9μ λμλ₯Ό λ°μμμΌ 4 μ΄μμΈ Carμ metersκ°μ 1 μ¦κ°νλλ‘ νλ€.
print()
Raceλ₯Ό μ€νν νμλ§λ€ μ€νν κ²°κ³Όλ₯Ό μΆλ ₯ν λ μ΄μ©νλ€.
whoWon()
μ°μΉμκ° λꡬμΈμ§ κ³μ°νκ³ , 곡λ μ°μΉμκ° μμ μ μμΌλ―λ‘ μ°μΉμμ meters κ°μ returnνκ² νλ€.
printWinner()
μμμ κ³μ°ν μ°μΉμμ meters κ°μ μ΄μ©ν΄μ μ°μΉμλ₯Ό μΆλ ₯νλ€.
raceStart()
ν μ€νΈ μΌμ΄μ€λ§νΌ μ λ©μλλ₯Ό μ μ ν μ΄μ©νμ¬ νΈμΆνλ€.
Race.java
package day04.carRace;
public class Race {
private Car[] cars;
private int tc;
public Race(Car[] cars, int tc) {
this.cars = cars;
this.tc = tc;
}
void proceed(){
int p;
for (int i = 0; i < cars.length; i++) {
p = (int)(Math.random()*9);
if(p >= 4) cars[i].setMeters(cars[i].getMeters() + 1);
}
}
void print(){
System.out.println("μ€ν κ²°κ³Ό");
for (int i = 0; i < cars.length; i++) {
System.out.print(cars[i].getName() + " : ");
for (int j = 0; j < cars[i].getMeters(); j++) {
System.out.print("-");
}
System.out.println();
}
System.out.println();
}
int whoWon(){
int max = cars[0].getMeters();
for (int i = 1; i <cars.length; i++) {
if(max < cars[i].getMeters()) max = cars[i].getMeters();
}
return max;
}
void printWinner(int max){
System.out.print("μ΅μ’
μ°μΉμ : ");
int count = 0;
for(int i = 0; i < cars.length; i++) {
if(cars[i].getMeters() == max) {
count++;
}
}
int count2 = 0;
for(int i = 0; i < cars.length; i++) {
if(count == 1 && cars[i].getMeters() == max) {
System.out.print(cars[i].getName());
break;
}
else if(count2 == 0 && cars[i].getMeters() == max){
count2++;
System.out.print(cars[i].getName());
}
else if (count2 != 0 && cars[i].getMeters() == max) {
System.out.println(", " + cars[i].getName());
}
}
}
void raceStart(){
for (int i = 0; i < tc; i++) {
proceed();
print();
}
printWinner(whoWon());
}
}
μλμ°¨μ μμ μλμ°¨μ μ΄λ¦λ€μ μ λ ₯λ°κ³ , μλν ν μλ₯Ό μ λ ₯λ°μ Raceμ μμ±μμ λ§€κ°λ³μλ‘ μ λ¬νμ¬ Race κ°μ²΄λ₯Ό μ€νν΄μ£Όμλ€.
CarRaceMain.java
package day04.carRace;
import java.util.Scanner;
public class CarRaceMain {
public static void main(String[] args) {
//μλμ°¨μ κ°μ μ
λ ₯ λ°κΈ°
System.out.println("κ²½μ£Όν μλμ°¨μ μλ₯Ό μ
λ ₯νμΈμ");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
//μλμ°¨ μ΄λ¦ μ
λ ₯ λ°μμ μλμ°¨ κ°μ²΄ μμ± ν λ°°μ΄μ μ μ₯
System.out.println("κ²½μ£Όν μλμ°¨ μ΄λ¦μ μ
λ ₯νμΈμ.");
Car[] cars = new Car[n];
for (int i = 0; i < n; i++) {
String s = sc.next();
cars[i] = new Car(s);
}
//μλν νμ μ
λ ₯ λ°κΈ°
System.out.println("μλν νμλ λͺ νμΈκ°μ?");
int t = sc.nextInt();
//Race νΈμΆ
Race race = new Race(cars, t);
race.raceStart();
}
}
μ€ν κ²°κ³Ό
'β‘π©βπ» β‘ > ΒΊ Java' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[Java] final μμ ν€μλ (0) | 2023.11.24 |
---|---|
[Java] λ¬Έμμ΄ λ€λ£¨κΈ° (1) | 2023.11.24 |
[Java] 2λͺ μ΄μ νλ μΌλ°μ κ²μ ꡬννκΈ° (0) | 2023.11.23 |
[Java] μ€λ³΅ μλ λ‘λ λ²νΈ μμ±νκΈ° (0) | 2023.11.21 |
[μ°μν ν ν¬μ½μ€] 2μ£Όμ°¨ - μ«μ μΌκ΅¬ κ²μ (0) | 2023.11.20 |