我想知道这是否是解决第三章练习2的最佳方法。
练习2:编写一个程序,读取两个数字:账户余额和以百分比表示的年利率。然后,您的程序应在一年后显示新的余额。没有存款或取款,只有利息支付。您的程序应该能够重新生成以下示例运行:
计息程序
录入起始余额:6000
录入年利率:4.25
一年后余额=6255.0
可能的解决方案:
/* Interest.java
* -------------------------------
* Program reads two numbers and
* adds the interest rate.
*/
import acm.program.*;
public class Interest extends ConsoleProgram{
public void run(){
int sBalance = readInt("Enter Balance: ");
Double iRate = readDouble("Enter interest rate: ");
Double yBalance = sBalance + (sBalance * (iRate / 100));
println("The balance after one year = " + yBalance);
}
}
我刚刚运行了你的代码,它起作用了。acm.program.*是斯坦福用来方便java教学的一个库。它使调试变得容易得多,因为控制台窗口弹出,它是交互式的,而不是使用对初学者来说可能有点可怕的控制台
掌握的内容:32位地址的寻址方式及其寻址公式的特殊性。 熟练掌握的内容:立即寻址方式、寄存器寻址方式、直接寻址方式、寄存器间接寻址方式、寄存器相对寻址方式、基址加变址寻址方式和相对基址加变址寻址方式等七种最基本的操作数寻址方式的含义。 在每种寻址方式中,其定位操作数的基本过程。 建议学习时间:8小时。
谈到翻译,许多人之所以感兴趣又不敢尝试,是因为自认“文字天赋不够,文学造诣不足”,总之,就是艺术修养不够。翻译是与文字打交道的工作,而“文字”总让人联想到“文学”。毕竟,在相当长的时间里,只有少数受过教育的人才识字,他们所追求的只有“经世文章”,而且公众所知的“翻译家”无一不是以翻译文学作品而著称;故而“文字”常常与“文学”和“艺术”紧密起来,由此把众多感兴趣的潜在译者挡在门外。 那么,想做翻译需
最近更新日期:20// 在 Linux 的环境下,如果你不懂 bash 是什么,那么其他的东西就不用学了!因为前面几章我们使用终端机下达指令的方式, 就是通过 bash 的环境来处理的喔!所以说,他很重要吧!bash 的东西非常的多,包括变量的设置与使用、 bash 操作环境的创建、数据流重导向的功能,还有那好用的管线命令!好好清一清脑门,准备用功去啰~ ^_^ 这个章节几乎是所有命令行界面 (c
了解的内容:简单了解微处理器的发展史,了解各类微处理器的内部结构,知道指令在其内部执行的基本过程。 掌握的内容:32位微机内存管理模式——实方式和保护方式——的含义。这两种管理模式的区别以及它们在兼容性方面所起的作用。 熟练掌握的内容:8位、16位和32位寄存器组中各寄存器的名称、主要用途和它们之间的关系。内存单元的逻辑划分方法,逻辑地址和物理地址之间的相互转换方法。 建议学习时间:10小时。
练习3:分析bootloader进入保护模式的过程。(要求在报告中写出分析) BIOS将通过读取硬盘主引导扇区到内存,并转跳到对应内存中的位置执行bootloader。请分析bootloader是如何完成从实模式进入保护模式的。 提示:需要阅读小节“保护模式和分段机制”和lab1/boot/bootasm.S源码,了解如何从实模式切换到保护模式,需要了解: 为何开启A20,以及如何开启A20 如何
了解的内容:引入子程序的作用,制作用户子程序库的方法。 掌握的内容:在子程序中,保护和恢复寄存器的原因和方法。 熟练掌握的内容:子程序定义的一般格式,子程序的调用和返回指令,调用子程序常用的参数传递方法,模块间通信的方法。 建议学习时间:8小时。