软件工程概论个人作业02(四则运算2)
生活随笔
收集整理的這篇文章主要介紹了
软件工程概论个人作业02(四则运算2)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1、設(shè)計(jì)思想:
在四則運(yùn)算1的基礎(chǔ)上,多加了幾個(gè)要求,是否有乘除法可以通過(guò)不同的選擇然隨機(jī)生成符號(hào)的函數(shù)有時(shí)候生成兩個(gè)數(shù)字對(duì)應(yīng)加減,有時(shí)候生成四個(gè)數(shù)對(duì)應(yīng)加減乘除;括號(hào)沒(méi)有實(shí)現(xiàn);數(shù)值范圍通過(guò)一個(gè)函數(shù)實(shí)現(xiàn)(int)(Math.random()*(m-n+1)+n)生成n~m的數(shù)字;加減有無(wú)負(fù)數(shù)在減法出負(fù)數(shù)時(shí)輸出提示語(yǔ)句;另外求余,即把參與運(yùn)算的兩個(gè)數(shù)都定義為int類(lèi)型,比如a,b都為int,a/b=c,若不能整除,余數(shù)等于a-c*b。
2、源程序代碼:
import java.util.Random; import java.util.Scanner;class Fenshu{static int fenzi1;static int fenmu1;static int fenzi2;static int fenmu2;public static void fenshu()//分?jǐn)?shù)隨機(jī)產(chǎn)生 {Random random=new Random();fenmu1=(random.nextInt(10)+1);fenzi1=(random.nextInt(10)+1);fenmu2=(random.nextInt(10)+1);fenzi2=(random.nextInt(10)+1);if(fenmu1<=fenzi1||fenmu2<=fenzi2){fenshu();}//System.out.println(fenmu1);//System.out.println(fenzi1);//System.out.println(fenmu2);//System.out.println(fenzi2); }public static char fuhao()//符號(hào)隨機(jī)產(chǎn)生 {char a =0;Random random=new Random();int f=random.nextInt(4);if(f==0)a='+';if(f==1)a='-';;if(f==2)a='*';if(f==3)a='/';return a;} public static int GYS(int m, int n) // 循環(huán)實(shí)現(xiàn) {int k,y;if(m<n){k=m;m=n;n=k;}while(m%n!=0){y=m%n;m=n;n=y; }return n;}public static void zhenoutput()//真分?jǐn)?shù)輸出 {fenshu();char a1=fuhao();if(a1=='+'){int jieguo1=fenmu1*fenmu2;int jieguo2=fenzi1*fenmu2+fenzi2*fenmu1;int a=GYS(jieguo1,jieguo2);System.out.println(fenzi1+"/"+fenmu1+"+"+fenzi2+"/"+fenmu2+"="+jieguo2/a+"/"+jieguo1/a); }if(a1=='-'){int jieguo1=fenmu1*fenmu2;int jieguo2=fenzi1*fenmu2-fenzi2*fenmu1;int a=GYS(jieguo1,jieguo2);System.out.println(fenzi1+"/"+fenmu1+"-"+fenzi2+"/"+fenmu2+"="+jieguo2/a+"/"+jieguo1/a); }if(a1=='*'){int jieguo1=fenmu1*fenmu2;int jieguo2=fenzi1*fenzi2;int a=GYS(jieguo1,jieguo2);System.out.println(fenzi1+"/"+fenmu1+"*"+fenzi2+"/"+fenmu2+"="+jieguo2/a+"/"+jieguo1/a); }if(a1=='/'){int jieguo1=fenmu1*fenzi2;int jieguo2=fenzi1*fenmu2;int a=GYS(jieguo1,jieguo2);System.out.println(fenzi1+"/"+fenmu1+"/"+fenzi2+"/"+fenmu2+"="+jieguo2/a+"/"+jieguo1/a); }} } public class Size {static int n;static int m; public static void main(String args[]) {Fenshu a=new Fenshu();boolean p=true;while(p){Scanner in=new Scanner(System.in);System.out.println("1.整式計(jì)算 2.真分?jǐn)?shù)計(jì)算");int ch=in.nextInt();if(ch==1){System.out.println("請(qǐng)輸入你要取得數(shù)值的范圍:");Scanner in1=new Scanner(System.in);n=in1.nextInt();m=in1.nextInt();System.out.print("請(qǐng)確認(rèn)你要計(jì)算的題目中是否包括乘除法:1、包括2、不包括");int c=in.nextInt();if(c==1){System.out.println("請(qǐng)輸入要計(jì)算的題的數(shù)量:");int number=in.nextInt();int i=0;while(i<number){output(); i++;} }if(c==2){System.out.println("請(qǐng)輸入要計(jì)算的題的數(shù)量:");int number=in.nextInt();int i=0;while(i<number){output1(); i++;} }}if(ch==2){System.out.println("請(qǐng)輸入要計(jì)算的題的數(shù)量:");int number=in.nextInt();int i=0;while(i<number){Fenshu.zhenoutput();i++;}}} } public static int shuzi()//隨機(jī)產(chǎn)生數(shù)字并且判斷數(shù)值范圍 { Random random=new Random();int a=(int)(Math.random()*(m-n+1)+n);//System.out.print(a);return a;} public static void fuhao()//符號(hào)隨機(jī)產(chǎn)生 {Random random=new Random();int f=random.nextInt(4);if(f==0)System.out.print('+');if(f==1)System.out.print('-');if(f==2)System.out.print('*');if(f==3)System.out.print('/');}public static void output()//整數(shù)計(jì)算包括乘除法 {//Scanner in1=new Scanner(System.in);int a=shuzi();int b=shuzi();Random random=new Random();int f=random.nextInt(4); if(f==0){System.out.print(a);System.out.print('+');System.out.print(b);System.out.println("="+(a+b));}if(f==1){ System.out.print(a);System.out.print('-');System.out.print(b);System.out.println("="+(a-b));if(a-b<0){ System.out.println("此次計(jì)算式式子結(jié)果為負(fù)數(shù)。");}}if(f==2){System.out.print(a);System.out.print('*');System.out.print(b);System.out.println("="+(a*b));}if(f==3){System.out.print(a);System.out.print('/');System.out.print(b);int c=a/b;System.out.println("="+c);int yushu=a-c*b;if(yushu!=0){System.out.println("該式子不能整除,余數(shù)為"+yushu);}if(yushu==0){System.out.println("該式子能整除");}} } public static void output1()//整數(shù)計(jì)算不包括乘除 {double a=shuzi();double b=shuzi();Random random=new Random();int f=random.nextInt(2); if(f==0){System.out.print(a);System.out.print('+');System.out.print(b);System.out.println("="+(a+b));}if(f==1){System.out.print(a);System.out.print('-');System.out.print(b);System.out.println("="+(a-b));if(a-b<0){ System.out.println("此次計(jì)算式式子結(jié)果為負(fù)數(shù)。");}} }}3、運(yùn)行結(jié)果截圖:
?
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/hanbook/p/6544658.html
總結(jié)
以上是生活随笔為你收集整理的软件工程概论个人作业02(四则运算2)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: tableview直接滚动至最后一行
- 下一篇: dex2jar 和 jd-gui 的安装