1/7 = 0.142857142... 是个无限循环小数。
任何有理数都可以表示为无限循环小数的形式。
本题目要求即是:给出一个数字的循环小数表示法。
例如:
输入:
1,5
则输出:
0.2
输入:
1,7
则输出:
0.[142857]
输入:
7,6
则输出:
1.1[6]
用户输入的格式是:
整数,整数
每个整数范围均为:1~1000
程序输出两个整数做除法产生的小数或无限循环小数(循环节用方括号括起)。
要求考生把所有类写在一个文件中。
调试好后,存入与考生文件夹下对应题号的“解答.txt”中即可。
相关的工程文件不要拷入。请不要使用package语句。
另外,源程序中只能出现JDK1.5中允许的语法或调用。不能使用1.6或更高版本。
package 循环小数;
public class Main {
public static void main(String[] arg){
double a =5;
double b = 9;
f(a, b);
}
//处理数据
public static void f(double a ,double b){
double c = a/b;
String str = String.valueOf(c);
// System.out.println(str);
//取出整数和小数部分
int index = str.indexOf(".");
String integer = str.substring(0,index);
String decimals = str.substring(index+1, str.length()-index+1);
// System.out.println(decimals);
// 对小数部分进行循环取循环体;
String temp = "";
String forTempString = "";
for(int i=0;i<decimals.length()-1;i++){
String ch = ""+decimals.charAt(i);
if(!temp.contains(ch)){
temp += ""+ch;
}else{
forTempString+=ch;
}
}
// System.out.println(temp+" "+forTempString);
String result =str; //记录最后结果
for(int i=temp.length()-1;i>=0;i--){
//从最后一位开始取 字符,然后在forTempString中取相同的字符进行比较,如果相同,则该基数为循环体;剩余temp中为取的部分为非循环体;
String base = temp.substring(i, temp.length());
int n = temp.length()-i; //取字符的数量;
if(forTempString.substring(0, n).equals(base)){
//此时的base 就是循环体;
// System.out.println(base);
//当前的i的值能得出非循环体,组合得到最后结果
// System.out.println(temp.subSequence(0, i));
result = integer+"."+temp.substring(0, i)+"["+base+"]";
break;
}
}
System.out.println(result);
}
}
分享到:
相关推荐
- **语法**:`while (条件) { /* 循环体 */ }` - **作用**:在满足条件的情况下重复执行一段代码块。 - **示例**:`while (cin >> a) { /* ... */ }`,只要能成功从标准输入读取一个整数,就会继续执行循环体内的...
- **循环体**:循环体内执行的语句,以及这些语句的作用,以及它们将被执行的次数。 掌握DO和FOR语句的基本格式和使用是VB编程的基础,能够解决简单的计算问题。理解它们的区别并熟练运用,对于编写复杂的程序至关...
- 表示循环小数有两种方式:完整循环节加省略号,或用圆点标记循环节。 4. **有限与无限小数**: - 有限小数的小数部分位数有限,无限小数则不然。 **第三单元:观察物体** 1. **观察角度与形状**: - 从不同...
34. 无限小数与循环小数:无限小数不一定是循环小数,如π。 35. 数据统计:一组数据的中位数可能等于平均数。 36. 错误的等式与方程关系:等式不一定是方程,方程必须含未知数。 37. 观察物体视角:一次最多能...
3. 近似值的确定:最大的两位小数取近似值为9.8是9.84(选①)。 4. 商与被除数的关系:商比被除数大的是36.72÷0.216(选③)。 5. 连续减法:从2中连续减去150个0.01剩下0.5(选②)。 五、图形题: 1. 连线题...
5. **无限小数与循环小数**:无限小数包括循环小数和非循环小数,所以无限小数不一定是循环小数。 **选择题知识点**: 1. **购物计算**:根据单价和购买数量计算总价。 2. **小数乘法与比较**:比较小数乘法的结果...
3. **循环小数的表示与近似值**:34.864864…是一个循环小数,可以用简便方法表示,即34.86(4),并且保留三位小数是34.865。 4. **比较大小**:题目中的÷0.9○×0.9,需要理解小数的性质,乘以小于1的小数会使数值...
- 小数:表示整体“1”被分成10、100、1000等份的数,分为有限小数、无限小数、纯循环小数和混循环小数。 2. 数的运算: - 整数运算包括加减乘除,遵循相应的运算定律和性质。 - 分数运算包括加减乘除,涉及通分...
- 有限小数不一定比无限小数大,这取决于具体数值。 - 除数为1的除法,商等于被除数。 - 一个数除以0.01相当于乘以100,因此商扩大100倍。 7. **选择题** - 第一题是有限小数。 - 近似数4.2可能是4.2399,4....
11. **循环小数与无限小数的关系**:判断题中提到循环小数是无限小数,但无限小数不一定是循环小数,这是正确的,因为无限小数还包括非循环无限小数。 12. **倍数关系的判断**:一个数是3和5的倍数,那么它是15的...
- 辗转相除法(欧几里得算法):不断用大数除以小数,取余数,直到余数为零,最后的除数即为最大公约数。 - 更相减损术:两数相减,直至得到相同的数,该数即为最大公约数。若两数均为偶数,可先用2约简。 举例...
`while`循环依赖于一个条件,只要条件满足就持续执行循环体。`for`循环常与`range()`函数配合,用于迭代序列,如在0到10之间迭代。 6. 条件判断:`if`语句用于进行条件判断。可以检查一个数值是否为正、负或零。当...
2. 循环小数的表示与精确值:让学生掌握循环小数的书写规则和近似值的求取。 3. 字母表达式的应用:涉及用字母表示数量关系,计算累计阅读页数。 4. 单位转换:时间与面积单位之间的换算,巩固单位理解。 5. 除法的...
在程序中空语句可用来作空循环体。例如 while(getchar()!='\n'); 本语句的功能是,只要从键盘输入的字符不是回车则重新输入。这里的循环体为空语句。 赋值语句 赋值语句是由赋值表达式再加上分号构成的表达式语句...
8. **`do-while`循环**:`do-while`循环至少执行一次,即使`while`后的条件不满足,循环体依然会执行一次。 9. **`continue`语句**:`continue`语句在循环中用于跳过当前循环体内剩余的部分,直接进入下一轮循环。...
有理数是指可以用有限小数或无限循环小数表示的数,如1、2、3、4、5等;无理数是指不能用有限小数或无限循环小数表示的数,如π、e、√2等。无理数的特点是其小数部分是无限不循环的。 二、科学记数法 科学记数法...
小数除法单元还会涉及到循环小数的概念,区分有限和无限循环小数,并学会正确表示循环节。 在观察物体单元的学习中,学生将培养立体空间观念,认识不同视角观察同一个物体可能出现的不同形状。这需要学生了解立体...
4. **Do-While循环**:与While循环类似,但do-while循环的条件检查是在循环体执行完后进行的,这意味着do-while循环至少会执行一次。 5. **For循环**:For循环是另一种常用的循环结构,通常用于迭代一定次数或在...
试卷中的相关题目考察了学生对小数四舍五入的方法,如将一个三位小数取近似值为4.36,这要求学生在理解四舍五入规则的基础上,进行准确的计算。 几何图形的认识则是小学数学教育中培养学生空间想象力和几何直觉的...