求思路
任意输入二个自然数, 若商为整数, 则直接显示商; 否则把商分解成一个自然数和一个正的既约真分数之和才显示. 例如: 输入: 9, 3 显示: 9/3=3
输入: 8, 6 显示: 8/6=1+1/3
输入
8 6
输出
8/6=1+1/3
样例输入
9 3
样例输出
9/3=3
怎样显示8/6=1+1/3?
------最佳解决方案-------------------- (c<0&&d<0))
{
c=-c;
d=-d;
}
}
public String toString() //重写tostring().
{
if(c==0
------其他解决方案-------------------- int i = 8/6;//此时i会等于1
int j;
if (8 % 6 != 0) {
j = 8 - i * 6;
}
if (j == 0) {
system.out.println("8/6="+i+"+"+j+"/"+6);
} else {
system.out.println("8/6="+i);
}
------其他解决方案-------------------- 不好意思反了,正确如下:
int i = 8/6;//此时i会等于1
int j;
if (8 % 6 != 0) {
j = 8 - i * 6;
}
if (j == 0) {
system.out.println("8/6="+i);
} else {
system.out.println("8/6="+i+"+"+j+"/"+6);
}
------其他解决方案-------------------- 引用: 不好意思反了,正确如下:
int i = 8/6;//此时i会等于1
int j;
if (8 % 6 != 0) {
j = 8 - i * 6;
}
if (j == 0) {
system.out.println("8/6="+i);
} else {
system.out.println("8/6="+i+"+"+j+"/"+6);
}
我是要思路。。不一定是输入8和6的 换成输入m,n
------其他解决方案-------------------- 我做了一个,楼主参考一下:
1 设计一个分式fraction类, 它能把两个整数整理成最简分式形式,且处理正、负号. 重写toString(),使输出分式形式。
如:整数是3,6 输出1/2。
整数是-2,-6,输出1/3。
整数是2,-6,输出-1/3。(不是1/-3)。
2 设计控制台输入2个整数,分子a, 分母b, 分3重情况输出。
1) a绝对值>=b绝对值且a%b==0. 直接输出。
2) a绝对值<b绝对值,直接输出 new Fraction(a,b);
3) 输出a/b+new Fraction(a%b,b).
------其他解决方案-------------------- 引用: 我做了一个,楼主参考一下:
1 设计一个分式fraction类, 它能把两个整数整理成最简分式形式,且处理正、负号. 重写toString(),使输出分式形式。
如:整数是3,6 输出1/2。
整数是-2,-6,输出1/3。
整数是2,-6,输出-1/3。(不是1/-3)。
2 设计控制台输入2个整数,分子a, 分母b, 分3重情况输出。
1) a……
可以发来参照一下吗?谢了
------其他解决方案--------------------
import java.util.Scanner;
public class IntAndFraction
{
public static void main(String[] args)
{
Scanner sc=new Scanner(System.in);
int a=sc.nextInt();
int b=sc.nextInt();
boolean sign=((a>0&&b<00)------其他解决方案-------------------- (a<0&&b>0))?true:false;
if(Math.abs(a)>=Math.abs(b)&&a%b==0)