計算題五年級_五年級小數除法豎式計算題100道 - CSDN

2020-11-24 CSDN技術社區

        做這個軟體的時候 ,我應該從用戶的角度考慮問題,而不是簡單實現了老師交代的功能。 於是我把功能的選擇變成了年級的選擇 ,

選擇哪一個年級的,然後填寫出題的數量,按下出題按鈕,然後在下面的文本框中就會出現對應年級的難度的題目,這樣簡化的用戶的選擇。

      開始的時候我將數字生成單獨寫在一個類裡邊的,但是後來做界面的時候,本想調用實例化對象,但是出現了線程的問題,嘗試了解決方法但是沒有奏效

  於是我又將生成數字的方法直接寫在一個類裡邊直接就是利用這一個形成了出題的界面和處理。

       當然本軟體是為小學生準備的 於是我去百度了小學各個年級數學題出題範圍 ,於是發現自己寫的方法沒有調用上,是因為小學難度還沒有達到那個水平 ,但是

方法我已經寫出了,如果要用的話,到時候可以調用就可以了。

     原始碼如下:

 

import java.awt.Dimension;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.DecimalFormat;
import java.util.Random;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class Jiemian extends JFrame{
      public JPanel Panel1;
      public JLabel graselect;//年紀選擇
      public JLabel questnum;//題目數量
      public ButtonGroup buttonGroup;
      public JTextField textnum;//添加題目數量
      public JButton  chuti;
      public JButton   chongzhi;
      public  JTextArea  quest;//出題的地方
      public JRadioButton gradetwo;
      public JRadioButton gradethree;
      public JRadioButton gradefour;
      public JRadioButton gradefive;

     public static void main(String[] args) {
         try{
            Jiemian jm=new Jiemian();
              jm.setVisible(true);
             }
        catch(Exception e){
          e.printStackTrace();
  }
 }
  public Jiemian(){
  super();
  setTitle("隨機出題系統");
  setBounds(0,0,400,500);
  getContentPane().setLayout(null);
  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

 //年級選擇
  graselect=new JLabel();
  graselect.setBounds(0, 30, 50, 30);
  graselect.setText("年級:");
  getContentPane().add(graselect);
  //二年級
     buttonGroup=new ButtonGroup();
     gradetwo =new JRadioButton();
     buttonGroup.add(gradetwo);
     gradetwo.setText("二年級");
     gradetwo.setBounds(60, 30, 80, 30);
     gradetwo.setSelected(true);
     getContentPane().add(gradetwo);
     //三年級
     gradethree =new JRadioButton();
     buttonGroup.add(gradethree);
     gradethree.setText("三年級");
     gradethree.setBounds(140, 30, 80, 30);
     //gradetwo.setSelected(false);
     getContentPane().add(gradethree);
     //四年級
     gradefour =new JRadioButton();
     buttonGroup.add(gradefour);
     gradefour.setText("四年級");
     gradefour.setBounds(220, 30, 80, 30);
     //gradetwo.setSelected(false);
     getContentPane().add(gradefour);
     //五年級
     gradefive =new JRadioButton();
     buttonGroup.add(gradefive);
     gradefive.setText("五年級");
     gradefive.setBounds(300, 30, 80, 30);
     //gradetwo.setSelected(false);
     getContentPane().add(gradefive);

questnum=new JLabel();
     questnum.setText("題目數量:");
     questnum.setBounds(0, 80, 80, 40);
     getContentPane().add(questnum);
 
     //題目數量
     textnum=new JTextField();
     textnum.setBounds(90,90, 80, 20);
     getContentPane().add(textnum);
      //出題的按鈕
     chuti= new JButton();
     chuti.setText("出題");
     chuti.setBounds(60, 150, 60, 30);
   
  
  chuti.addActionListener( new chutiListener());
     getContentPane().add(chuti);
     //重置的按鈕
     chongzhi =new JButton();
     chongzhi.setText("重置");
     chongzhi.setBounds(240, 150, 60, 30);
     chongzhi.addActionListener(new chongzhiListener());
     getContentPane().add(chongzhi);
    //出題的方框
      quest=new JTextArea();
      quest.setColumns(15);
      quest.setRows(3);
      quest.setLineWrap(true);
      JScrollPane scrollPane=new JScrollPane();
      scrollPane.setViewportView(quest);
      Dimension dime=quest.getPreferredSize();
      scrollPane.setBounds(0, 200, 400, 200);
      getContentPane().add(scrollPane);
     }
 //生成數的方法
 public  int shenchengnum(int a){
     Random rand=new Random();
     int k=0;
     int j=0;
     for(int i=0;i<a;i++)
     {
      j=rand.nextInt(9)+1;
      k=k*10+j;
     }
     return k;
    }
 public char shengchenchar(boolean zhfu){
     Random rand=new Random();
     char c=' ';
     if(zhfu){
      int j=rand.nextInt()%2;
       if(j==0)
       {
        c='-';
       }
      
     }
        return c;
     }
    public void fenshunum(int a,int b,int c){   
     a=shenchengnum(c);
     b=shenchengnum(c);
    }
    public String xiaoshusc(){
     Random rand=new Random();
     DecimalFormat dcmFmt = new DecimalFormat("0.00");
     float a=rand.nextFloat()*100;
        String b=dcmFmt.format(a);
        return b;    
       
    }
    public char yunsuanchar(boolean szyf){
     Random rand=new Random();
     int j=0;
     char c=' ';
     if(szyf){
      j=rand.nextInt(2);
       if(j==0){
        c='/';
       } else if(j==1){
           c='*';
          }
       }

else{
      j=rand.nextInt()%2;
      if(j==0){
       c='+';
      }
      else {
       c='-';
      }
     }
     return c;
    }
//生成數的方法

public void actionPerformed(ActionEvent e) {
  // TODO Auto-generated method stub
  String num=textnum.getText();
  int qtnum=Integer.parseInt(num);
   if(gradetwo.isSelected()){
    for(int i=0;i<qtnum;i++){
     Random rand=new Random();
     int k=rand.nextInt()%2;
     if(k==0){

        String fnum=String.valueOf(shenchengnum(4));
        String snum=String.valueOf(shenchengnum(4));
        String ch=String.valueOf(yunsuanchar(false));
              quest.append(fnum+" "+" "+ch+" "+snum+"=");
              quest.append("\n");
              }else{
              String fnum=String.valueOf(shenchengnum(2));
        String snum=String.valueOf(shenchengnum(1));
        String ch=String.valueOf(yunsuanchar(true));
              quest.append(fnum+" "+" "+ch+" "+snum+"=");
              quest.append("\n");
          }

     }
    }
   else if(gradethree.isSelected()){
    for(int i=0;i<qtnum;i++){
     Random rand=new Random();
     int k=rand.nextInt()%2;
     if(k==0){
        String fnum=String.valueOf(shenchengnum(4));
        String snum=String.valueOf(shenchengnum(4));
        String ch=String.valueOf(yunsuanchar(false));
              quest.append(fnum+" "+" "+ch+" "+snum+"=");
              quest.append("\n");
              }else{
              String fnum=String.valueOf(shenchengnum(4));
        String snum=String.valueOf(shenchengnum(1));
        String ch=String.valueOf(yunsuanchar(true));
              quest.append(fnum+" "+" "+ch+" "+snum+"=");
              quest.append("\n");
          }
      }

}else if(gradefour.isSelected()){
    for(int i=0;i<qtnum;i++){
     String fnum=String.valueOf(shenchengnum(3));
        String snum=String.valueOf(shenchengnum(2));
        String ch=String.valueOf(yunsuanchar(true));
              quest.append(fnum+" "+" "+ch+" "+snum+"=");
              quest.append("\n");
    }
   }
   else if (gradefive.isSelected()){
    for(int i=0;i<qtnum;i++){
     String fnum=xiaoshusc();
        String snum=xiaoshusc();
        String ch=String.valueOf(yunsuanchar(true));
              quest.append(fnum+" "+" "+ch+" "+snum+"=");
              quest.append("\n");
    

  }

   }

}  

  }     public class chongzhiListener implements ActionListener{

          @Override  public void actionPerformed(ActionEvent e) {

             // TODO Auto-generated method stub  

              textnum.setText(null);

                quest.setText(null);

    }    

   }

}


    
  

