❤️第一次博客作业❤️
我对“软件工程”的理解是这样的:首先,从字面意思理解,它是关于软件的一项工程。工程这一个词,就意味着它不能仅靠着一个人的力量完成。所以,那些仅由一人编写出的软件项目并不能称之为“软件工程”。其次,我们不难发现,在我们日常所用的这些好用的软件背后,往往是一个团队,倾整个团队之力,共同缔造出一个软件。一项工程,是十分精确而严谨的,不是一个人学到了一点技术之后的“玩一玩”和“试一试”,它目标是明确而清晰的。
在学习“软件工程”之前,我们已经学过了C语言、Java语言等一些基础知识。本次课程,应课程要求我们使用了新的编译环境IDEA。并在今天的课堂中使用IDEA进行JAVA语言的一个小程序的编写。
下面是我编写的程序代码:
Step.1 自动生成加减法运算题(不显示答案)(较简单)
1 package coculate; 2 import java.util.*; 3 4 public class suanshu1 { 5 public static void main(String args[]){ 6 Random random = new Random(); 7 for(int i=0; i<10;i++){ 8 //考虑使用ArrayList来实现符号的随机变化 9 List<String>list=new ArrayList<String>(); 10 list.add("+"); 11 list.add("-"); 12 int A = random.nextInt(100); 13 int B = random.nextInt(100); 14 System.out.print("("+(i+1)+") "); 15 System.out.println(A+list.get(random.nextInt(2))+B+"="); 16 } 17 } 18 }
Step.2 自动生成加减乘除运算题(显示答案)(难度提升)
1 package coculate; 2 import java.util.*; 3 4 public class suanshu2 { 5 public static void main(String args[]){ 6 Random random = new Random(); 7 for(int i=0; i<10;i++){ 8 //考虑使用ArrayList来实现符号的随机变化 9 List<String>list=new ArrayList<String>(); 10 list.add("+"); 11 list.add("-"); 12 list.add("×"); 13 list.add("÷"); 14 int A = random.nextInt(100); 15 int B = random.nextInt(100); 16 int OP = random.nextInt(4); 17 int S=0; 18 switch (OP){ 19 case 0:S=A+B;break; 20 case 1:S=A-B;break; 21 case 2:S=A*B;break; 22 case 3:S=A/B;break; 23 default:break; 24 } 25 System.out.print("("+(i+1)+") "); 26 System.out.println(A+list.get(OP)+B+"="+S); 27 } 28 } 29 }
Step.3 自动生成加减乘除运算题(更加严谨)(难度逐渐升高)
我们需要考更多的问题:
- 运算题是否有重复
- 结果是否是负数
- 如何判断运算题的重复
- ……
写在最后:
通过这个题目,我体会到了软件从最初的简单一步一步变得复杂,功能变的更加完善,解决问题的方式逐步严谨细致化的过程。通过前两节课的学习,我对软件工程有了一个大概的认知,希望在接下来的实践中更加深入体会软件工程的奥义。