分数加减法

本文介绍了一个Java程序,用于处理从用户输入中读取的分数运算。通过解析输入字符串,程序能够计算两个分数的乘法,并根据加号或减号进行相应的加法或减法运算。计算结果会以最简形式输出,确保了分数运算的准确性和简洁性。

在这里插入图片描述

import java.util.*;
public class Main{
	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		while(sc.hasNext()) {
			String str=sc.next();
			char a[]=str.toCharArray();
			int fm=(a[2]-'0')*(a[6]-'0');
			int fz=a[3]=='+'?((a[0]-'0')*(a[6]-'0')+(a[4]-'0')*(a[2]-'0')):((a[0]-'0')*(a[6]-'0')-(a[4]-'0')*(a[2]-'0'));
			int x,y;
			if(fz<0) {
				x=-fz;
				y=-fm;
			}
			else {
				x=fz;
				y=fm;
			}
			int t;
			if(fz>fm) {
				t=fz;fz=fm;fm=t;
			}
			while(fz!=0) {
				int r=fm%fz;
				fm=fz;
				fz=r;
			}
			if((x/fm)%(y/fm)==0) {
				System.out.println((x/fm)/(y/fm));
			}
			else {
				System.out.println(x/fm+"/"+y/fm);
			}
		}
        sc.close();
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值