相關焦點

  • 五年級上冊數學:小數乘除法的計算方法,記住這兩句六字訣
    #五年級數學上冊#小數乘法小數乘法的計算方法是:一算二數三劃一算:先按整數乘法計算;二數:數出因數的小數部分一共有幾位,再從積的右邊數出幾位小數,並點上小數點,如果積的小數部分不夠,應在前面補零;三劃:如果小數末尾有零,應該省略
  • 小學1到6年級所有口算題、計算題大全(全網最全)
    兩位數加一位數不進位加法A54 兩位數加一位數進位加法A55 兩位數減一位數不退位減法A56 兩位數減一位數退位減法二年級口算題B1 100以內加法B2 100以內加法豎式B3 100以內減法B4 100以內減法豎式B5 100以內加減混合B6 100以內加減混合豎式
  • 資深老師剖析小學生的計算題,看如何提高小學生的計算水平?
    每次考試,學生們都會因為計算題而丟分。一二年級的計算一般是加減法,包括進位加法和退位減法,以及表內乘除法。三四年級計算就出現了多位數成一位數和除數是兩位數或者一位數的除法題,以及小數,到了五六年級就會出現方程和分數。
  • 小學數學:計算基礎訓練,除法豎式300題,滿分計算是練出來的
    計算是數學的基礎,但是很多同學的計算總是出錯,那從哪裡練起呢,我建議是除法,因為除法裡面運用到的思想很多,第一步試商會運用到四捨五入和估算,第二步就是用估算出來的商和除數相乘,又練習了乘法,第三步又鍛鍊了減法,第四步是餘數和商比大小,而除法的驗算乘法裡面,又會涉及到加法,這下加減乘除就都練全了。
  • 小學三年級除法豎式計算易錯點
    小學三年級開始學習多位數除以一位數,一般是兩位數除以一位數和三位數除以一位數。除法相對應乘法,變化比較大,在豎式計算的時候很多孩子出現各種各樣的問題。本文就今天看到的兩個錯誤分析一下,孩子出錯的原因,看看您的孩子會不會有這些問題。
  • 人教版五年級《小數除法》預習資料
    暑假課堂:人教版五年級《小數除法》詳細預習資料,在家輕鬆學數學。大家好,我是小梁老師,這節課我們來預習第二單元《小數除法》,預習一整個單元,內容很多,一天肯定預習不完,畢竟還得每節後做點題,同學們可以分成幾天去學習這個預習資料。第二單元《小數除法》※第一節「除數是整數的小數除法」需要掌握內容:1、會計算除數是整數的除法。
  • 小學五年級數學試卷分析,學生:我們及格了,老師:繼續努力
    這是五年級第四單元可能性考察的知識點:可能會發生,一定會發生,一定不會發生,這道題是不會發生的,所以是錯的。2、也是考察可能性。3、考察可能性。4、小數乘法。5、小數乘法。6、循環小數和近似值。7、循環小數。二、選擇題。1、可能行。2、數對問題。3、小數乘法。4、小數除法。5、小數比較大小。三、填空題。1、可能性。2、數對。
  • 五年級數學期末測試題,重點考查學生的計算能力!
    五年級數學上冊的內容特別多而且很難,所以家長朋友們一定要多抓孩子的基礎知識,因為上學期所學的內容是下學期和六年級學習的基礎。這裡是一份去年羅莊區的考試真題,題目相當不錯,值得做一做。第一題、選擇題。1、考查方程的意義:含有未知數的等式,所以應該選擇B。2、因為三角形的面積是底乘高÷2,所以應該是12平方釐米。
  • 小數除法列豎式的計算方法
    五年級上冊我們已學過小數除法,現在我們再來複習一下,為六年級上冊第一單元的圓的周長和面積打好基礎。除數是整數的計算除數是小數小結(1)除數是整數時:按照整數除法的計算方法進行計算,商的小數點與被除數的小數點對齊。
  • 這道小數除法題,被除數和除數都有很多個零,你會計算結果嗎?
    大家請看,這道小數除法題,被除數的小數部分,一共有3020個零。而除數的小數部分,也有3017個零!天啊!被除數和除數都有這麼多個零,怎樣才能算出正確結果呢?別急!用豎式計算小數除法,和整數除法並沒有太大區別。小數的位數多少,我們暫且不管,不過,被除數和除數位置一定不要寫反。注意:被除數一定要寫在除號裡面,除數一定要寫在除號外面!做小數除法時,如果除數是小數,首先要把除數轉化為整數。
  • 五年級數學上冊:期末測試卷(含答案),收藏一練,查漏補缺
    今天給大家分享的是人教版五年級數學上冊期末調研卷,感興趣的家長可以收藏起來,讓孩子練習,查漏補缺。在文末附有答案!本學期學習的內容有小數乘法、位置知識、小數除法、簡易方程式、多邊形的面積、可能性、植樹問題等。這套試卷共有七大題,第一大題我會填空,第一題考查學生簡易方程式知識。答案分別是:165、0.165。第二大題判斷對錯。
  • 小數除法不會算?8大模塊梳理計算中的易錯點!備考期末滿分衝刺
    小數除法知識框圖一、除數是整數的小數除法1、小數除以整數:按照整數除法的計算方法計算,注意商的小數點要和被除數的小數點對齊。2、在小數除法中,如果除到被除數的末位仍有餘數,要在被除數小數部分的末尾添0,同時在餘數後面添0,然後繼續除,直到除盡為止。3、整數除以整數:一定要先點小數點,再添0,然後按照「小數除以整數」的計算方法計算。4、如果小數的整數部分不夠除,則在商的個位上商0佔位,對齊被除數的小數點,點上商的小數點,再繼續除,直到除盡為止。
  • 三年級數學上冊豎式計算練習題 老師:這個一定要掌握好
    孩子計算能力的高低,對於他是否能學習好數學起著很重要的作用。如果一個孩子的計算能力不是很好,每次做計算題時都會出現各種不同的錯誤,那這孩子的數學成績一定不太好。豎式計算是指在計算過程中列一道豎式計算,使計算省力,不用動腦,準確率較高。
  • 3道三年級除法奧數題,家長:題難,不會!
    尤其是數學學習,可以多找一些奧數題,讓孩子們做一做,培養數學思維,提高興趣,都不錯。今天逛論壇看到3道三年級除法奧數題,發帖子的家長表示有點難,能把這幾道題全部解答出來的,肯定是小學霸!一起來看看題吧:上圖是第一道奧數題。
  • 小升初數學分數除法、解方程計算題+應用題(含答案),高分必備
    如果一道題要算很久,而且還不能夠保證正確率,也不知道用簡便運算,就是在白白浪費很多時間。只要把孩子的計算能力提升了,孩子的數學成績必然會有一個很大的突破。在小學數學當中,有很多經典的運算題,例如分數除法和解方程等題型,不管是平時的考試中還是在小升初的考試中,都會考到。所以下面老師給大家整理了分數、解方程的計算題和應用題,平時可以多練一練,對於提高成績是很有幫助的!
  • 孩子學習五年級上冊數學(北師大版)第一單元小數除法的那兩周!
    孩子學習五年級上冊數學(北師大版)第一單元小數除法的那兩周!1孩子學習五年級上冊數學(北師大版)第一單元小數除法的那兩周,可以用一句話予以概括:「孩子身體無比得累,像被掏空;心太累,有一種劫後餘生的錯覺。」2 孩子學習五年級上冊數學(北師大版)第一單元小數除法的那兩周,學習基本不在線(不在狀態),頻頻出錯。有史以來,第一次被學校數學老師把作業給撕了,不同的作業在兩天內被撕了兩次。
  • 五年級小數除法學生經常出錯,請家長不要天真地認為這僅僅是粗心
    孩子上五年級了,第一單元《小數除法》,孩子出錯,家長、老師一問好像都知道,但是一做題就經常出錯,這是大多數家長和老師都遇到過的困惑。例如:大多數人都認為這是孩子粗心,其實不然,請家長、老師不要天真的認為這僅僅是粗心!
  • 小學四年級數學重要性及銜接性
    >2.三位數乘兩位數(小學階段整數的加減乘除豎式計算的學習結束)3.運算律4、認識平行四邊形、三角形、梯形五上:1.多邊形面積:平行四邊形、三角形、梯形2.小數加法、減法、乘法、除法(小數與整數的四則混合計算及簡便運算
  • 二年級下冊數學考試,其他都正確,想不到這兩題卻錯了!
    #考試#二年級下冊數學考試,其他都正確,想不到這兩題卻錯了!本學期即將結束,將迎來下個學期的學習。二年級小朋友在上學期學習了乘法運算,到下學期,就要學習除法運算了,因為二年級下冊數學第一單元就是學習除法。
  • 五年級數學上冊期末考試卷太難?計算和操作為王,解決問題直撓頭
    第6小題,用兩個完全相同的三角形可以拼成一個平行四邊形,每個三角形的面積都是拼出圖形面積的1/2。第7小題,考察五年級學生對最大公因數和最小公倍數概念的理解。12和18的最大公因數是6,最小公倍數是36。第9小題,1÷6的商是循環小數,用簡便方法記作0.16(在6的上面點上循環節),保留三位小數約是0.167。