循环已有质数中的最大值到9999,找出第一个不会被已有质数整除的数,填入数组。检查很久都不知道哪里有问题?
C语言 求质数集合代码报错,找不出来原因,如何解决?(相关搜索:c语言|最大值)
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
4条回答 默认 最新
关注 引自免费微信小程序:皆我百晓生
当然,我会竭尽所能帮助你解决C语言编程中关于质数集合的问题以及在C#中寻找第一个不会被已有质数整除的数的问题。但由于您没有提供具体的错误代码和现有代码片段,我将分别给出两种问题的解决方案示例。
C语言:求质数集合的代码(无报错版本)
#include <stdio.h> #define MAX_PRIME 9999 void generate_primes(int primes[], int *size) { int is_prime[MAX_PRIME + 1] = {0}; // 初始化所有数为可能的质数 for (int i = 2; i <= MAX_PRIME; ++i) is_prime[i] = 1; // 标记非质数 for (int p = 2; p * p <= MAX_PRIME; ++p) { if (is_prime[p]) { for (int i = p * p; i <= MAX_PRIME; i += p) is_prime[i] = 0; } } // 收集质数并计算数组大小 (*size) = 0; for (int i = 2; i <= MAX_PRIME; ++i) { if (is_prime[i]) { primes[(*size)++] = i; } } } int main() { int prime_array[10000], size = 0; generate_primes(prime_array, &size); // 打印质数集合 printf("The prime numbers are:\n"); for (int i = 0; i < size; ++i) { printf("%d ", prime_array[i]); } return 0; }
C#:查找第一个不会被已有质数整除的数
using System; using System.Collections.Generic; class PrimeFinder { List<int> primes; public PrimeFinder() { primes = new List<int>(); GeneratePrimes(9999); // 假设已有一个生成小于等于9999的质数列表的方法 } void GeneratePrimes(int limit) { // 这里假设你已经有了一个填充primes列表的方法,如Sieve of Eratosthenes算法 // 下面是简化版的示例: for (int i = 2; i <= limit; i++) { if (IsPrime(i)) { primes.Add(i); } } } bool IsPrime(int num) { if (num <= 1) return false; for (int i = 2; i * i <= num; i++) { if (num % i == 0) return false; } return true; } public int FindNextUncoprimeNumber() { int number = primes[^1] + 1; // 获取当前最大质数加一作为起始点 while (true) { foreach (var prime in primes) { if (number % prime != 0) break; if (prime * prime > number) { return number; // 没有找到能整除的质数,说明找到了第一个不会被已有质数整除的数 } } number++; } } static void Main(string[] args) { PrimeFinder finder = new PrimeFinder(); Console.WriteLine($"The first number not divisible by any existing prime below 10000 is: {finder.FindNextUncoprimeNumber()}"); } }
请根据您的实际代码检查上述示例是否与您的实现存在差异,并对照进行调整。对于C#部分,请确保
GeneratePrimes
方法正确实现了质数生成逻辑。如果仍有问题,请提供详细的错误信息或具体代码片段以供进一步分析。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 创建一个数据库(要创建的表和记事本的代码截图))
- ¥15 有没有整苹果智能分拣线上图像数据
- ¥20 有没有人会这个东西的
- ¥15 cfx考虑调整“enforce system memory limit”参数的设置
- ¥30 航迹分离,航迹增强,误差分析
- ¥15 Chrome Manifest扩展引用Ajax-hook库拦截请求失败
- ¥15 用Ros中的Topic通讯方式控制小乌龟的速度,走矩形;编写订阅器代码
- ¥15 LLM accuracy检测
- ¥15 pycharm添加远程解释器报错
- ¥15 如何让子窗口鼠标滚动独立,不要传递消息给主窗口