自动生成30道四则元算题目

主要分成三部分来解决这个问题。

输入:自动输入

功能实现:生成6个随机数,有两个分子,两个分母,一个控制运算符,一个控制整数算式还是分数算式

输出:根据控制整数算式还是分数算式的随机数,进行相应的输出

#include<iostream>
#include<string>
#include<time.h>
using namespace std;
void main()
{
  int a[6],b=0,c,e;
  string str="+-*/";
  for(b=0;b<30;b++)
  {
  for(int i=0;i<6;i++)
     {
        a[i]=rand();
          while( a[i]<1||a[i]>=100)
  a[i]=rand();
      }
      while(a[0]>a[1])
     {
          c=a[0];
  a[0]=a[1];
  a[1]=c;
     }
     while(a[3]>a[4])
     {
          c=a[3];
  a[3]=a[4];
  a[4]=c;
     }
     c=a[2]%4;
     e=a[5]%2;
 if(e==0)
     cout<<a[1]<<" "<<str[c]<<" "<<a[4]<<" "<<"="<<endl;
 else
 cout<<a[0]<<"/"<<a[1]<<" "<<str[c]<<" "<<a[3]<<"/"<<a[4]<<" "<<"="<<endl;
  }
}

时间: 2024-10-11 00:26:38

自动生成30道四则元算题目的相关文章

程序实现自动生成30道四则运算题目

课堂上老师要求我们做这样一个题目,题目要求是自动生成30道四则运算题目,要求除整数加减乘除外,还有真分数加减乘除.刚开始听到这个题目一头雾水,有点复杂,但仔细拆分这个题目不难发现,这个题目可以简化成三个小问题,分别是随机数自动生成两个数,自动生成符号,还有输出结果.对于随机数自动生成两个数可以简化为随机数生成整数,随机数生成真分数,生成真分数可以简化到随机数生成分子和分母.对于自动生成符号,也可以简化为随机数生成1,2,3,4,分别代表+,—,*,/,输出结果可以用一个for循化,实现输出30道

实现自动生成30道四则运算题目

这个问题我按照老师的方法,把他分成3部分进行完成, 输入:本程序没有输入略过, 代码实现功能: 1.先生成1道题,30道就是重复30次生成 2.运算符问题可以先定义一个字符串string d="+-*/"然后生成随机数对4取余确定用第几个 3.真分数运算跟运算符生成一个道理也是用随机数对2取余 输出:根据对2取余的情况确定输出整数运算题目或者分数运算题目 #include<iostream> #include<string> #include<stdlib

随机生成30道四则运算程序分析

题目要求:随机生成30到四则运算题,其中不能超过2位运算,包含真分数. 问题细化: 1.循环30次 2.四则运算方式的表示,+,-,*,/ 3.真分数的产生 4.随机产生真分数之间或者整数之间以及真分数和整数之间的运算 细化分析: 1.循环30次 2.在循环中随机产生一个1-4的随机数,表示整数运算,真分数和整数之间的运算,还是真分数之间的运算 3.在确定后,在随机产生一个1-4的随机数表示使用哪种规则,+,-,*,/ 4.真分数表示使用两个随机数,要求分子比分母小,然后用“分子/分母”表示 以

程序实现自动生成30道四则运算题目(2)

继上一次的任务后,本周老师又给自动出题系统提出了新的要求,我感觉我跟二柱子一样可怜,本次老师的要求是1.题目避免重复2.题目可以定制(数量/打印方式)3.可以控制一下参数 (1)是否有乘除法 (2)是否有括号(最多可以支持十个数参与运算)(3)数值范围(4)加减有无负数(5)除法有无余数 针对本次任务,我们逐个要求,逐个分析对于题目避免重复可以用建立字符串数组,进行字符串之间相互比较来解决,另外题目可以定制通过随机数生成题目数并带入循环解决,同时打印方式可以用文件输入输出流把数据存到文件里.对于

随机生成30道100以内的四则运算题目

1.题目要求:除了整数以外,还要支持真分数的四则运算. 2.设计思路: (1)操作数的产生: a.利用宏定义定义随机函数. b.引用随机随机函数产生随机数,并定义随机数的取值范围. (2)运算符问题的解决: a.引用随机函数产生0~3四个随机数 b.引用swatch.case结构,随机选择运算符号:0:加 1:减 2:乘 3:除 (3)运行结果的输出: 利用for循环结构,顺序输出30道四则运算题目,并显示在屏幕上. (4)未解决问题: 随机产生真分数计算的问题还没有解决,希望通过以后的努力可以

随机生成30道四则运算-NEW

补充:紧跟上一个随机生成30道四则运算的题目,做了一点补充,可以有真分数之间的运算,于是需要在原来的基础上做一些改进. 首先指出上一个程序中的几个不足:1.每次执行的结果都一样,所以不能每天给孩子出30道一样的题吧!2.没有考虑,如果随机出的是除法,且除数为0的情况.3.没有实现生成真分数的四则运算的功能. 经过分析,决定依次进行改进: 针对问题1:在程序中设置时间种子,即可使得每次程序运行的结果不同. 针对问题2:当判断要生成除法运算时,做一个判断,若除数为0,则重新生成. 针对问题3:定义一

软件工程课堂练习-随机生成30道四则运算练习题

习题要求:随机生成30道四则运算题 以下是程序代码: 1 #include "stdafx.h" 2 #include "stdio.h" 3 #include "time.h" 4 #include "stdlib.h" //随机器函数头文件 5 6 void print() 7 { 8 srand((int)time(0)); 9 for(int i=0;i<=29;i++) 10 { 11 int x; 12 in

随机生成30道四则运算题目

1.题目要求:随机生成30到四则运算题,其中不能超过2位运算,包含真分数. 2.设计思路 (1)先随机产生四个数,前两个数用作整数的四则运算,然后前两个数再作为第一个分数,后两个数作为第二个分数. (2)利用switch\case函数分别对每种情况进行表示,利用除以7的余数表示8中不同的情况,前四种表示整数的加减乘除运算,后四种表示分数的加减乘除运算. (3)利用for循环产生30个运算式. 3.程序代码: //2016/3/3 王宗泽 #include<iostream> #include&

随机生成30道四则运算题

思路:首先随机生成两个操作数.将运算符存到数组c中,随机生成0-3的整数作为数组下标.即相当于随机产生运算符. 利用for循环输出30道四则运算题 #include<iostream.h>#include<stdlib.h>int main(){     int a,b,d,i;     char c[4]={'+','-','*','/'};     for(i=0;i<30;i++)     {           a=int(rand()%11);