• 30道四则运算


    一、题目要求

         二柱一下打印出好多份不同的题目,让孩子做了。老师看了作业之后,对二柱赞许有加。别的老师闻讯, 问二柱能否扩大他的影响力,编个软件,给二年级到四年级都用,多了一些小小的要求:

     1、题目避免重复;
    2、可定制(数量/打印方式);
    3、可以控制下列参数: 是否有乘除法、是否有括号、 数值范围、加减有无负数、除法有无余数、否支持分数 (真分数, 假分数, …)、是否支持小数 (精确到多少位)、打印中每行的间隔可调整;

    二、设计思想:

    先不管别的,把30道四则运算题目输出来是前提,这是第一步分解题目;

    三、代码:

    两种方法,第一种方法:

    #include <iostream.h>
    #include <stdlib.h>
    int main()
    {
    	int a,b,c;
    	for(int i=0;i<30;i++)
    	{
    		a=rand()%100;//x+rand()%(y-x+1)随机生成【x,y】内的整数
    		b=rand()%100;
    		c=rand()%4;
    		switch (c)
    		{
    			case 1:
    			cout<<a<<"+"<<b<<"="<<endl;
    			break;
    			case 2:	
    			cout<<a<<"-"<<b<<"="<<endl;
    			break;
    			case 3:	
    			cout<<a<<"*"<<b<<"="<<endl;
    			break;
    			case 4:	
    			cout<<a<<"/"<<b<<"="<<endl;
    			break;	
    		}	
    	}
    	return 0;
    }
    

      

    第二种方法不用脑子:

    #include <iostream.h>
    #include <stdlib.h>
    int main()
    {
        cout<< "1. 3/7 × 49/9 - 4/3 "<<endl;
        cout<< "2. 8/9 × 15/36 + 1/27 "<<endl;
        cout<< "3. 12× 5/6 – 2/9 ×3 "<<endl;
        cout<< "4. 8× 5/4 + 1/4 "<<endl;
        cout<< "5. 6÷ 3/8 – 3/8 ÷6 "<<endl
        << "6. 4/7 × 5/9 + 3/7 × 5/9 "<<endl
        << "7. 5/2 -( 3/2 + 4/5 ) "<<endl
        << "8. 7/8 + ( 1/8 + 1/9 ) "<<endl
        << "9. 9 × 5/6 + 5/6 "<<endl
        << "10. 3/4 × 8/9 - 1/3 "<<endl
        << "11. 7 × 5/49 + 3/14 "<<endl
        << "12. 6 ×( 1/2 + 2/3 ) "<<endl
        << "13. 8 × 4/5 + 8 × 11/5 "<<endl
        << "14. 31 × 5/6 – 5/6 "<<endl
        << "15. 9/7 - ( 2/7 – 10/21 ) "<<endl
        << "16. 5/9 × 18 – 14 × 2/7 "<<endl
        << "17. 4/5 × 25/16 + 2/3 × 3/4 "<<endl
        << "18. 14 × 8/7 – 5/6 × 12/15 "<<endl
        << "19. 17/32 – 3/4 × 9/24 "<<endl
        << "20. 3 × 2/9 + 1/3 "<<endl
        << "21. 5/7 × 3/25 + 3/7 "<<endl
        << "22. 3/14 ×× 2/3 + 1/6 "<<endl
        << "23. 1/5 × 2/3 + 5/6 "<<endl
        << "24. 9/22 + 1/11 ÷ 1/2 "<<endl
        << "25. 5/3 × 11/5 + 4/3 "<<endl
        << "26. 45 × 2/3 + 1/3 × 15 "<<endl
        << "27. 7/19 + 12/19 × 5/6 "<<endl
        << "28. 1/4 + 3/4 ÷ 2/3 "<<endl
        << "29. 8/7 × 21/16 + 1/2 "<<endl
        << "30. 101 × 1/5 – 1/5 × 21"<<endl;
    
        return 0;
    }

    四、总结

      这道题目如果开始没有思路,就用上面的第二种没脑子的方法,不管别的我就是能给出你结果才是正确的;因为做的设计题目有限,没有能够熟练快速的写出来。以后要加强锻炼;每天在晚上的时候做一些基础的练习,以为万丈高楼平地起,基础打得牢,才能走的更远。

  • 相关阅读:
    Lock、synchronized和ReadWriteLock,StampedLock戳锁的区别和联系以及Condition
    Spring Boot + Spring Cloud 实现权限管理系统 后端篇(十一):集成 Shiro 框架
    Spring Cloud之路:(七)SpringBoot+Shiro实现登录认证和权限管理
    XSS过滤JAVA过滤器filter 防止常见SQL注入
    shiro jwt 构建无状态分布式鉴权体系
    JSON Web Token 入门教程
    C#实现WinForm DataGridView控件支持叠加数据绑定
    C#实现WinForm窗体逐渐显示效果
    定义通用的可通过lambda表达式树来获取属性信息
    C#实现通用数据过滤窗体
  • 原文地址:https://www.cnblogs.com/zhaixing/p/4317950.html
Copyright © 2020-2023  润新知