PROBLEM #4.1
有一個很好玩的數字遊戯是:假設第一天到銀行存一分錢,第二天存二分錢,第三天三分錢,如此累積,問何時可以累積到10,000,000元?(設銀行的年息為5%)
- 撰寫一程式,試算上述之過程,並將其每達1000元倍數之日數同時印出,直到達到所期望之金額。
- 若每天所存改為五分錢、十分錢、十五分錢,。。。,試比較達到期望金額之日數。
- 實際生活上能否執行此項累積方式,試說明你的想法。
The blog is for students who attend the course of 'Applications of Matlab in Engineering' to submit their homeworks, discussions and classnotes. Related blog can be refered to http://bime-matlab.blogspot.com. Students's work should be posted to this blog through a specified email address under a preset or self-defined title with proper contents. Students also have to leave their comments consistently to all the posted titles. Both posting material and comments will be graded later.
有一個很好玩的數字遊戯是:假設第一天到銀行存一分錢,第二天存二分錢,第三天三分錢,如此累積,問何時可以累積到10,000,000元?(設銀行的年息為5%)
張貼者: 不留白老人 於 10/19/2006 10:44:00 下午
標籤: PROBLEM
以前所提供之作業繳交方式仍然有效,將繼續計分直到期末。由於沒有期末考,故一切作業均在明年一月十二日午夜到期,逾期不收件,請同學注意。
4 則留言:
% 第一小題程式碼 %
close all
clear
clc
n=0;
sum=0;
p=1000;
d1=1;
while sum<100000000
n=n+1;%每一天增加一元
sum=sum+sum*(5/100/365);%前一天的利息
sum=sum+n;%每天的本金
end
fprintf('每天增加一元存到10,000,000要花%d天\n',n)
% 執行結果 %
每天增加一元存到10,000,000要花10726天
% 第二小題程式碼 %
close all
clear
clc
n=0;
sum=0;
p=1000;
d1=1;
while sum<100000000
n=n+5;%每一天增加五元
sum=sum+sum*(5/100/365);%前一天的利息
sum=sum+n;%每天的本金
end
fprintf('每天增加五元存到10,000,000要花%d天\n',n/5)
% 執行結果 %
每天增加五元存到10,000,000要花5529天
>>
這一題是一天增加一個單位存到銀行,我是把它的年利率變成日利率來算,當第一天存的本金,第二天就會得到第一天存的 利息;所以第二天的本金為包括第一天原來的本金及利息,再加上第二天新存入之本金,以此類推
我也不知這觀念是否正確...請同學們多多指導囉
我應該沒有眼花
如果假設觀念正確
但好像設了P=1000 卻忘記了要使用?
在sum=sum+n後方我就來幫忙補上XD
if rem(sum,p)==0
fprintf('正好達到1000倍數,這是第%d天\n',n)
end
這樣應該對八@@?
如果是下一題
if rem(sum,p)==0
fprintf('正好達到1000倍數,這是第%d天\n',n/5)
我是不知道實際上銀行怎麼計算年息
根據自己的常識來說 是不是要存滿一年
才是使用年息來算阿
要是年息是會每月變動的 那麼這種方法應該要修正
剛剛下一題忘了打end
那個p=1000是我多打的忘了刪了~不好意思~謝謝同學你有用心的看
而你的想法在整數是沒有問題~但因為有利息在~所以if rem(sum,p)==0應該不會出現,所以會print不出來達到1000元陪數~所以你要另外想一個來試看看.
而且要print出來應該會達到好幾百筆唷~你可以試看看
嗯~利息的算法有正常來說有年利息和月利息這二種算法~用google應該會找到如何算的想法...因為我是根據定存的關念來改成日利息算的~其實正常應該沒在算日利息吧
張貼留言