整数输入有理循环小数 1/7 = 0.142857142... 是个无限循环小数。 任何有理数都可以表示为无限循环小数的形式。 本题目要求即是:给出一个数字的循环小数表示法。
2013-04-28 20:01
591 查看
这段时间个人几篇文章介绍了改整数输入的文章. 关联文章的地址
每日一道理
盈盈月光,我掬一杯最清的;落落余辉,我拥一缕最暖的;灼灼红叶,我拾一片最热的;萋萋芳草,我摘一束最灿的;漫漫人生,我要采撷世间最重的———毅力。
运行结果:
文章结束给大家分享下程序员的一些笑话语录: 苹果与谷歌之争就是封闭收费与自由免费思想之争。(别急着把google来膜拜哦?那可是一家公司,以赚钱为目标的公司!当年我Party就是这样把广大劳动人民吸引过来的。今天的结果你们都看到了。)
/* 有理环循小数 1/7 = 0.142857142... 是个无限环循小数。 任何有理数都可以示表为无限环循小数的情势。 本目题要求是即:给出一个数字的环循小数示表法。 例如: 输入: 1,5 则出输: 0.2 输入: 1,7 则出输: 0.[142857] 输入: 7,6 则出输: 1.1[6] 用户输入的格式是: 整数,整数 每一个整数范围均为:1~1000 程序出输两个整数做除法生产的小数或无限环循小数(环循节用方括号括起)。 */ import java.util.Scanner; import java.util.List; import java.util.ArrayList; public class 有理数的环循节 { public static String f(int m,int n){ StringBuffer sb = new StringBuffer(); // 保存结果 List<Integer> lis = new ArrayList<Integer>(); // 记载全部余数 String s = m/n+"."; // 保存整数分部 m = m%n; // 失掉余数 while(m!=0){ if(lis.contains(m)){ int i=0; // 失掉环循节开始的置位 i for(;i<sb.length();i++){ if(sb.charAt(i)-'0'==m*10/n){ break; } } sb.insert(i,"["); // 为环循节加添"[ ]" sb.insert(sb.length(),"]"); break; }else{ lis.add(m); // 加添商 sb.append(m*10/n); // 加添结果素元 } m = m*10%n; // 失掉余数 } return sb.insert(0, s).toString(); } public static void main(String[] args){ Scanner scan = new Scanner(System.in); System.out.println("整数范围均为:1~1000(格式: 整数,整数 )"); String s = scan.nextLine(); String[] ss = s.split(","); int m = Integer.parseInt(ss[0]); int n = Integer.parseInt(ss[1]); System.out.println(f(m,n)); } }
每日一道理
盈盈月光,我掬一杯最清的;落落余辉,我拥一缕最暖的;灼灼红叶,我拾一片最热的;萋萋芳草,我摘一束最灿的;漫漫人生,我要采撷世间最重的———毅力。
运行结果:
整数范围均为:1~1000(格式: 整数,整数 ) 1,7 0.[142857]
文章结束给大家分享下程序员的一些笑话语录: 苹果与谷歌之争就是封闭收费与自由免费思想之争。(别急着把google来膜拜哦?那可是一家公司,以赚钱为目标的公司!当年我Party就是这样把广大劳动人民吸引过来的。今天的结果你们都看到了。)
相关文章推荐
- 1/7 = 0.142857142... 是个无限循环小数。 任何有理数都可以表示为无限循环小数的形式。 本题目要求即是:给出一个数字的循环小数表示法。 例如: 输入: 1,5 则输出: 0.2 输入
- 有理循环小数 1/7 = 0.142857142... 是个无限循环小数。 任何有理数都可以表示为无限循环小数的形式。 本题目要求即是:给出一个数字的循环小数表示法。
- 一个正整数有可能可以表示为n(n>=2)个连续的正整数之和,如:15=1+2+3+4+5,15=4+5+6,15=7+8 请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。
- 写一个函数,判断一个int型的正整数是否是2的幂,即是否可以表示成2^X的形式(不可以用循环)
- 牛牛和15朋友来玩打土豪分田地的游戏,牛牛决定让你来分田地,地主的田地可以看成是一个矩形,每个位置有一个价值。分割田地的方法是横竖各切三刀,分成26份,作为领导干部,牛牛总是会选择其中总价值最小的一份田地,作为牛牛最好的朋友,你希望牛牛取得的田地价值和尽可能大,你知道这个值最大可以是多少吗? 输入两个整数n和m(1≤n,m≤75)表示田地的大小,接下来n行,每行包括m个0-9之间的数字,表示每块
- ACM457现在给出了一个只包含大小写字母的字符串,不含空格和换行,要求把其中的大写换成小写,小写换成大写,然后输出互换后的字符串。输入 第一行只有一个整数m(m<=10),表示测试数据组数。
- 写一个函数,判断一个int型的正整数是否是2的幂,即是否可以表示成2^X的形式(不可以用循环)
- 一个正整数有可能可以被表示为 m(m>=2) 个连续正整数之和,编写一个程序,输入一个正整数,然后找出符合这种要求的所有 连续正整数序列,若不存在这种序列,则打印None。
- 给定一个整数n,求斐波那契数列前n项,部分代码已给出,要求补全题目所缺少的函数。
- 28.整数的二进制表示中1的个数 题目:输入一个整数,求该整数的二进制表达中有多少个1。 例如输入10,由于其二进制表示为1010,有两个1,因此输出2。
- 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 给出一个不多于五位的正整数,要求输出它的位数,每一位数字及逆序
- (c++)给出一个不多于5位的整数,要求 1、求出它是几位数 2、分别输出每一位数字 3、按逆序输出各位数字,例如原数为321,应输出123
- 第十三周-输入一个整数,要求输出对应的二进制形式。
- 对于给定的一个字符串,统计其中数字字符出现的次数。输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。
- randnumber_mn.c 生成一个数组,包括k个不重复的整数,并且要求这些整数范围为[m,n),生成的结果中不能包含inum中的数字,size表示inum的长度
- 【C语言】输入一个不多于5位的正整数,要求:(1)输出它是几位数,(2)按逆序输出各位数字,(3)按顺序输出各位数字
- 输入阿拉伯数字(整数),输出相应的中文(美团网2014年9月16日笔试题目之中的一个)