找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 17762|回复: 6

批处理脚本实现C语言趣味编程百例013:该存多少钱

[复制链接]
发表于 2012-4-22 11:35:29 | 显示全部楼层 |阅读模式
加分:1个技术分
要求用BAT脚本实现:

假设银行一年整存零取的月息为0.63%。现在某人手中有一笔钱,他打算在今后的五年中的年底取出1000元,到第五年时刚好取完,请算出他存钱时应存入多少。

*问题分析与算法设计
分析存钱和取钱的过程,可以采用倒推的方法。若第五年年底连本带息要取1000元,则要先求出第五年年初银行存款的钱数:
第五年初存款=1000/(1+12*0.0063)
依次类推可以求出第四年、第三年……的年初银行存款的钱数:
第四年年初存款=(第五年年初存款+1000)/(1+12*0.0063)
第三年年初存款=(第四年年初存款+1000)/(1+12*0.0063)
第二年年初存款=(第三年年初存款+1000)/(1+12*0.0063)
第一年年初存款=(第二年年初存款+1000)/(1+12*0.0063)
通过以上过程就可以很容易地求出第一年年初要存入多少钱。

*程序说明与注释
  1. #include<stdio.h>
  2. int main()
  3. {
  4. int i;
  5. float total=0;
  6. for(i=0;i<5;i++) /*i 为年数,取值为0~4年*/
  7. total=(total+1000)/(1+0.0063*12); /*累计算出年初存款数额,第五次的计算
  8. 结果即为题解*/
  9. printf("He must save %.2f at first.\n",total);
  10. }
复制代码
*运行结果
He must save 4039.44 at first
 楼主| 发表于 2012-4-22 11:36:16 | 显示全部楼层
此题用到了小数乘法
发表于 2012-4-22 12:44:47 | 显示全部楼层
嗯?批处理不能计算小数吧?
发表于 2012-4-22 14:23:56 | 显示全部楼层
回复 3# canyuexiaolang


据说很久之前就有人写了浮点数加减乘除
发表于 2012-4-22 20:16:13 | 显示全部楼层

  1. @echo off&setlocal enabledelayedexpansion
  2. set /a "Md=12*63+10000,$=1000"
  3. set "Hx=FEDCBA9876543210"
  4. for /l %%i in (1 1 5) do (
  5.     set /a i+=$*10000
  6.     set Len=!i!!Hx!
  7.     set /a "N=0x!Len:~16,1!,Len=!i:~,8!%%Md,S=!i:~,8!/Md"
  8.     for /l %%j in (8 1 !N!) do (
  9.         set/a "Tem=!Len!!i:~%%j,1!/Md,Len=!Len!!i:~%%j,1!%%Md"
  10.         set "S=!S!!Tem!"
  11.     )
  12.         set "Emp="
  13.         for /l %%j in (0 1 3) do (
  14.             set /a Len*=10,Tem=Len/md,Len%%=md
  15.             set "Emp=!Emp!!Tem!"
  16.         )
  17.         set i=!S!!Emp!
  18. )
  19.         echo !S!.!Emp!
  20. pause
复制代码
发表于 2012-4-23 14:38:38 | 显示全部楼层
能用批处理轻松完成的就用批,不行的话就换其他的语言,不要太勉强了。两年前我经常来这个论坛,后来发现批太薄弱了,就学了VC,转眼两年的时间过去了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-16 23:29 , Processed in 0.018542 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表