精华内容
下载资源
问答
  • 利用数组筛选素数

    千次阅读 2014-05-25 17:28:59
    /* ... *All rights reserved. *文件名称:test.cpp *作者:王鹏为 *完成日期:2014年5月25日 ...*问题描述:利用数组筛选素数 */ #include #include using namespace std; int main() { const int
    /*
    
    *Copyright (c)2013,烟台大学计算机学院
    
    *All rights reserved.
    
    *文件名称:test.cpp
    
    *作者:王鹏为
    
    *完成日期:2014年5月25日
    
    *版本号:v1.0
    
    *问题描述:利用数组筛选素数
    
    */
    
    #include <iostream>
    #include <iomanip>
    using namespace std;
    
    int main()
    {
        const int M=200;
        const int N=((M+1)/2);
        int i,j,a[N];
        a[0]=2;
        for (i=1;i<(N-1);i++)
        a[i]=2*i+1;
        for (i=1;i<(N-1);i++)
        if (a[i]!=0)
        for (j=i+1;j<N;j++)
        if(a[j]%a[i]==0)
        a[j]=0;
        cout<<"The primer are [2-"<<M<<"]:\n";
        for (i=0,j=0;i<N;i++)
        {
            if (a[i]!=0)
            {
                cout <<setw(5)<<a[i];
                i++;
                if (j%10==0)cout <<endl;
    
            }
        }
    
    
        return 0;
    }
    

    展开全文
  • 有趣的数 数组筛选

    2020-02-22 21:14:05
    我们称一个数是质数,而且数位中出现了 5 的数字是有趣的。例如 5,59,457 都是有趣的,而 15,7不是。求 1 到100000 中有趣的数的个数。...#include<bits/stdc++.h> using namespace std; int Num = 0; ...

    我们称一个数是质数,而且数位中出现了 5 的数字是有趣的。例如 5,59,457 都是有趣的,而 15,7不是。求 1 到100000 中有趣的数的个数。

    主要考虑两个问题:

    1.从1-100000中筛选出质数

    2.对筛选出来的质数进行判断是否满足有趣条件

     

    #include<bits/stdc++.h>
    using namespace std;
    int Num = 0;
    int Find(int a){
        while(a)
        {
            if(a%10 == 5){
                return Num++;
            }else{
                a/=10;
            }
        }
        return 0;
    }


    int main(){
        int str[100000] = {};
        int flag;
        str[0] = str[1]=1;
        for(int i = 2;i<100000;i++)
        {
            if(str[i]!=1){
                Find(i);
                flag = 2;
                while(i*flag<100000)
                {
                    str[i*flag] = 1;
                    flag++;
                }
            }
        }
        
        cout <<Num;
        return 0;
    }

    展开全文
  • #include "stdio.h" void main() { int a[10],j=9,d,i=0,f=0,temp; for(i=0;i<=9;i++) { printf("读入"); scanf("%d",&f); a[i]=f; } for(j=9;j>=0;j--) { ...

    从小到大排列

    #include "stdio.h"
    void main()
    {
        int a[10],j=9,d,i=0,f=0,temp;
        for(i=0;i<=9;i++)
        	{
        		printf("读入");
        		scanf("%d",&f);
        		a[i]=f;
        		}
        for(j=9;j>0;j--)
        {
        	//此循环就是把第一个最大的数选出来之后调到最后一个之后,循环选出倒数第二个最大值,以此类推。
        	for(i=0;i<j;i++)
        	{
        		//如果满足if条件,会将在第一个位置的往后调,不断重复,这个if就是
        	if(a[i]>=a[i+1])//这里只需这一个if,如果不满足条件是不用动的,如果满足条件用此if移动。
        	{
        	temp=a[i];//赋值给一个变量
        	a[i]=a[i+1];//这里将小的往后面放
        	a[i+1]=temp;//将a[i]最大值赋给a[i+1]
    
        	}
        	//意思·就是把小的往后调,如果调不动了就证明所调的数不如后面的大,那么跳过if,i+1,再调后面的这个数。
        }
        
        }
        for(i=0;i<=9;i++)
        printf("%d",a[i]);//这里就是利用循环输出了
    }
    

    在这里插入图片描述

    展开全文
  • #include&lt;iostream&gt; #include&lt;cstring&gt; #include&lt;cstdio&gt; #include&lt;algorithm&gt; #include&lt;vector&gt; #include&lt;set&gt; #include&...
    #include<iostream>
    #include<cstring>
    #include<cstdio>
    #include<algorithm>
    #include<vector>
    #include<set>
    #include<map>
    #include<queue>
    #include<cmath>
    using namespace std;
    #define maxn 1000010//范围可以在这里调整
    bool prime[maxn + 1];
    int main()
    {
        int count = 0;
        memset(prime, 1, sizeof(prime));//初始化认为所有数都是素数
        prime[0] = prime[1] = 0;//0和1特例标记出来,便于后续判断
        for(int i = 2; i < maxn; i ++)
        {
            if(prime[i])//省去不必要的判断
            {
                for(int j = i + i; j <= maxn; j += i)//一个数的倍数不是素数,其中(int j = i * i)改为(int j = i + i)也一样
                    prime[j] = 0;
            }
        }
        for(int i = 2; i <= maxn; i ++)
            if(prime[i])
                count ++;//记录素数个数
            printf("%d\n",count);
        return 0;
    }
    

    保存所有素数
    #include<iostream>
    #include<cstring>
    #include<cstdio>
    #include<algorithm>
    #include<vector>
    #include<set>
    #include<map>
    #include<queue>
    #include<cmath>
    using namespace std;
    #define maxn 1010//范围可以在这里调整
    bool prime[maxn + 1];
    int isprime[maxn + 1];
    int main()
    {
        int count = 0;
        int cnt = 0;
        memset(prime, 1, sizeof(prime));//初始化认为所有数都是素数
        prime[0] = prime[1] = 0;//0和1特例标记出来,便于后续判断
        for(int i = 2; i < maxn; i ++)
        {
            if(prime[i])//省去不必要的判断
            {
                isprime[++ cnt] = i;
                for(int j = i + i; j <= maxn; j += i)//一个数的倍数不是素数,其中(int j = i * i)改为(int j = i + i)也一样
                    prime[j] = 0;
            }
        }
        for(int i = 2; i <= maxn; i ++)
            if(prime[i])
                count ++;//记录素数个数
            printf("%d\n",count);
        for(int i = 1; i <= cnt; i ++)
            cout<<isprime[i]<<endl;//所有素数
        return 0;
    }
    

    展开全文
  • /* ... *All rights reserved. *文件名称:C++.cpp *作 者:王一锟 *完成日期:2014年11月29日 *版 本 号:v1.0 * *问题描述: ... *输出描述:筛选数组中的正数 */ #include using nam
  • 数组

    2020-06-12 08:45:48
    #include<iostream> #define num 10 using namespace std; int a[num]; //数组不要轻易定义在main里面,尤其是大数组 int main() { for(int i=0;i<num;i++) cin>>a[i]; for(int i=num-1;i>=0;...
  • 筛选法求100以内的素数,要求使用数组。 #include "stdafx.h" #include<iostream> using namespace std; int _tmain(int argc, _TCHAR* argv[]) { int a[100],i,b[100],j,n=0; //数组a[100]来...
  • /** * C++ 打印 21 内素数表 */ #include <iostream> #include <fstream> using namespace std; const int N = 21; ... 可以开这么大的数组 10 位数字的 数组 */ int main() { ...
  • #include using namespace std; bool existthesame(int *a,int n1,int *b,int n2); //n1个数据的a数组中和n2个数据的b数组中是否有相同元素 int main() { int a[50]; int b[50]; int i, n1, n2; //读入...
  • 从函数获得一个数组,C有很多方法,这里列举两种方法,都是从函数返回一个参数。具体做法看程序,注释挺详细的: 方法一:/*------primer.c-------*/ #include #include /*C没有bool类型,GCC不加进去,我也没...
  • //输入一个整形数组数组里有正数也有负数。 //数组中连续的一个或多个整数组成一个子数组,每个子数组都有一个和。 //求所有子数组的和的最大值。要求时间复杂度为O(n)。//最大子段和 #include "stdafx.h" #...
  • # include # define N 100int main(void){ int a[N], b[N]; //定义两个数组 int i, j, count = 0; a[0] = 1; //将1筛除 for(i=1; i a[i] = 0; //初始化所有数/*若筛中最小数的标志为0,则基为素数,将其存入素数数组...
  • #include#include#define SIZE 1000#define TRUE 1#define FALSE 0int main(){ char sieve[ SIZE ]; char *sp; int number; /* Set the entire sieve to TRUE */ for( sp = sieve; sp
  • http://acm.hdu.edu.cn/showproblem.php?pid=4715... 【code】: 1 #include <iostream> 2 #include <cstdio> 3 #include <cstring> 4 #include <cmath> 5 6 using namespac...
  • 利用height数组筛选,sa来区分子串位置。详见注释。 #define _crt_secure_no_warnings #include<iostream> #include<cstdio> #include<string> #include<cstring> #include<algorit...
  • 筛选法求100以内的素数(数组

    千次阅读 2013-12-23 09:18:41
    #include #include int main() { int a[101],i,j,n=0; for(i=1;i a[i]=i; for(i=1;i {  for(j=2;j  {  if(a[i]%j==0)  a[i]=0;  } } for(i=2;i {  if(a[i]!=0)  printf("%d ",a[i])
  • /* ... *All rights reserved. *文件名称:C++.cpp *作 者:王一锟 *完成日期:2014年12月1日 *版 本 号:v1.0 * *问题描述: *输入描述: ...#include using namespace std; int main( ) {
  • <script> arr = ['流机理', '马思聪', '一一', '谎言']; currentArr = ['流机理',... function noInclude(arr, currentArr) { var newA = []; for (var i = 0; i < arr.length; i++) { if (currentArr...
  • 最大连通子数组

    2016-04-06 19:45:00
    那么我们这样想,先将每行的最大子数组之和,然后再将这些最大之和组成一个数组,在进行求和,这样就保证了,加入中间一行为负数,再进行筛选。增加了直接相加的正确率。 实现代码: #include <iostream>...
  • 最大连通数组的和

    2016-04-06 19:50:00
    那么我们这样想,先将每行的最大子数组之和,然后再将这些最大之和组成一个数组,在进行求和,这样就保证了,加入中间一行为负数,再进行筛选。增加了直接相加的正确率。 实现代码: 1 #include <iostream...
  • 一维随机数组生成器

    2021-01-23 14:32:58
    一维数组生成器的意义在于可以通过生成随机数组来筛选出无法通过的样例用于代码的调试 #include <bits/stdc++.h> using namespace std; int randSize; //生成随机数组 template <class T> T* creatArr...
  • 主要包括两个过程:1.建堆 2.向下调整 建堆过程: 从下往上进行筛选(类似于打比赛),将最大值或者最小值调整到 顶部。 调整:将顶部的最大值或最小值 放到数组的最后,下次建堆就不用这个元素了。...#include ...
  • C获取数组中未出现过的最小正整数 ...int* GetArr(int arr[],int length)//筛选数组中的正整数组成一个新数组 { int n=1; int* p=(int*)malloc(n*sizeof(int)); int i; for(i=0;i<length;...
  • 素数(用数组计算)

    千次阅读 2012-11-27 10:04:03
    #include #include using namespace std; int main(void) { const int M=200; const int N=((M+1)/2); int i,j,a[N]; ...i++) //初始数组实现第一步筛选 a[i] = 2*i+1; for(i=1;
  • 2.编写函数fun,其功能是将字符串s下标为奇数的字符删除,字符串中剩余字符形成的新字符串放在数组t中。 主函数中输入字符串s,调用函数,输出字符数组t。 输入说明:共一行,输入字符串s 输出说明:共一行,输出...
  • include ...//构造两个数组 一个用来存输入的所有数 一个用来存筛选后的数 cout&lt;&lt;”请输入您要输入的数字个数:”;cin&gt;&gt;n; cout&lt;&lt;”请输入”&lt;...
  • //动态结构数组储存捐献者信息,并初筛选 #include struct inflatable //结构体 { char name[80]; double money; }; int main() { int number,i,j=0,k=0; char filename[60]; using namespace std; cout ...

空空如也

空空如也

1 2 3 4 5 ... 13
收藏数 243
精华内容 97
关键字:

数组筛选include