`
michelecindy
  • 浏览: 173064 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

关于判断无限大数字字符串能否被6整除问题的解决方法

    博客分类:
  • Java
阅读更多
import java.util.Random;

 

public class TestBigString {

 /**
  * @param args
  */
 public void test(String s) {//将字符串转化成数组
  char[] a = s.toCharArray();
  test1(a);
 }

 public void test1(char[] a) {
  int temp1 = 0;
  String tem="";
  for (char c : a) {//便利数组从高位开始 对6取余数,然后余数*10+下一位继续相同操作
   tem = String.valueOf(c);
   temp1 = temp1 * 10 + Integer.parseInt(tem);
   temp1 = temp1 % 6;
  }
  if (temp1 != 0) {//判断余数 如果是0 能整除
   System.out.println("不能被6整除");
  } else
   System.out.println("能被6整除");
 }

 public static StringBuffer generate() {
  StringBuffer bf=new StringBuffer();
  for (long i = 0; i < 10000000; i++) {
   Random rand = new Random();
   int temp = rand.nextInt(10);
   bf.append(temp);
  }
  return bf;
 }

 public static void main(String[] args) {
  // System.out.println(Long.parseLong(s)%6);
  Long a = System.currentTimeMillis();
  String s = TestBigString.generate().toString();
  Long b = System.currentTimeMillis();
  System.out.println(b-a);//测试 时间
  System.out.println(s.length());
  TestBigString tbs = new TestBigString();
  Long c = System.currentTimeMillis();
  tbs.test(s);
  Long e = System.currentTimeMillis();
  System.out.println(e-c);//测试计算用的时间2-3秒
 }
}

分享到:
评论

相关推荐

    被11整除问题C语言代码

    // 输出NO表示不能被11整除 } } return 0; // 程序正常结束 } ``` ##### 4. 代码解释 - **输入处理**:使用`scanf("%s", a)`从标准输入读取字符串。 - **遍历字符串**:通过`for`循环从字符串末尾开始遍历,...

    c语言 - 副本.pdf

    3. 数字积:遍历数字字符串,计算乘积。 4. 四舍五入:掌握浮点数处理和取整规则。 5. 实数函数:根据条件选择不同的计算公式,用if-else语句实现。 6. 最大元素及其坐标:遍历二维数组,记录最大值及其坐标。 7. ...

    Python陈东

    3. **日期与时间**:第三个习题中,通过`for`循环遍历年份,利用闰年的判断规则(能被4整除但不能被100整除,或者能被400整除)找出2000到3000之间的所有闰年。这涉及到Python的数值运算和条件判断。 4. **数学函数...

    python小例子.docx

    14. **判断闰年**:根据闰年的规则(能被4整除但不能被100整除,或者能被400整除)来判断。 15. **判断质数**:使用`for`循环从2到`num-1`检查是否有数能整除`num`,如果没有,则是质数。 16. **计算阶乘**:通过...

    C语言课后习题代码集

    在本资源包“C语言课后习题代码集”中,包含了多个经典的计算机科学与编程问题的C语言实现。这些代码实例是学习和巩固C语言基础、提高...通过学习和实践这些代码,不仅可以加深对C语言的理解,还能锻炼解决问题的能力。

    2019年C语言期末考试题及答案.pdf

    这些题目涵盖了C语言的基础知识,包括数据操作、循环...这些题目涵盖了C语言的基本语法、数据类型、控制结构、数组、字符串、函数、文件操作等多个核心概念,通过解决这些问题,学生可以加深对C语言的理解和编程能力。

    湖南省计算机考试C语言机考试题.pdf

    - 条件判断:如判断数是否能被特定数整除,或者满足特定算术关系。 4. 数学公式计算: - 系数求和:例如求1/m^2的和,可能需要用到高斯求和公式或者迭代方法。 - 平方根和指数运算:在C语言中,可以使用`sqrt()`...

    专升本C++复习题.docx

    2. 数字的逆序输出:通过取模和整除操作,将数字转换为字符串,然后反向遍历输出。 3. 求整数的位数并逆序输出:同样需要将数字转换为字符串,然后计算字符串长度,反向输出。 4. 同构数的查找:遍历1到99,检查每...

    VB程序设计30道编程题.pdf

    取模运算符`Mod`,如`yes Mod 4=0`用于判断年份是否能被4整除。 8. **逻辑判断**:多个`If...Then`语句可以嵌套,以处理更复杂的条件判断。在判断闰年问题中,使用了逻辑运算符`And`和`Or`。 9. **选择结构`Select...

    南开100题c语言2011版

    4. **条件判断**:在C语言中,`if`语句用于进行条件判断,如第1题中判断分数是否低于平均分,第2题和第5题中判断数字能否被特定数整除。`if`后可跟`else`或`else if`来处理多种情况。 5. **指针操作**:指针是C语言...

    c++经典程序题库

    - 逆向思维解决问题的方法。 **20. 菲波那切数列生成** - **题目描述**: 输出菲波那切数列的前 20 项。 - **知识点**: - 数列生成方法。 - 循环结构的应用。 **21. 九九乘法表** - **题目描述**: 使用 for、...

    c语言程序属于程序设计语言.pdf

    8. 条件过滤:第八个示例中,使用`for`循环和条件判断找出100以内能被3整除且个位数为6的所有整数,体现了C语言处理逻辑筛选的能力。 9. 数列求和:第十个示例是求调和级数的项数,直到和大于给定值。这里使用无限...

    26道基础算法题.pdf

    - 直到该数不能被2整除,再检查3、5等其他质数。 ### 5. 由1、2、3、4组成的三位数 **问题描述**:利用1、2、3、4四个数字,可以组成多少个无重复数字的三位数? **解题思路**: - 使用组合数学原理,首先选择百...

    头歌c语言实训作业题解

    第2关:求解出n以内所有能被5整除的正整数的乘积 第3关:最大公约数和最小公倍数 第4关:字符串中各类字符数的统计 第5关:求sn=a+aa+aaa+aaaa+......的值 循环结构程序设计2 第1关:C循环-求平均成绩 第2关:C循环-...

    matlab开发-EPRIMES

    这个函数通过循环遍历从2到√n的所有数,如果n能被其中任何数整除,那么n不是素数。若循环结束后n仍被判断为素数,则返回true。 在EPRIMES问题中,我们需要从小数部分提取每一位数字,并检查它们是否为素数。MATLAB...

    专升本第一学期C语言课后作业答案

    合法的标识符只能由字母、数字和下划线三种字符组成,而且首字符不能是数字。变量名的长度通常不超过8个字符。变量必须先定义后使用,这是C语言的基本规则。 2. **`scanf`函数**:`scanf`是C语言中的输入函数,用于...

    全国计算机等级考试三级上机题库(南开100题).doc

    2. **字符串长度计算**:获取字符串长度的方法。 3. **字符替换与删除**:如何在字符串中插入、删除或替换字符。 **代码分析:** ```c void StrOR(void) { int I, j, k, index, strl; char ch; for (I = 0; I ; ...

    C程序设计_函数_实验报告

    通过遍历从2到`x/2`的所有数字,检查`x`是否能被这些数字整除。如果找到任何因子,则立即返回`false`表示`x`不是素数;如果没有找到因子,则返回`true`表示`x`是素数。 #### 输出最长单词的函数 另一个示例展示了...

Global site tag (gtag.js) - Google Analytics