求质数的两种方法1-100

// 1-100以内质数的和
for (int i = 1; i <= 100; i++) {
  boolean b = true;
  if (i != 1) {
    for (int j = 2; j < i; j++) {
      if (i % j == 0) {
        b = false;
        break;
      }
    }

    if (b) {
      System.out.println(i);
    }
  }
}
System.out.println("********************************************************************");
int j;
for (int i = 2; i <= 100; i++) { // 1不是素数,所以直接从2开始循环
  j = 2;
  while (i % j != 0) {
    j++; // 测试2至i的数字是否能被i整除,如不能就自加
  }
  if (j == i) { // 当有被整除的数字时,判断它是不是自身
    System.out.println(i); // 如果是就打印出数字
  }
}

时间: 2024-08-05 15:25:12

求质数的两种方法1-100的相关文章

用c#求质数的两种方法

求1到100的中的质素 方法1: Console.Write("1到100中的质数有:");   for(int i=1;i<=100;i++){ int m=0; for(int j=1;j<=i;j++){ if(i%j==0){ m++; } } if(m==1){ Console.Write(i+"  "); }else if(m==2){ Console.Write(i+"  "); } } 方法2: Console.Wri

除法求模中求逆元的两种方法

今天下午还是有点闲的,不想刷题,不想补题,突然想起昨天的training 3里I题涉及到除法取模的问题,就来总结一下 首先对于模运算来说,是没有对于除法的取模的(即没有(a/b)%mod==a%mod/b%mod),但是在很多题目中都涉及到除法取模,所以就必须要了解或者掌握,对于除法取模以(a/b)%mod来说,我们首先需要得到b的逆元,根据逆元的定理 对于正整数和,如果有,那么把这个同余方程中的最小正整数解叫做模的逆元. 然后就是求逆元的两种方法. 第一种方法就是比较普遍的,也是挺基础的,就是

递归很耗内存+多项式求值的两种方法+c语言计时方法

1.用for循环写一个函数,实现从1开始输出到N的正整数. 有两宗实现方法,一种是递归,另一种是非递归 //非递归 void PrintN1(int N){ int i; for(i=1;i<=N;i++){ printf("%d\n",i); } return; } //递归 递归对空间的需求很大,当数字很大的时候,需要很大的内存,当数字是十万的时候递归就崩了 void PrintN2(int N){ if(N){ PrintN2(N-1); printf("%d\n

求最小生成树的两种方法

Kruskal算法核心是加边,先把所有边按照权值从小到大排序,然后在剩下的所有没有被选过的边中,找到最小的边,如果和已经选取的边构成回路则放弃,选取次小边,直到选取了n-1条边为止,这样所有点就都连通了. 每次从边集中选取的权值最小的边的两个顶点如果属于不同的树,就把他们合并(把这条边加入子图),反之则去看下一条边. n个点e条边的情况下,时间复杂度O(e^2),并查集优化之后O(eloge),适用于求稀疏图的最小生成树. int find(int x) { return p[x]==x?x:p

列出1-100的所有质数的两种方法

方法一 用dbms_output.put_line 打印出来 ---打印1-100以内的质数(素数) declare v_number number; v_temp number; begin for v_number in 1 .. 100 loop v_temp := 1; while v_temp < v_number loop v_temp := v_temp + 1; --加1放在这里才能保证不被后面exit剔除哦 if v_temp = v_number then dbms_outp

判断质数的两种方法

<!--方法一, 删选法,通过排除有倍数关系的数--><script type="text/javascript"> var arr = []; for(var i = 2; i < 200; i ++){ for(var j = 2 * i; j < 200; j += i){ arr[j] = true; } } for(var i = 2; i < 200; i ++){ if(arr[i] == undefined){ document

HDU 1013 Digital Roots(两种方法,求数字根)

Digital Roots Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 67949    Accepted Submission(s): 21237 Problem Description The digital root of a positive integer is found by summing the digits of

两种方法求丑数

我们把只包含因子2.3和5的数称作丑数(Ugly Number).例如6.8都是丑数,但14不是,因为它包含因子7. 方法1 : 暴力破解,逐个判断 代码: <pre name="code" class="cpp">#include <iostream> #include <vector> using namespace std; //判断是否是丑数 bool isUgly(int index){ while(index % 2

设置数据库兼容级别的两种方法以及区别

转:http://blog.csdn.net/htl258/article/details/5696325 --设置数据库兼容级别的两种方法 --以设置兼容SQL Serve 2005 为例 --法一: ALTER DATABASE database_name SET COMPATIBILITY_LEVEL = 90 GO --法二: EXEC sp_dbcmptlevel database_name,90 GO database_name 要修改为数据库的名称. 各参数值对应的数据库版本: 8