El primer elemento de la tabla de juego

La idea es:
crear un primos de depósito matriz A y determinar el número no es un número primo serie B,
primera matriz de configuración por defecto B para todo primo, entonces el ciclo comienza a las 2, para determinar si el número es un número primo, entonces será su no se convierte en un múltiplo de todos los números primos (con factor no número primo) este número se almacena en la matriz a, el ciclo continúa

Este código es la salida de todos los primos menores que 100

#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<iostream>
#include<math.h>
using namespace std;
//素数打表
//先创建一个数组用来存素数,再一个数组用来判断这个值是不是素数
int sushu[100];
bool is_sushu[100];
//写一个方法
int num=0;
void judge_sushu(){
    int i,j;
    //先初始化全都是素数
    memset(is_sushu,true,sizeof(is_sushu));
    //然后从2开始
    for(i=2;i<100;i++){
        if(is_sushu[i]){
            //如果他是素数,那就把他存在素数数组中,然后把他的倍数全都变成不是素数
            sushu[num++]=i;
            for(j=2;j*i<100;j++)
                is_sushu[i*j]=false;
        }
    }
    //再把0和1设置为不是素数
    is_sushu[0]=false;
    is_sushu[1]=false;

}
int main(){
    //输出一定范围内的所有素数
    int i;
    judge_sushu();
   // len=sizeof(sushu)/sizeof(int);
    for(i=0;i<num;i++)
        printf("%d ",sushu[i]);
}

Publicado 72 artículos originales · ganado elogios 5 · Vistas 2791

Supongo que te gusta

Origin blog.csdn.net/qq_41115379/article/details/105027012
Recomendado
Clasificación