Matlab的save這個指令問題

程式如下

在螢幕上可列出所有的月份本利和

可是save money.dat s1;這個指令只能儲存到最後1個月的

請問要如何改變才能存所有月份的

function money(month);

capital=input(\'輸入本金:\\n\');

rate=input(\'輸入年利率%:\\n\');

month=input(\'輸入存入月份\\n\');

for i=1:month;

s1=capital*(1+rate*0.01/12);

fprintf(\'存入%g個月,本利和:%2.8e元\\n\' ,i ,s1);

save money.dat s1;

capital=s1;

end

1 Answer

Rating
  • 伯臣
    Lv 4
    1 decade ago
    Best Answer

    因為你的變數 s1 一直更新,而 save 指令只是將 s1 的變數用.mat格式儲存起來

    所以到最後永遠只有最後那個月的金額囉!

    所以要多寫一個變數將每個月的金額紀錄起來

    這樣只要儲存那個變數就有每個月的金額囉!

    修改程式如下!

    function money(month);

    capital = input('輸入本金:\n');

    rate = input('輸入年利率%:\n');

    month = input('輸入存入月份\n');

    for i = 1:month

    s1 = capital*(1+rate*0.01/12);

    fprintf('存入%g個月,本利和:%2.8e元\n' ,i ,s1);

    capital = s1;

    s(i) = s1;

    end

    save money.dat s;

    這樣就可以囉!試試看唷!

    Source(s): 自己
Still have questions? Get your answers by asking now.