[Java] ํค๋ณด๋์์ ์
๋ ฅ๋ ๋ฌธ์์ด์ ์ ์๋ก ๋ฐ๊พผ ๋ค ๊ทธ ๊ฐ์ ์ดํฉ๊ณผ ํ๊ท ๊ตฌํ๊ธฐ
2021. 3. 8. 20:53ใ๊ฐ๋ ์ ๋ฆฌ ์์ ์ค/Java
728x90
๋ฐ์ํ
์๋ ํ์ธ์? ์ฃผ๋ํ๋ ์ ๋๋ค.
03์ 08์ผ ์์ ๋ฅผ ์ค๋์์์ผ ํ ์ ์์์ต๋๋ค ใ ๋๋ ์ด๋ ค์ด ์๋ฐ
์ ๊ฐ ํผ์์ ์ณ ๋ณธ ๊ธฐ๋ ์ผ๋ก ์ฌ๋ฌ๋ถ๋ค๊ณผ ํจ๊ป ๋๋๊ณ ์ถ์ด ์ฌ๋ฆฝ๋๋ค! ๊ณต๋ถํ์๋๋ฐ, ๋ง์ ๋์ ๋์๊ธฐ ๋ฐ๋ผ๊ฒ ์ต๋๋ค!
๊ทธ๋ผ ๋ฐ๋ก ์์ ํด ๋ณด๊ฒ ์ต๋๋ค!
๐ ๊ต์ก ๊ณผ์ ๊ด๋ฆฌ ํ๋ก๊ทธ๋จ (๊ฐ์ฒด์ ์ปฌ๋ ์
list ๋ฐฐ์ด ์ฌ์ฉ)
๐ Homework_210308.java (๊ฐ์ฒด์ Method ์ฌ์ฉํ์ง ์๊ณ ..)
package homework;
import java.util.Scanner;
public class Homework_210308 {
public static void main(String[] args) {
// ํค๋ณด๋ ์
๋ ฅ ๊ฐ ๋ฐ๊ธฐ
Scanner s = new Scanner(System.in);
// ์
๋ ฅ ๋ฐ์ ๋ฌธ์์ด์ ํ ๊ธ์์ฉ ๋ด์ ๋ฐฐ์ด ์ ์ธ
char[] str = new char[20];
// ๋ฌธ์์ด ์ ์ ๋ณํ ๊ฐ ๋ณ์ ์ ์ธ
int numstr = 0;
// ๋๋ฌธ์ ๊ฐ์์ฉ ๋ณ์ ์ ์ธ
int bigCount = 0;
// ์๋ฌธ์ ๊ฐ์์ฉ ๋ณ์ ์ ์ธ
int smallCount = 0;
// ์ซ์ ๊ฐ์์ฉ ๋ณ์ ์ ์ธ
int numberCount = 0;
// ๋ชจ๋ ๋ฌธ์ ํตํฉ ๊ฐ์์ฉ ๋ณ์ ์ ์ธ
int totalCount = 0;
// ์ฌ์ฉ์์ ์
๋ ฅ๊ฐ์ ์
๋ ฅ ๋ฐ์ input ๋ฌธ์์ด ๋ณ์์ ์ ์ฅ
System.out.println("์
๋ ฅ๊ฐ์ ์
๋ ฅ ํด ์ฃผ์ธ์");
String input = s.nextLine();
// ์
๋ ฅ๋ ๋ฌธ์์ด ๊ธธ์ด ๋งํผ ๋ฐ๋ณต๋ฌธ ์์
for (int i = 0; i < input.length(); ++i) {
// ์ฌ์ฉ์๊ฐ ์
๋ ฅํ ๋ฌธ์์ด ์ค i๋ฒ์งธ ๋ฌธ์ ํ๋๋ฅผ
// ๋ฌธ์ ์๋ฃ ๋ฐฐ์ดํ str i๋ฒ์งธ์ ์ ์ฅ
str[i] = input.charAt(i);
// str i๋ฒ์งธ ๋ฌธ์๊ฐ ์๋ฌธ์์ธ์ง ํ๋ณ
if ( str[i] >= 'a' && str[i] <= 'z') {
// ํค๋ณด๋ ์
๋ ฅ๊ฐ ์ ์๋ก ๋ณํ
numstr += str[i];
// ์๋ฌธ์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ
++smallCount;
// ์ฌ์ฉ์ ์
๋ ฅ๊ฐ์ด ์๋ฌธ์๊ฐ ์๋๊ณ , ๋๋ฌธ์์ธ์ง ํ๋ณ
} else if ( str[i] >= 'A' && str[i] <= 'Z') {
// ํค๋ณด๋ ์
๋ ฅ๊ฐ ์ ์๋ก ๋ณํ
numstr += str[i];
// ๋๋ฌธ์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ
++bigCount;
// ์ฌ์ฉ์ ์
๋ ฅ๊ฐ์ด ์ํ๋ฒณ์ด ์๋๊ณ , ์ซ์์ธ์ง ํ๋ณ
} else if (str[i] >= '0' && str[i] <= '9') {
// ์ซ์(๋ฌธ์์ด) ์ ์๋ก ๋ณํ
numstr += str[i];
// ์ซ์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ
++numberCount;
}
}
// ๋ฌธ์์ด ์ ์๋ก ๋ณํํ ์ดํฉ ๊ตฌํ๊ธฐ
int total = numstr;
// ๋ฌธ์์ด ๊ฐ์ ์ดํฉ ๊ตฌํ๊ธฐ
totalCount = smallCount + bigCount + numberCount;
System.out.println("์๋ฌธ์๊ฐ " + smallCount + " ๊ฐ ์
๋ ฅ ๋์์ต๋๋ค.");
System.out.println("๋๋ฌธ์๊ฐ " + bigCount + " ๊ฐ ์
๋ ฅ ๋์์ต๋๋ค.");
System.out.println("์ซ์๊ฐ " + numberCount + " ๊ฐ ์
๋ ฅ ๋์์ต๋๋ค.");
System.out.println("์
๋ ฅ๋ ๋ฌธ์์ด์ ์ ์ ์ดํฉ์ " + total + " ์
๋๋ค.");
// ํ๊ท ๊ตฌํ๊ธฐ
System.out.println("ํ๊ท ์ " + total / totalCount + "์
๋๋ค." );
}
}
๐ Homework_Method_210308.java (Method๋ง ์ฌ์ฉ)
package homework;
import java.util.Scanner;
public class Homework_Method_210308 {
static char[] str; // ๋ฌธ์์ด ํ ๊ธ์์ฉ ๋ด์ ๋ฐฐ์ด ์ ์ธ
static int numstr; // ๋ฌธ์์ด ์ ์ ๋ณํ ๋ณ์ ์ ์ธ
static int bigCount; // ๋๋ฌธ์ ๊ฐ์ ์ ์ฅ ๋ณ์ ์ ์ธ
static int smallCount; // ์๋ฌธ์ ๊ฐ์ ์ ์ฅ ๋ณ์ ์ ์ธ
static int numberCount; // ์ซ์ ๊ฐ์ ์ ์ฅ ๋ณ์ ์ ์ธ
static int totalCount; // ๋ฌธ์์ด ์ด ๊ฐ์ ์ ์ฅ ๋ณ์ ์ ์ธ
public static void main(String[] args) {
// ํค๋ณด๋ ์
๋ ฅ ๊ฐ ๋ฐ๊ธฐ
Scanner s = new Scanner(System.in);
// ๊ธ์ ๋ฐฐ์ด ์ด๊ธฐํ(20๊ฐ)
str = new char[20];
numstr = 0;
number = 0;
bigCount = 0;
smallCount = 0;
numberCount = 0;
totalCount = 0;
// ์ฌ์ฉ์์๊ฒ ๋ฌธ์์ด์ ์
๋ ฅ ๋ฐ๊ธฐ
System.out.println("์
๋ ฅ๊ฐ์ ์
๋ ฅ ํด ์ฃผ์ธ์");
String input = s.nextLine();
// ์
๋ ฅ ๋ฐ์ ๋ฌธ์์ด ๊ธธ์ด ๋งํผ ๋ฐ๋ณต๋ฌธ ๋์
for (int i = 0; i < input.length(); ++i) {
// ์
๋ ฅ ๋ฐ์ ๋ฌธ์์ด ์ค ํ ๊ธ์ i๋ฒ์งธ ๊ฒ์ ๋ฝ์ ๊ธ์ ๋ฐฐ์ด i๋ฒ์งธ์ ์ ์ฅ
str[i] = input.charAt(i);
// ์๋ฌธ์ ํ๋ณ
if ( str[i] >= 'a' && str[i] <= 'z') {
// loopForSmall ๋ฉ์๋์ i๋ฒ์งธ ๊ธ์๋ฅผ ์
๋ ฅ๊ฐ์ผ๋ก ์ ๋ฌ
loopForSmall(str[i]);
// ๋๋ฌธ์ ํ๋ณ
} else if ( str[i] >= 'A' && str[i] <= 'Z') {
// loopForBig ๋ฉ์๋์ i๋ฒ์งธ ๊ธ์๋ฅผ ์
๋ ฅ๊ฐ์ผ๋ก ์ ๋ฌ
loopForBig(str[i]);
// ์ซ์ ํ๋ณ
} else if (str[i] >= '0' && str[i] <= '9') {
// loopForNum ๋ฉ์๋์ i๋ฒ์งธ ๊ธ์๋ฅผ ์
๋ ฅ๊ฐ์ผ๋ก ์ ๋ฌ
loopForNum(str[i]);
}
}
// ์ ์๋ก ๋ณํ๋ ๋ฌธ์์ด ์ดํฉ total์ ์ ์ฅ
int total = numstr;
// ๋ฌธ์์ด ๊ฐ์ totalCount์ ์ ์ฅ
totalCount = smallCount + bigCount + numberCount;
System.out.println("์๋ฌธ์๊ฐ " + smallCount + " ๊ฐ ์
๋ ฅ ๋์์ต๋๋ค.");
System.out.println("๋๋ฌธ์๊ฐ " + bigCount + " ๊ฐ ์
๋ ฅ ๋์์ต๋๋ค.");
System.out.println("์ซ์๊ฐ " + numberCount + " ๊ฐ ์
๋ ฅ ๋์์ต๋๋ค.");
System.out.println("์
๋ ฅ๋ ๋ฌธ์์ด์ ์ ์ ์ดํฉ์ " + total + " ์
๋๋ค.");
System.out.println("ํ๊ท ์ " + total / totalCount + "์
๋๋ค." );
} // Main ๋
// ๋๋ฌธ์๋ก ํ๋ณ๋ ๊ธ์๋ค ์ฒ๋ฆฌ ๋ฉ์๋ (์
๋ ฅ๊ฐ์ผ๋ก ํ ๊ธ์(i๋ฒ์งธ)์ฉ ๋ฐ์)
private static void loopForNum(char input) {
// ์
๋ ฅ ๋ฐ์ ํ ๊ธ์(i๋ฒ์งธ)๋ฅผ ์ ์๋ก ๋ณํํด์ ์ ์ฅ
numstr += input;
// ์ซ์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ
++numberCount;
}
// ๋๋ฌธ์๋ก ํ๋ณ๋ ๊ธ์๋ค ์ฒ๋ฆฌ ๋ฉ์๋ (์
๋ ฅ๊ฐ์ผ๋ก ํ ๊ธ์(i๋ฒ์งธ)์ฉ ๋ฐ์)
private static void loopForBig(char input) {
// ์
๋ ฅ ๋ฐ์ ํ ๊ธ์(i๋ฒ์งธ)๋ฅผ ์ ์๋ก ๋ณํํด์ ์ ์ฅ
numstr += input;
// ๋๋ฌธ์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ
++bigCount;
}
// ์๋ฌธ์๋ก ํ๋ณ๋ ๊ธ์๋ค ์ฒ๋ฆฌ ๋ฉ์๋ (์
๋ ฅ๊ฐ์ผ๋ก ํ ๊ธ์(i๋ฒ์งธ)์ฉ ๋ฐ์)
private static void loopForSmall(char input) {
// ์
๋ ฅ ๋ฐ์ ํ ๊ธ์(i๋ฒ์งธ)๋ฅผ ์ ์๋ก ๋ณํํด์ ์ ์ฅ
numstr += input;
// ์๋ฌธ์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ
++smallCount;
}
} // Class ๋
๐ Homework_Object_210308.java (๊ฐ์ฒด์ Method ์ฌ์ฉ)
package homework;
import java.util.Scanner;
public class Homework_Oject_210308 {
public static void main(String[] args) {
// ํค๋ณด๋ ์
๋ ฅ ๊ฐ ๋ฐ๊ธฐ
Scanner s = new Scanner(System.in);
// ์
๋ ฅ๊ฐ ํ ๊ธ์์ฉ ๋ฐ์ ๋ฐฐ์ด ์ ์ธ ๋ฐ ์ด๊ธฐํ๋ก 20๊ฐ ์ ์ธ
char[] str = new char[20];
// LoopFor ์ฐธ์กฐ ์๋ฃํ loop์ LoopFor ๊ฐ์ฒด ์์ฑ
LoopFor loop = new LoopFor();
// ์ฌ์ฉ์ ์
๋ ฅ๊ฐ ๋ฐ๊ธฐ
System.out.println("์
๋ ฅ๊ฐ์ ์
๋ ฅ ํด ์ฃผ์ธ์");
String input = s.nextLine();
// ์ฌ์ฉ์ ์
๋ ฅ๊ฐ๋งํผ ๋ฐ๋ณต ์์
for (int i = 0; i < input.length(); ++i) {
// ์ฌ์ฉ์ ์
๋ ฅ๊ฐ ์ค ํ ๊ธ์์ฉ ๊ธ์ ๋ด๊ธฐ ์ํ ๋ฐฐ์ด์ i๋ฒ์งธ๋ฅผ ๋ด์.
str[i] = input.charAt(i);
// ๊ฐ์ฒด์ด๋ฏ๋ก, null ๊ฐ ํ์ธํ๋ ์ ํจ์ฑ ๊ฒ์ฌ
if ( !loop.equals(null)) {
// ์๋ฌธ์ ํ๋ณ
if ( str[i] >= 'a' && str[i] <= 'z') {
// LoopFor ๊ฐ์ฒด์ loopForSamll ๋ฉ์๋์ i๋ฒ์งธ ๊ธ์๋ฅผ ์ ๋ฌ
loop.loopForSmall(str[i]);
// ๋๋ฌธ์ ํ๋ณ
} else if ( str[i] >= 'A' && str[i] <= 'Z') {
// LoopFor ๊ฐ์ฒด์ loopForBig ๋ฉ์๋์ i๋ฒ์งธ ๊ธ์๋ฅผ ์ ๋ฌ
loop.loopForBig(str[i]);
// ์ซ์ ํ๋ณ
} else if (str[i] >= '0' && str[i] <= '9') {
// LoopFor ๊ฐ์ฒด์ loopForNum ๋ฉ์๋์ i๋ฒ์งธ ๊ธ์๋ฅผ ์ ๋ฌ
loop.loopForNum(str[i]);
}
}
}
// LoopFor ๊ฐ์ฒด์ numstr ํ๋์ ์ ์ฅ๋ ๊ฐ์ total์ ์ ์ฅ
// ๋ฌธ์์ด์ ์ ์๋ก ๋ณํํ ์ดํฉ
int total = loop.numstr;
// LoopFor ๊ฐ์ฒด์ smallCount, bigCount, numberCount ํ๋์ ์ ์ฅ๋ ๊ฐ totalCount์ ์ ์ฅ
// ๋ชจ๋ ๋ฌธ์ ๊ฐ์ ์ธ๊ธฐ
int totalCount = loop.smallCount + loop.bigCount + loop.numberCount;
System.out.println("์๋ฌธ์๊ฐ " + loop.smallCount + " ๊ฐ ์
๋ ฅ ๋์์ต๋๋ค.");
System.out.println("๋๋ฌธ์๊ฐ " + loop.bigCount + " ๊ฐ ์
๋ ฅ ๋์์ต๋๋ค.");
System.out.println("์ซ์๊ฐ " + loop.numberCount + " ๊ฐ ์
๋ ฅ ๋์์ต๋๋ค.");
System.out.println("์
๋ ฅ๋ ๋ฌธ์์ด์ ์ ์ ์ดํฉ์ " + total + " ์
๋๋ค.");
System.out.println("ํ๊ท ์ " + total / totalCount + "์
๋๋ค." );
}
}
๐ LoopFor.java
package homework;
public class loopFor {
int numstr; // ๋ฌธ์๋ฅผ ์ ์๋ก ๋ณํํ ๊ฐ ์ ์ฅ ๋ณ์ ์ ์ธ
int bigCount; // ๋๋ฌธ์ ์ธ๊ธฐ ๋ณ์ ์ ์ธ
int smallCount; // ์๋ฌธ์ ์ธ๊ธฐ ๋ณ์ ์ ์ธ
int numberCount; // ์ซ์ ์ธ๊ธฐ ๋ณ์ ์ ์ธ
int totalCount; // ๋ฌธ์ ์ด ๊ฐ์ ๋ณ์ ์ ์ธ
// ์์ฑ์ ( ํ๋ ๊ฐ ์ด๊ธฐํ )
public loopFor() {
this.numstr = 0;
this.number = 0;
this.bigCount = 0;
this.smallCount = 0;
this.numberCount = 0;
this.totalCount = 0;
}
// Main Method์์ ์๋ฌธ์ ํ๋ณ if๋ฌธ์ ๊ฑธ๋ฆด ๊ฒฝ์ฐ ๊ทธ ๋จ์ด๊ฐ ์
๋ ฅ๊ฐ์ผ๋ก ๋ค์ด์ด.
public void loopForSmall(char input) {
// numstr ํ๋์ ๊ธ์๋ฅผ ์ ์๋ก ๋ณํํ์ฌ ์ ์ฅ
this.numstr += input;
// ์๋ฌธ์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ
++smallCount;
}
// Main Method์์ ๋๋ฌธ์ ํ๋ณ if๋ฌธ์ ๊ฑธ๋ฆด ๊ฒฝ์ฐ ๊ทธ ๋จ์ด๊ฐ ์
๋ ฅ๊ฐ์ผ๋ก ๋ค์ด์ด.
public void loopForBig(char input) {
// numstr ํ๋์ ๊ธ์๋ฅผ ์ ์๋ก ๋ณํํ์ฌ ์ ์ฅ
this.numstr += input;
// ์๋ฌธ์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ
++bigCount;
}
// Main Method์์ ์ซ์ ํ๋ณ if๋ฌธ์ ๊ฑธ๋ฆด ๊ฒฝ์ฐ ๊ทธ ๋จ์ด๊ฐ ์
๋ ฅ๊ฐ์ผ๋ก ๋ค์ด์ด.
public void loopForNum(char input) {
this.numstr += input;
// ์๋ฌธ์ ๊ฐ์ 1์ฉ ์ฆ๊ฐ
++numberCount;
}
}
์ฃผ๋ํ๋์ ๊ธ์ด ๋ง์์ ๋์ จ๋์? ๊ตฌ๋ ๊ณผ ๊ณต๊ฐ! ๊ทธ๋ฆฌ๊ณ , ๋๊ธ์ ์ฃผ๋ํ๋์๊ฒ ๋ง์ ํ์ด ๋ฉ๋๋ค!
728x90
๋ฐ์ํ