Skip to content

Che0807/Calculator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

54 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

์‚ฌ์น™์—ฐ์‚ฐ ๊ณ„์‚ฐ๊ธฐ ํ”„๋กœ์ ํŠธ

์ด ํ”„๋กœ์ ํŠธ๋Š” ๊ธฐ์ดˆ ์‚ฌ์น™์—ฐ์‚ฐ ๊ณ„์‚ฐ๊ธฐ๋กœ, ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋‘ ์ˆซ์ž์™€ ์—ฐ์‚ฐ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ž…๋‹ˆ๋‹ค. ์ถ”๊ฐ€์ ์œผ๋กœ, ๊ณ„์‚ฐ ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•˜๊ณ , ๊ฒฐ๊ณผ ์‚ญ์ œ ๊ธฐ๋Šฅ๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ๋‹จ๊ณ„

Lv1: ๊ธฐ๋ณธ์ ์ธ ์‚ฌ์น™์—ฐ์‚ฐ ๊ณ„์‚ฐ๊ธฐ

  • ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ๋‘ ์ˆซ์ž์™€ ์—ฐ์‚ฐ์ž๋ฅผ ์ž…๋ ฅ๋ฐ›๊ณ , ์‚ฌ์น™์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ๊ฒฐ๊ณผ๋ฅผ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค.
  • ๋” ์ด์ƒ ๊ณ„์‚ฐ์„ ํ•˜์ง€ ์•Š์œผ๋ ค๋ฉด "exit"์„ ์ž…๋ ฅํ•˜๊ณ  ํ”„๋กœ๊ทธ๋žจ์„ ์ข…๋ฃŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Lv2: ๊ฒฐ๊ณผ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€

  • ๊ณ„์‚ฐ๋œ ๊ฒฐ๊ณผ๋“ค์„ ๋ฆฌ์ŠคํŠธ์— ์ €์žฅํ•˜๊ณ , ์ €์žฅ๋œ ๊ฒฐ๊ณผ ์ค‘ ์ฒซ ๋ฒˆ์งธ ๊ฒฐ๊ณผ๋ฅผ ์‚ญ์ œํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
  • "delete"๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๊ฒฐ๊ณผ๊ฐ€ ์‚ญ์ œ๋˜๊ณ , "exit"์„ ์ž…๋ ฅํ•˜๋ฉด ํ”„๋กœ๊ทธ๋žจ์ด ์ข…๋ฃŒ๋ฉ๋‹ˆ๋‹ค.

Lv3: Enum์„ ํ™œ์šฉํ•œ ๊ณ„์‚ฐ๊ธฐ

  • OperatorType Enum์„ ํ™œ์šฉํ•˜์—ฌ ์—ฐ์‚ฐ์ž ๊ธฐํ˜ธ์— ๋”ฐ๋ผ ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ๋ฆฌํŒฉํ† ๋งํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์—ฐ์‚ฐ์ž๋Š” PLUS, MINUS, MULTIPLY, DIVIDE์™€ ๊ฐ™์€ Enum ๊ฐ’์œผ๋กœ ์ •์˜๋˜์–ด ์žˆ์œผ๋ฉฐ, ๊ณ„์‚ฐ ๋กœ์ง์ด ๋”์šฑ ๊น”๋”ํ•ด์กŒ์Šต๋‹ˆ๋‹ค.
  • ์ด ํ”„๋กœ์ ํŠธ๋Š” ํ•จ์ˆ˜ํ˜• ์ธํ„ฐํŽ˜์ด์Šค(Num)๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์—ฐ์‚ฐ์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉ ๋ฐฉ๋ฒ•

  1. ํ”„๋กœ๊ทธ๋žจ์„ ์‹คํ–‰ํ•˜๋ฉด ์ฒซ ๋ฒˆ์งธ ์ˆซ์ž์™€ ๋‘ ๋ฒˆ์งธ ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•˜๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.
  2. ๊ฐ ์ˆซ์ž๋ฅผ ์ž…๋ ฅํ•œ ํ›„, ์—ฐ์‚ฐ ๊ธฐํ˜ธ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค (+, -, *, /).
  3. ๊ณ„์‚ฐ๋œ ๊ฒฐ๊ณผ๊ฐ€ ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค.
  4. ๊ณ„์† ๊ณ„์‚ฐํ•˜๋ ค๋ฉด ์•„๋ฌด ํ‚ค๋‚˜ ์ž…๋ ฅํ•˜๊ณ , "exit"์„ ์ž…๋ ฅํ•˜์—ฌ ์ข…๋ฃŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  5. Lv2์—์„œ๋Š” "delete"๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์ €์žฅ๋œ ๊ณ„์‚ฐ ๊ฒฐ๊ณผ ์ค‘ ์ฒซ ๋ฒˆ์งธ ๊ฒฐ๊ณผ๋ฅผ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ

  • Java
  • IntelliJ IDEA
  • Enum, Lambda, Functional Interface ํ™œ์šฉ

์„ค์น˜ ๋ฐฉ๋ฒ•

  1. ์ด ์ €์žฅ์†Œ๋ฅผ ํด๋ก ํ•ฉ๋‹ˆ๋‹ค.
    git clone https://github.com/Che0807/Calculator.git

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages