신규 개발하여 서비스를 계획 중이다. 이를 위하여 예금
액 및 이자 계산 등 3가지 예금 별로 지급총액을 계산할 수 있는 프로그램을
구현하려고 한다.
이 프로그램을 실행시키면 첫 번째 나타나는 작업이 예금자에게 3가지 예금 종
류 중에서 하나를 고르게 하는 것이다. 예금 종류를 선택하면 이어서 예금액을
입력받게 된다. 입력 정보는 예금액과 예치 기간이다.
여기서 예금액은 원단위이며, 예치 기간은 월 단위로 각각 정수 값이다. 이자 계산은 년단위의 복리에
의한 계산을 하게 된다.
계산이 종료되면 마지막으로 원리합계를 화면에 표시한 후에 다시 예금액과 예치 기간을 입력할 것이지를 묻는다. 예금액과 기간을 다 시 입력하기로 하면 화면이 지워지고 처음부터 다시 예금 종류를 입력하는 화
면으로 전환된다.
여기서 3가지 예금 종류별로 이율은 :
예금 종류 사업가용 직장인용 대학생용
년이율 4% 6% 8%
또한 원리합계를 계산하는 공식
원리합계(T) = 원금 * (1 + 이율)n
여기서 n은 예금 기간(년)이다.
조건
(1) 프로그램에서 main함수의 대략적인 구성은 다음과 같다. 아래에 보인
코드는 main(함수의 잔체 코드가 아닌 일부임에 유의하라
int main()
{
.
acc_type = read_type(); //예금 종류를 입력받는 함수
acc_amount = read_amount(); //예금액을 입력받는 함수
acc_duration = read_duration(); //예금 기간을 입력받는 함수
//원리합계를 계산하는 함수
acc_total = compute_total(acc_type, acc_amount, acc_duration);
}
(2) 위의 main() 함수를 완성하기에 앞서 ‘acc_’ 로 시작되는 변수를 선언해야 한
다.
(3) read_ 로 시작되는 함수는 키보드로부터 각각 정보를 입력받는 함수이다.
(4) 원리합계를 계산하는 함수 compute_total(acc_type, acc_amount, acc_duration)
는 총 이자율을 계산하는 함수 compute_interest() 를 호출해야 한다.
compute_interest()함수의 원형은 다음과 같다.
float compute_interest(data_type1 acc_rate, data_type2 acc_duration);
여기서 data_type1과 data_type2는 각각 main()함수에서 선언한 acc_rate와
acc_duration의 데이터 타입과 같다. 이 함수의 반환 값은 float 형이다.
(5) compute_interest()함수를 구현하는 방법은 세가지가 있다. 한가지는
(1+acc_rate)n 과 같이 계산하는 방법이다. 여기서 n은 acc_duration을 햇수로 변
환한 값이다.
두 번째 방법은 for-반복문을 이용하여 구현하는 방법이다. 마지막은
재귀함수를 이용하는 방법이다.
(5-1) 첫 번째 방법은 pow 라이브러리 함수를 사용하는 방법이다.
(5-2) 두 번째 방법은
total *= (1 + acc_rate) 를 n 번 반복해서 계산하도록 하는 방법이다. 이때 n은 정수이어야 한다.
즉 년도가 소수점이 되면 소수점 이하값을 잘라낸다. 이때 사용하는 합수는 floor이다.
(5-3) 세 번째 방법은 재귀함수를 사용하는 것으로
float compute_interest_3 (. . .)
{
.
return (1+ acc_rate) * compute_interest_3 (. . .);
}
와 같이 작성된다.
이 과제에서는 세가지 방법을 모두 구현하고 각각의 방법별로 원리 합계를 화면
에 출력해야 한다. 여기서 각 방법의 함수명은
compute_interest_1, compute_interest_2, compute_interest_3 과 같이 구분한다.
문제가 어려운거 알고 있습니다.. 이걸 몇시간만에 초보자한테 풀라고하니 답이 없어서
지식인에 물어봅니다 내일 아침까지 해가야 하는데 함수부분이 이해가 안가서 손도 못되고잇네요
풀어주시거나 약간의 해설을 붙여서 메일로 답장해주시면 보내주실때 계좌번호 같이 적어주시면
치킨 한마리 정도 드실 금액은 입금해드릴 수 있습니다 ㅜㅜ 솔직히 이렇게 까지 하고 싶진 않은데 정말
너무 어렵네요 문제가.. 내일 아침까지 해야하니 위조건을 다 고려해볼때 c언어 고수님들
아니면 힘들것 같지만.. 그래도 우선 부탁해 봅니다... 우선 도와주실분 리플이라도 주시면 감사하겠습니다
완벽히는 아니라 어느정도 많이 해결했다 해도 입금해드릴 용의있습니다...
남이 풀라고 낸거 돈주고 대신 풀어달라고 하는거 정말 아닌거 알지만 c언어 초기 수업받는학생한테 다짜고짜
하루도 아닌 몇시간만에 이런문젤 풀어오라니 맨첨 #include<stido.h> 이거 말고는 도저히 짜볼 엄두가 안나네요 ㅠㅠ