728x90

과제/계산기 3

Calculator lv5 stack클래스 이용

Calculator lv5 실습은 우선순위를 고려한 프로그래밍을 작성하는 것이다. 괄호가 있다면 안에있는 괄호가 먼저 계산되어야하고 만약 * / 연산자가 있다면 해당 연산자가 + 나 - 보다 먼저 계산되어야한다는 조건이다. 해당 실습을 위해서 Stack이라는 클래스를 활용해야한다고 한다. Stack이란 개념은 아직 알고리즘에 익숙하지 않아서 여러 블로그글을 보다가 우연히 아래의 블로그에서 이미지가 잘 설명되어서 참고하였다. https://mailmail.tistory.com/26 [자료구조] 스택(배열 이용) - push, pop 안녕하세요. PEACE-입니다.자료구조 스터디 [세 번째] 글입니다. 1. 스택 스택이란 자료구조 중 하나입니다. 가장 최근에 들어간 데이터가 가장 먼저 나오며 흔히 후입선출(..

과제/계산기 2024.03.12

Calculator lv4 추상클래스 설계

Calculator 과제를 수행하면서 lv4가 가장 어려웠다. lv3까지는 lv1의 내용을 복붙해서 기능만 나눴기때문에 파일만 추가해주고 끝이었었다. 하지만 아직도 추상클래스에대한 사용법이 미숙해서 어려웠던것 같다. 원해 파일구성은 6파일이었으나, 계산을수행하는 파일의 코드가 길어져서 RunningCalculate.kt파일과 Calculator.kt파일로 나눴다. [AbstractOperation.kt] package com.ellycrab.calculatorlv4 open abstract class AbstractOperation { //자식에게서만 사용할 수 있도록 protected로 설정함, 모든 연산에서 형변환은 공통임 protected fun convertToDouble(str: String?)..

과제/계산기 2024.03.07

Calculator lv1~lv4

Calculator과제를 통해서 개념정리를 할 수 있었다. 맨처음 readLine()이 아무리 터미널 창에 쳐도 에러만 떠서 포기하려했었으나, 이번 주차는 화면에 중점을 두기보단 기초개념 복습 및 정리기간이었기 때문에 어떻게든 찾아서 해결했다. 문제는 이러했다. 애뮬레이터 버튼을 눌러서 오류가 났었던 것이었다 ㅎㄷㄷ 이것때문에 아까운 시간을 날렸었던것 같다. 나는 아래와 같이 다시 프로젝트를 시작했다. 이상태에서 시작했어야했고 처음부터 나는 Empty view를 생성해서 망했던것 같다. 그 후는 실행이 정상적으로 되었다. lv1~lv4까지 구현해보았다. lv1: 더하기, 빼기, 나누기, 곱하기 연산을 수행할 수 있는 Calculator 클래스를 만들고, 클래스를 이용하여 연산을 진행하고 출력하기 lv2:..

과제/계산기 2024.03.07
728x90