分数计算

import java.util.Scanner;
public class test{
    public static void main(String args[]){
        Rational a=new Rational(4,5);
        Rational b=new Rational(3,2);
        Rational c=a.chu(b);
        c.show();
    }
}

class Rational{
    int fenzi=1;
    int fenmu=1;
    int f(int a,int b){//公约数
        if(b>a){
            int c=a;
            a=b;
            b=c;
        }
//        System.out.println(a);
        int c=a%b;
        for(;c!=0;c=a%b){
            a=b;
            b=c;
        }
        return b;
        }
    Rational(int a,int b){
        int c=f(Math.abs(a),Math.abs(b));
        fenzi=a/c;
        fenmu=b/c;
        System.out.println(c);
    }
    Rational jia(Rational r){
        int a=fenzi*r.fenmu+r.fenzi*fenmu;
        int b=fenmu*r.fenmu;
//        System.out.println(b);
        Rational c=new Rational(a,b);
        return c;
    }
    Rational jian(Rational r){
        int a=fenzi*r.fenmu-r.fenzi*fenmu;
        int b=fenmu*r.fenmu;
//        System.out.println(b);
        Rational c=new Rational(a,b);
        return c;
    }
    Rational cheng(Rational r){
        int a=fenzi*r.fenzi;
        int b=fenmu*r.fenmu;
        Rational c=new Rational(a,b);
        return c;
    }
    Rational chu(Rational r){
        int a=fenzi*r.fenmu;
        int b=fenmu*r.fenzi;
        Rational c=new Rational(a,b);
        return c;
    }
    void show(){
        System.out.println(fenzi+"/"+fenmu);
    }
}
时间: 2024-10-12 14:53:33

分数计算的相关文章

第十周(11.18-11.24)----结对编程----分数计算

之前的程序写到可以输出分数的算式,接下来就是要怎么计算这个分式算式.我查阅了资料,目前完成到这个状况,对给定的两个分数计算结果. fenshucount里getDinominator是获得分母,getNumerator是获得分子. 获得最大公约数 1 public static int commonDivisor(int x,int y) //计算2个数的最大公约数.按绝对值计算. 2 { 3 if(x==0||y==0) 4 { 5 return 1; 6 } 7 int x1; 8 int

solr 排序与文档分数计算

solr 何为文档? solr是一个文档存储与检索引擎,提交给solr处理的每一份数据都是一份文档.在solr的schema文件中我们可以指定字段的名称和类型,一个文档我们通过定义schema,映射为特定类型的字段集合,文档的每个字段都根据其字段类型进行内容分析,分析的结果保存在索引中,这样在发起查询的时候就能检索到相关结果. 倒排索引: 在传统的数据库模型中,都是文档映射至内容,而solr使用了索引将内容映射至文档的方式. 模糊查询机制: 当通配符搜索执行时,倒排索引中的所有词项与第一个通配符

PAT甲题题解-1088. Rational Arithmetic (20)-模拟分数计算

输入为两个分数,让你计算+,-,*,\四种结果,并且输出对应的式子,分数要按带分数的格式k a/b输出如果为负数,则带分数两边要有括号如果除数为0,则式子中的结果输出Inf模拟题最好自己动手实现,考验细节处理,其它没啥好说的. #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> using namespace std; long long numerato

PAT甲题题解-1081. Rational Sum (20)-模拟分数计算

模拟计算一些分数的和,结果以带分数的形式输出注意一些细节即可 #include <iostream> #include <cstdio> #include <algorithm> #include <cstring> #include <cmath> using namespace std; /* 模拟计算一些分数的和,结果以带分数的形式输出 注意一些细节即可 */ const int maxn=105; const int maxv=50000

面向对象时钟类(倒计时),分数计算类

/** * 时钟类 * * @author Administrator * */ public class Clock { private int hour; private int minute; private int second; public Clock() { Calendar cal = Calendar.getInstance(); this.hour = cal.get(Calendar.HOUR_OF_DAY); this.minute = cal.get(Calendar.

从零開始开发Android版2048 (四) 分数、重置、结束

这一篇的内容主要是在上一篇的基础上,增加分数计算(包含当前分数和最高分数).游戏结束的推断以及游戏界面的重置这三个部分的功能. 一.分数的计算和保存 首先,2048这个游戏的分数包含,两个部分当前游戏分数和最高分,当前的游戏分数我们能够保存在程序的变量中,由于它仅仅对当前这盘游戏实用,游戏结束就能够清空:而最高分则须要以一种方式保存在手机中,这样当我们下次再打开游戏时,还能读取到之前操作的最高分. 1.当前分数 当前分数的计算还是非常easy.我们仅仅须要在每次发生合并的时候,将产生的分数加到我

从零开始开发Android版2048 (四) 分数、重置、结束

这一篇的内容主要是在上一篇的基础上,加入分数计算(包括当前分数和最高分数).游戏结束的判断以及游戏界面的重置这三个部分的功能. 一.分数的计算和保存 首先,2048这个游戏的分数包括,两个部分当前游戏分数和最高分,当前的游戏分数我们可以保存在程序的变量中,因为它只对当前这盘游戏有用,游戏结束就可以清空:而最高分则需要以一种方式保存在手机中,这样当我们下次再打开游戏时,还能读取到之前操作的最高分. 1.当前分数 当前分数的计算还是很简单.我们只需要在每次发生合并的时候,将产生的分数加到我们声明的分

Django项目:CRM(客户关系管理系统)--75--65PerfectCRM实现CRM课程分数排名

1 # classtop_urls.py 2 # --------64PerfectCRM实现CRM课程排名详情-------- 3 from django.conf.urls import url 4 from bpm.coursetop import coursetop_views 5 urlpatterns = [ 6 url( r'^coursetop_details/(\d+)/$', coursetop_views.coursetop_details, name="coursetop

计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值(类型转换)

思路:可以将上式分解成为分母为奇数项的总和与偶数项的总和,然后两项进行相减. 注意:在求分数相加减时应该要注意定义变量的类型应该是double型. 1 #include<stdio.h> 2 int main() 3 { 4 int i; 5 double sum; 6 double sum1 = 0; 7 double sum2 = 0; 8 //奇数项和 9 for (i = 1;i < 100;i += 2) 10 { 11 sum1 =sum1 + 1.0 / i; 12 } 1