结对编程总结:简单的四则运算生成程序

时间:2021-09-06 12:12:12

1.题目描述:

面向小学生,随机生成30个100以内的四则运算,并且用户可以录入结果,检查用户录入的结果是否是正确的。

2.结对编程说明

 结对对象:苟皓衍  博客地址:http://home.cnblogs.com/u/blog-ghy/

3.本程序描述:

 a. 本程序在原有题目的基础上加以了部分改进:

         1. 随机生成四则运算的个数不受30的限制,用户可以输入数量以确定四则运算的个数。

 

         2.四则运算的运算值域不受100的限制,用户可以输入具体的数值以确定四则运算的数值范围。

 

         3.对随机生成表达式的过程做了优化,不会产生任何例如除不尽、减法结果为负数、加法或乘法结果大于规定值。

 

    b. 本程序符合一定的编码规范,在编码过程中,使用了规范的注释说明,通过文档生成工具,能够自动生成注释说明文档。

4.结对编程照片:

结对编程总结:简单的四则运算生成程序

5.源程序代码:

 

 

package com.erzhu;

import java.util.Random;

/**
 * 
 * @author Ezreal# 某公司程序员二柱的小孩上了小学二年级,老师让家长每天出30道(100以内)四则运算题目给小学生做。
 *         二柱立马就想到写一个小程序来做这件事。 这个事情可以用很多语言或者工具来实现:
 * 
 */
public class Calculate {

    /**
     * @param args
     */

    public static int first_number;
    public static int second_number;
    public static int flag;
    public static int i = 1;

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        Random rondom = new Random();
        while (i <= 100) {

            first_number = rondom.nextInt(99) + 1;
            second_number = rondom.nextInt(99) + 1;
            flag = rondom.nextInt(4) + 1;
            if (flag == 1) {
                if (first_number + second_number >= 100) {
                    continue;
                }
            }
            if(flag == 2){
                if (first_number - second_number <=0) {
                    continue;
                }
            }
            if(flag == 3){
                if (first_number * second_number >=100) {
                    continue;
                }
            }
            if(flag == 4){
                double result_double =first_number / second_number;
                int result_int =  first_number / second_number;
                if (100*result_double > 100*result_int && result_int !=0) {
                    continue;
                }
            }
            System.out.print(first_number);
            switch (flag) {
            case 1:
                System.out.print("+");
                break;
            case 2:
                System.out.print("-");
                break;
            case 3:
                System.out.print("*");
                break;
            case 4:
                System.out.print("/");
                break;
            }
            System.out.println(second_number + "=");
            i++;
        }
    }

}