简单小程序——产生三十道小学四则运算题目

题目要求程序可以生成三十道小学四则运算题目。

因为要随机生成题目,则需要产生随机数,因此我上网搜索了生成随机数的方法,选择了使用Random类得到规定范围内的随机数。因为一个运算需要三个元素,两个参与运算的数字,一个运算符(加减乘除),因此需要获得三个随机数,其中一个随机数的范围为1~4,对应加减乘除四个运算符。在程序中需要特别注意的是除法的运算题目生成,由于是小学题目,因此要生成可以整除的运算式。因此在除法的运算阶段,我进行了判断,若当前产生的两个随机数不能实现整除或者除数为零,便重新获得两个随机数并判断是否可以整除且输出是否为零,若不行,再次进行判断,直到可以整除且除数不为零,由此保证随机生成的题目是小学生可以接受的难度。

程序输出的最终结果包括题目部分和答案部分,并且题目和答案都有对应的序号,方便进行做完题目之后对答案。

程序代码:

package 四则运算;

import java.util.Random;

public class yunsuan {

public static void main(String[] args) {

// TODO Auto-generated method stub

int [] d;

d=new int [30];

int a,b;

int e;

System.out.println("以下是产生的三十道题目:");

for(int i=0;i<30;i++) {

Random r=new Random();

a=r.nextInt(100)+1;

b=r.nextInt(100)+1;

switch(r.nextInt(4)+1) {

case 1:

System.out.println((i+1)+":"+a+"+"+b+"=");

d[i]=a+b;

break;

case 2:

System.out.println((i+1)+":"+a+"-"+b+"=");

d[i]=a-b;

break;

case 3:

System.out.println((i+1)+":"+a+"*"+b+"=");

d[i]=a*b;

break;

case 4:

while((e=a%b)!=0||b==0) {

a=r.nextInt(100)+1;

b=r.nextInt(100)+1;

}

System.out.println((i+1)+":"+a+"/"+b+"=");

d[i]=a/b;

break;

}

}

System.out.println("以下是上述三十道题目的答案:");

for(int j=0;j<30;j++) {

System.out.println((j+1)+":"+d[j]);

}

}

}

原文地址:https://www.cnblogs.com/ruangongyouxi/p/9749909.html

时间: 2024-10-09 18:21:26

简单小程序——产生三十道小学四则运算题目的相关文章

关于运用C语言自动生成三十道小学二年级四则运算

#include <stdio.h>#include <stdlib.h>#include <time.h> int main(){ int i = 0; srand((unsigned)time(NULL)); while(i<30) { int a = rand()%100; int b = rand()%100; int j; j = rand()%4; printf("%d", a); switch(j) { case 0: print

生成300道小学四则运算题

通过Java编写一个能够自动生成三百道小学四则运算的小demo 通过Ramdom获取随机数 algorithm的值确定运算法则 parameter值确定循环次数 package D; import java.text.DecimalFormat; import java.util.Random; public class Demo { public static void main(String[] args) { operation(); } public static void operat

随机产生三十道四则运算题程序

#include<stdio.h>#include<stdlib.h>#include<time.h>int main(){ int x,y,z,t,i; srand(time(NULL)); printf("三十道四则运算题\n"); for(i=0;i<30;i++) { x=rand()%100; y=rand()%100; z=rand()%4; switch(z) { case 0: printf("%d+%d=\n&quo

微信小程序把玩(三)tabBar底部导航

原文:微信小程序把玩(三)tabBar底部导航 tabBar相对而言用的还是比较多的,但是用起来并没有难,在app.json中配置下tabBar即可,注意tabBar至少需要两个最多五个Item选项 主要属性: 对于tabBar整体属性设置: 对于tabBar中每个Item属性设置: 下面是官网一张图对tabBar描述: app.json的配置相对就简单了:

单片机 学习笔记(二)——简单小程序

今天收获了单片机的几个简单小程序:     延时程序: void Delay(unsigned int xx) //输入 xx :ms { while(xx--) { Delay1ms(); } } void Delay1ms() //@11.0592MHz 1ms { unsigned char i, j; _nop_(); _nop_(); _nop_(); i = 11; j = 190; do { while (--j); } while (--i); } 流水灯程序: #include

IOS 霓虹灯简单小程序

在RootViewController.m文件中 - (void)viewDidLoad//视图加载方法 - (void)viewDidLoad { //设置红色 UIView *viewRed = [[UIView alloc]initWithFrame:CGRectMake(100, 100, 120, 30)]; viewRed.backgroundColor = [UIColor redColor]; [self.view addSubview:viewRed]; //设置橙色 UIVi

基于C语言libvirt API简单小程序

libvirt API简单小程序 1.程序代码如下 #include<stdio.h> #include<libvirt/libvirt.h> int getDomainInfo(int id) { virConnectPtr conn = NULL; virDomainPtr dom = NULL; virDomainInfo info; conn = virConnectOpenReadOnly(NULL); if (conn == NULL) { fprintf(stderr

3、简单小程序练习

简单小程序的实现: 九九乘法表: 1 for i in range(1,10): 2 for j in range(1,i+1): 3 print('%d*%d=%d'%(j,i,j*i),end='\t') 4 print() 定义一个登录函数 def login(username,password): if (username=='alex' and password=='123'): print('用户名密码正确,登录成功') else: print('请输入正确的用户名和密码') use

结对项目----实现一个自动生成小学四则运算题目的命令行程序

一.Github项目地址:https://github.com/lyh27/exercise 团队成员:卢耀恒3118005065    莫政3118005067 二.需求 自然数:0, 1, 2, …. 真分数:1/2, 1/3, 2/3, 1/4, 1’1/2, …. 运算符:+, −, ×, ÷. 括号:(, ). 等号:=. 分隔符:空格(用于四则运算符和等号前后). 算术表达式: e = n | e1 + e2 | e1 − e2 | e1 × e2 | e1 ÷ e2 | (e),