小学算术运算测试程序要求:制作一个可供小学数学运算程序:10以内加减法,能根据输入题数出题,判断做题是否正确,最后计算分
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/04/28 13:35:24
小学算术运算测试程序
要求:制作一个可供小学数学运算程序:10以内加减法,能根据输入题数出题,判断做题是否正确,最后计算分数.用gui用户界面.
在百度看到你的问答,特犀利,
java编程的哦
要求:制作一个可供小学数学运算程序:10以内加减法,能根据输入题数出题,判断做题是否正确,最后计算分数.用gui用户界面.
在百度看到你的问答,特犀利,
java编程的哦
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
/**
*10以内计算题,根据输入生成题目个数
*
*/
public class T2013_6_21IN10 extends JFrame implements ActionListener{
JisuanPanel[] panels;
int n;
public T2013_6_21IN10(){
super("10以内计算题");
String inputValue = JOptionPane.showInputDialog("输入题目个数:");
try{
n=Integer.parseInt(inputValue);
}catch(Exception e){n=20;}
panels=new JisuanPanel[n];
for(int i=0;i<panels.length;i++)
panels[i]=new JisuanPanel();
Container c=getContentPane();
c.setLayout(new BorderLayout());
JPanel panel=new JPanel(new GridLayout(n/2+1,2));
for(int i=0;i<panels.length;i++)
panel.add(panels[i]);
c.add(new JScrollPane(panel),BorderLayout.CENTER);
panel=new JPanel(new FlowLayout());
JButton button=new JButton("评卷");
button.setActionCommand("JUDGE");
button.addActionListener(this);
panel.add(button);
button=new JButton("重新出题");
button.setActionCommand("RESET");
button.addActionListener(this);
panel.add(button);
c.add(panel,BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e){
if(e.getActionCommand().equals("RESET")){
for(int i=0;i<panels.length;i++)
panels[i].init();
}
if(e.getActionCommand().equals("JUDGE")){
int n=0;
for(int i=0;i<panels.length;i++){
if(panels[i].right())
n++;
}
JOptionPane.showMessageDialog(null,"一共"+this.n+"题,共做对"+n+"道!\n得分:"+(int)((((double)n)/this.n)*100));
}
return;
}
public static void main (String[] args) {
JFrame frame=new T2013_6_21IN10();
frame.setBounds(50,50,400,500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
class JisuanPanel extends JPanel{
JLabel label;
JTextField field;
int result;
public JisuanPanel(){
super();
label=new JLabel();
field=new JTextField(4);
add(label);
add(field);
init();
}
public void init(){
int a,b;
String fu;
a=(int)(Math.random()*10)+1;
b=(int)(Math.random()*10)+1;
switch((int)(Math.random()*2)){
case 0:fu="+";label.setText(""+a+fu+b+"=");result=a+b;break;
case 1:fu="-";label.setText(""+a+fu+b+"=");result=a-b;break;
//case 2:fu="*";label.setText(""+a+fu+b+"=");result=a*b;break;
//case 3:fu="/";label.setText(""+a+fu+b+"=");result=a/b;break;
default:JOptionPane.showMessageDialog(null,"出错!");System.exit(0);
}
if(result<0||result>10)
init();
field.setText("");
return;
}
public boolean right(){
if(field.getText().equals(""))return false;
int num=result+1;
try{
num=Integer.parseInt(field.getText());
}catch(NumberFormatException e){
JOptionPane.showMessageDialog(null,"输入错误!");
field.setText("");
}
if(num==result){
if(!(label.getText()).startsWith("√"))
label.setText("√"+label.getText());
return true;
}
else return false;
}
}
import java.awt.*;
import java.awt.event.*;
/**
*10以内计算题,根据输入生成题目个数
*
*/
public class T2013_6_21IN10 extends JFrame implements ActionListener{
JisuanPanel[] panels;
int n;
public T2013_6_21IN10(){
super("10以内计算题");
String inputValue = JOptionPane.showInputDialog("输入题目个数:");
try{
n=Integer.parseInt(inputValue);
}catch(Exception e){n=20;}
panels=new JisuanPanel[n];
for(int i=0;i<panels.length;i++)
panels[i]=new JisuanPanel();
Container c=getContentPane();
c.setLayout(new BorderLayout());
JPanel panel=new JPanel(new GridLayout(n/2+1,2));
for(int i=0;i<panels.length;i++)
panel.add(panels[i]);
c.add(new JScrollPane(panel),BorderLayout.CENTER);
panel=new JPanel(new FlowLayout());
JButton button=new JButton("评卷");
button.setActionCommand("JUDGE");
button.addActionListener(this);
panel.add(button);
button=new JButton("重新出题");
button.setActionCommand("RESET");
button.addActionListener(this);
panel.add(button);
c.add(panel,BorderLayout.SOUTH);
}
public void actionPerformed(ActionEvent e){
if(e.getActionCommand().equals("RESET")){
for(int i=0;i<panels.length;i++)
panels[i].init();
}
if(e.getActionCommand().equals("JUDGE")){
int n=0;
for(int i=0;i<panels.length;i++){
if(panels[i].right())
n++;
}
JOptionPane.showMessageDialog(null,"一共"+this.n+"题,共做对"+n+"道!\n得分:"+(int)((((double)n)/this.n)*100));
}
return;
}
public static void main (String[] args) {
JFrame frame=new T2013_6_21IN10();
frame.setBounds(50,50,400,500);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}
class JisuanPanel extends JPanel{
JLabel label;
JTextField field;
int result;
public JisuanPanel(){
super();
label=new JLabel();
field=new JTextField(4);
add(label);
add(field);
init();
}
public void init(){
int a,b;
String fu;
a=(int)(Math.random()*10)+1;
b=(int)(Math.random()*10)+1;
switch((int)(Math.random()*2)){
case 0:fu="+";label.setText(""+a+fu+b+"=");result=a+b;break;
case 1:fu="-";label.setText(""+a+fu+b+"=");result=a-b;break;
//case 2:fu="*";label.setText(""+a+fu+b+"=");result=a*b;break;
//case 3:fu="/";label.setText(""+a+fu+b+"=");result=a/b;break;
default:JOptionPane.showMessageDialog(null,"出错!");System.exit(0);
}
if(result<0||result>10)
init();
field.setText("");
return;
}
public boolean right(){
if(field.getText().equals(""))return false;
int num=result+1;
try{
num=Integer.parseInt(field.getText());
}catch(NumberFormatException e){
JOptionPane.showMessageDialog(null,"输入错误!");
field.setText("");
}
if(num==result){
if(!(label.getText()).startsWith("√"))
label.setText("√"+label.getText());
return true;
}
else return false;
}
}
小学算术运算测试程序要求:制作一个可供小学数学运算程序:10以内加减法,能根据输入题数出题,判断做题是否正确,最后计算分
小学算术运算测试功能要求:制作一个可供小学数学运算程序:10以内加减法,能根据输入题数出题,判断做题是否正确,最后计算分
scratch中一个可供小学数学运算的程序 10以内加减法,能根据输入题数出题,判断做题是否正确,最后计算...
1、小学算术运算测试(math.c) 功能要求:制作一个可供小学数学四则运算程序,能根据输入题数出题,判断做
作一个可供小学生数学运算的程序:10以内的加减乘除,能根据输入的题数计算机自动出题,并判断是否正确
2、小学算术运算测试程序 功能要求:该程序用字符界面实现十道100以内加减法数学题,能根据题目计算出答案
用C语言编一个小学算术运算测试程序
程序填空题(1) 下面程序的功能为:输入一个整数,判断该数是否能被7整除.完成以下程序并运行出正确结果
用c语言给小学生出加法考试题 编写一个程序,给学生出一道加法运算题,然后判断学生输入的答案对错与否,
算术表达式求值设计一个程序,利用栈实现算术表达式的求值要求:(1)以字符串形式输入语法正确算术表达式,参与运算的操作数为
小学数学快速加减法运算
小学数学的运算法则的程序是什么?