随机产生30到整数真分数四则运算

这是软件工程课写的的第一个代码,主要思路是利用随机数 产生整数 真分数 以及四个代表运算符号的数字,唯一的复杂点事要判断除数是否为零,整数运算使用重新生成随机数的方法,当真分数运算中除数为零时使用分子分母同时加1的方法处理。

本程序主要运用了

rand()%100产生随机数
srand((int)time(NULL));做时间种子

课上写思路用时30分钟  实际编写过程中通过网上查资料 问同学 学习以上两个代码 编写时间一个半小时。

#include<iostream>
#include<ctime>
#include<stdlib.h>
using namespace std;
int main()
{
int num1, num2, sym;
srand((int)time(NULL));
for (int i = 1; i < 30; i++)
{
num1 = rand() % 100;
num2 = rand() % 100;
int k = rand() % 2;
sym = rand() % 4;

if (k == 1) //-------------------整数运算
{
if (sym == 0)
{
cout << num1 << "+" << num2 << "=" << endl;
}
if (sym == 1)
{
cout << num1 << "-" << num2 << "=" << endl;
}
if (sym == 2)
{
cout << num1 << "*" << num2 << "=" << endl;
}
if (sym == 3)
{
if (num2 == 0)
{
num2 = rand() % 100 + 1;
cout << num1 << "/" << num2 << "=" << endl;
}
else
cout << num1 << "/" << num2 << "=" << endl;
}
}

if (k == 0) //-------------------真分数运算
{
int a, b, c, d;
a = rand() % 100;
b = rand() % 100;
c = rand() % 100;
d = rand() % 100;
for (;;)
{
if ((a > b&&b !=0)&&(c>d&&d!=0))
{
num1 = b / a;
num2 = d / c;
break;
}
else
a = rand() % 100;
b = rand() % 100;
c = rand() % 100;
d = rand() % 100;

}
if (sym == 0)
{
cout <<b<<"/"<<a<< "+" << d<<"/"<<c << "=" << endl;
}
if (sym == 1)
{
cout << b << "/" << a << "-" << d << "/" << c << "=" << endl;
}
if (sym == 2)
{
cout << b << "/" << a << "*" << d << "/" << c << "=" << endl;
}
if (sym == 3)
{
if (d == 0)
{
num2 = (d+1)/(c+1);
cout << b << "/" << a << " / " << d << "/" << c << "=" << endl;
}
else
cout << b << "/" << a << " / " << d << "/" << c << "=" << endl;
}
}
}
return 0;
}

时间: 2024-10-06 22:11:14

随机产生30到整数真分数四则运算的相关文章

对随机产生分数或整数的四则运算的代码实现

一设计思想: 一.完成如何实现随机调取两个数和一个四则运算符号 二.如何实现以四则运算题的形式输出 三.如何实现选择性输出多少题 四.如何补加输出分数的功能 二.代码实现 package com.minirisoft; import java.util.*; public class Yunsuan { public static void main(String[] args){ Scanner input=new Scanner(System.in); System.out.println(

对随机产生分数或整数的四则运算题的代码实现

一设计思想: 一.完成如何实现随机调取两个数和一个四则运算符号 二.如何实现以四则运算题的形式输出 三.如何实现选择性输出多少题 四.如何补加输出分数的功能 二.代码实现 package com.minirisoft; import java.util.*; public class Yunsuan { public static void main(String[] args){ Scanner input=new Scanner(System.in); System.out.println(

个人项目1:随机生成30道整数四则运算题

使用的语言:C# 基本思路:运用最近学习的C#窗体应用程序设计两个按钮一个显示的窗口,运用Random生成随机数,编写程序,调试运行. 窗体设计 代码 namespace 随机四则运算 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button2_Click(object sender, EventArgs e) { Application.Exit();

用程序实现随机编30道2年级四则运算题

问题 源代码 #include<iostream.h>#include<time.h>#include<stdlib.h>int main(){ int a,b,c,d; srand((int)time(0)); for(int i=0;i<30;i++) { a=1+(int)(100*rand()/(RAND_MAX+1.0)); b=1+(int)(100*rand()/(RAND_MAX+1.0)); c=1+(int)(4*rand()/(RAND_MA

软件工程实验一--编程随机生成30个四则运算,算数包括100以内的整数和真分数。

软件工程实验一: ——编程随机生成30个四则运算,算数包括100以内的整数和真分数. 实验思路:先利用rand()函数随机生成两个算数,包括100以内的整数和真分数,生成100以内的整数,用rand()%100,为了避免在除法运算中除数不能为零,所以运算符右边的整数直接用1+rand()%99:在随机生成真分数时,我先生成两个整数,来充当分子和分母,同样分母不能为零,用1+rand()%99.加减乘除四则运算有整数与整数之间的运算,分数与分数之间的运算,整数和分数之间的运算,分数和整数之间的运算

软件工程课后作业——用JAVA编写的随机产生30道四则运算

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

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

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

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

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

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

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