• 四则运算


    四则运算

     1 package com.java.sizeyunsuan;

     2

     3 public class lianxi {

     4     String f()

     5     {

     6         int i=(int)(Math.random()*10);

     7         int j=(int)(Math.random()*10);

     8         if(i>=j)

     9         {

    10             int temp=i;

    11             i=j;

    12             j=temp;

    13         }

    14         return("("+i+"/"+j+")");

    15     }

    16     public static void main(String[] args)

    17     {

    18         String a,b;

    19         int k;

    20         lianxi lianxi=new lianxi();

    21         for(int n=0;n<30;n++)

    22         {

    23             a=lianxi.f();

    24             b=lianxi.f();

    25             int i=(int)(Math.random()*100);

    26             int j=(int)(Math.random()*100);

    27             switch((int)(Math.random()*4))

    28             {

    29             case 0:

    30               k=(int)(Math.random()*3);

    31                 if(k==0)

    32                    System.out.println(i+"+"+j+"=");

    33                 else if(k==1)

    34                    System.out.println(a+"+"+j+"=");

    35                 else if(k==2)

    36                        System.out.println(b+"+"+a+"=");

    37                 break;

    38             case 1:

    39                 k=(int)(Math.random()*3);

    40                 if(i<j)

    41                 {

    42                     int temp=i;

    43                     i=j;

    44                     j=temp;

    45                 }

    46                     if(k==0)

    47                         System.out.println(i+"-"+j+"=");

    48                     else if(k==1)

    49                         System.out.println(j+"-"+a+"=");

    50                     else if(k==2)

    51                         System.out.println(b+"-"+a+"=");

    52               break;

    53             case 2:

    54                 k=(int)(Math.random()*3);

    55                    if(k==0)

    56                        System.out.println(i+"*"+j+"=");

    57                     else if(k==1)

    58                        System.out.println(a+"*"+j+"=");

    59                     else if(k==2)

    60                            System.out.println(b+"*"+a+"=");

    61               break;

    62             case 3:

    63             while(j==0)

    64               j= (int)(Math.random()*100);

    65               System.out.println(i+"/"+j+"=");

    66               break;

    67               }

    68         }

    69     }


    70 }
    1.设计思路:此题目为随机产生30道四则运算,首先要产生随机数,我先写了一个函数用来随机生成一个真分数,然后在主函数中调用这个函数获取它的返回值,然后又利用Random()产生两个二位的随机整数,然后利用Swich分支结构分别实现加减乘除,随机产生0,1,2,3,分别代表加减乘除。
    需要注意:(1)考虑到小学生没有学过负数,所以在进行减法时,假如出现被减数大于减数,则将两数交换,再进行减法;
             (2)考虑到除数不能为0,假如除数为0,则再产生一个随机数,利用while循环;
             (3)在每个运算中又用if-else结构分了多种情况,其中除法情况太多并且复杂,没有一一实现,日后会多加改善。
    2.运行结果:

     

  • 相关阅读:
    dev 调用汉化资源
    GridViewDataHyperLinkColumn 显示与内容分离
    gmail 邮箱找回方法
    C# 拼接 in 查询字符串
    asp.net ajax
    解决vmware 因为网络问题而引起的异常
    从改工具到改模型
    Orchard源码:EventBus&EventHandler
    AutoResetEvent和ManualResetEvent理解
    缓存设计
  • 原文地址:https://www.cnblogs.com/zhaochenguang/p/8299210.html
Copyright © 2020-2023  润新知