当前位置: 首页 > news >正文

阿拉善盟seo宁波seo推荐优化

阿拉善盟seo,宁波seo推荐优化,电影订票网站怎么做,南阳市建网站公📑打牌 : da pai ge的个人主页 🌤️个人专栏 : da pai ge的博客专栏 ☁️宝剑锋从磨砺出,梅花香自苦寒来 ☁️有理数运算 实现对两个有理数的…

                                                                                              

                                   📑打牌 : da pai ge的个人主页
                                   🌤️个人专栏 : da pai ge的博客专栏
                                  ☁️宝剑锋从磨砺出,梅花香自苦寒来

☁️有理数运算

实现对两个有理数的基本运算,包括加、减、乘、除。
输入描述:
每个输入文件只包含一个测试用例,测试用例会给出一行数据,格式为 “a1/b1 a2/b2”
分子分母的范围都在长整型的范围内,如果数字为负,则符号只会出现在分子的前面。分母一定是非零数。
输出描述:
针对每个测试用例,都输出四行,分别是这两个有理数的和、差、积和商,格式为 1 操作符 数 2 = 结果 。注
意,所有的有理数都将遵循一个简单形式 “k a/b” ,其中 k 是整数部分, a/b 是最简分数形式,如果该数为负数,则必
须用括号包起来。如果除法中的除数为 0 ,则输出 “Inf” 。结果中所有的整数都在 long int 的范围内。

☁️【题目解析】

本题看上去不难,但是存在几个问题:
1 、除数为 0 ,这个很好解决,做个判断即可。
2 、负数的输出,这个只要一个标签即可。
3 、题目中虽然没有明说,但是这个数字处理后其实是有可能不存在分数部分或者整数部分的。也就是说将数据处
理完形成 k a/b 的格式后,有可能只有一个 k ,也可能只有一个 a/b ,也有可能两者皆有,所以要分别考虑这几种情
况。

☁️【解题思路】

可以尝试实现一个有理数类,将数据处理后重载一下加减乘除即可。处理数据的方法就是除一下 mod 一下的问题,
加减乘除遵循基本的分数加减乘除原则,最后求一下最大公约数,做一下约分,再处理一下数据,就 OK 了。

☁️【示例代码】

import java.util.*;
// s and the denominators
class Rational{
private long numerator; // 分子
private long denominator; // 分母
private long integer; // 整数部分
private boolean negetive = false; // 负数
private boolean isZero = false; // 分母为零
private long totalNumerator; // 参与运算的分子:整数+原来分子
public static long paraseNumerator(String s){
//只需从字符串中将分子截取出来
return Long.parseLong(s.substring(0, s.indexOf('/')));
}
public static long paraseDenominator(String s){
//只需从字符串中将分子截取出来
return Long.parseLong(s.substring(s.indexOf('/')+1, s.length()));
}
public Rational(long n, long d){
// 在输入的时候分母永远不可能为0,但是经过计算之后分母可能会为0
if(0 == d){
isZero = true;
return;
}
// 如果分子小于0,表示为负数
if(n < 0){
negetive = !negetive;
}
// 在输入的时候,分母永远不可能小于0,但是经过计算之后分母也可能会小于0
if(d < 0){
negetive = !negetive;
}
// 如果输入是假分数,需要将其调整为真分数,比如:5 / 3 ===> 1 2/3
integer = n / d;
numerator = n - integer * d;
denominator = Math.abs(d);
// 如果分数不是最简的形式,需要将其约分为最简的形式,比如:10 / 15--->2/3
// 在分子和分母的基础之上分别处以分子和分母的最大公约数
if(numerator > 1 || numerator < -1){
long gcd = calcGCD(Math.abs(numerator), denominator);
if(gcd > 0){
numerator /= gcd;
denominator /= gcd;

http://www.ds6.com.cn/news/123878.html

相关文章:

  • wordpress创意主题店铺百度关键词优化手段
  • 深圳 seo 外贸网站建设 多语种写软文的平台有哪些
  • 爱用建站 小程序优秀软文营销案例
  • 做网站的公司哪里好百度搜索官方网站
  • 在线设计平台官网吉安seo
  • 下载吧网站整站源码2021最近最火的关键词
  • 熊掌号网站怎么做余姚网站制作公司
  • 没有网站怎么做外贸站长工具的使用seo综合查询排名
  • 如何用文档创建一个网站seo关键词优化推广
  • 网站正在建设中 英语百度风云排行榜
  • 做环境设计的网站seo网站推广什么意思
  • 购物网站建设毕业论文企业网站制作与维护
  • html5新闻网站模板西安网站建设平台
  • 关于网站开发的商业计划书郑州见效果付费优化公司
  • 金融 网站 源码泰州网站建设优化
  • wordpress 插件 摘要沈阳seo优化排名公司
  • 免费头像生成制作网站网站seo关键词设置
  • 做网站网络合同网络营销网站推广
  • 网站群建设论文知乎小说推广对接平台
  • 做网站相关人员安卓手机游戏优化器
  • 制作企业网站的公司体彩足球竞彩比赛结果韩国比分
  • 网站模板模仿b2b平台有哪些
  • 山西网站建设网站建设优化公司
  • 公司在东莞建设网登记要多少钱搜云seo
  • 用照片做视频的网站抖音搜索关键词推广
  • 如何把代码放在网站首页教程公司做网站怎么做
  • 美国哪个网站做diy电脑东莞seo
  • 网站建设太金手指六六二五精准信息300099
  • ssh实训做网站代码下载网店推广运营
  • 龙岩网站推广营销合肥百度seo代理