当前位置: 首页 > 编程笔记 >

计算C ++中数组中的素数

方浩旷
2023-03-14
本文向大家介绍计算C ++中数组中的素数,包括了计算C ++中数组中的素数的使用技巧和注意事项,需要的朋友参考一下

给我们一个数字数组。目的是找到该数组中素数的计数。

质数是可以被1和数字本身整除的数。它只有两个因素。我们将检查从第一个元素到最后一个元素是否为质数,并增加迄今发现的质数。

要检查数字N是否为质数,请检查[2到N / 2]范围之间的数字是否将N整除。如果是,则它不是质数。否则,它是首要的。

让我们通过示例来理解。

输入− arr [] = {1,2,3,4,5,6,7,8,9}

输出-质数计数-4

说明-这里2,3,5,7是素数,而1,4,6,8,9是非素数。

输入− arr [] = {11,12,4,61,23}

输出-质数计数-3

说明-这里11,61,23是素数,而12,4是非素数。

以下程序中使用的方法如下

  • 我们采用一个包含随机数的整数数组arr []。

  • 函数checkPrime(int num)检查所传递的数字num是否为质数。如果为质数,则返回1,否则返回0。

  • 如果num <= 1,则为非素数,返回0。

  • 现在从2开始到num / 2,如果任何数字将num(num%i == 0)完全除,则num为非素数,返回0。

  • 否则返回1。

  • 变量isprime指示数字是否为质数(1表示质数)

  • 变量计数将素数存储在arr []中

  • 在主遍历整个数组内部,并将每个元素arr [i]传递给checkPrime(arr [i]),如果结果为1(isprime == 1),则递增计数。

  • 最后一个数是arr []中的素数

示例

#include <bits/stdc++++.h>
using namespace std;
//查找数字是否为质数的函数
int checkPrime(int num){
    if (num <= 1)
      { return 0; }
   //检查2到一半的arr [i]
   for (int j = 2; j <= num/2; j++){
      if (num % j == 0){
         return 0;
      }
      return 1;
   }
}
int main(){
   int arr[] = { 1,3,5,4,8,13,11 };
   int n = 7;
   int count=0;
   int isprime=0;
   for(int i=0;i<n;i++){
      isprime=checkPrime(arr[i]);
      if(isprime==1)
         count++;
   }
   cout<<"Count of number of primes in array : "<<count;
   return 0;
}

输出结果

如果我们运行上面的代码,它将生成以下输出-

Count of number of primes in array : 4
 类似资料:
  • 问题内容: 我有一个整数数组,我想计算重复出现的元素。首先,我读取数组的大小,并使用从控制台读取的数字对其进行初始化。在数组中,我存储了重复的元素。该数组存储元素连续出现的次数。然后,我尝试搜索重复序列并以特定格式打印它们。但是,它不起作用。 我希望输出看起来像这样: 例如: 如何找到重复的元素及其计数?如何如上所示打印它们? 问题答案: 字典(Java中的HashMap)可以轻松解决此类问题。

  • 问题内容: 说我有阵列 数组的长度为20,但计数为0。如何获取计数? 问题答案: “计数”是什么意思?具有非零值的元素数量?您只需要数一下。 有 没有区别 数组和一个已之间 明确地 设置与零个值。例如,这些数组是无法区分的: Java中的数组始终具有固定大小-可通过字段访问。没有“当前使用的阵列数量”的概念。

  • 问题内容: 如果我有一个数组,我想检查数组中有多少个。在JavaScript中不使用循环循环的最优雅的方法是什么? 问题答案: 很简单:

  • 我想在输入后计算整数数组(大小,如:数组[1000])中的元素数量,而无需在输入时手动计数(使用,即=传递给scanf的参数数)。虽然int数组没有以空结尾,并且不能像或那样使用,并且没有像这样的用于int数组的可用函数,是否可以编写一个C程序来提示用户输入任意数量的数字,并且程序将计算它们(传递给scanf()的总参数)并使用数组或指针打印最大值?

  • 问题内容: 我已经看到了一些这样的示例,但是所有这些似乎都依赖于知道要计算发生次数的元素。我的数组是动态生成的,所以我无法知道要计算哪个元素的出现(我想计算所有元素的出现)。有人可以建议吗? 提前致谢 编辑: 也许我应该更清楚一点,数组将包含多个不同的字符串(例如 在不知道它们是什么的情况下,如何计算foo,bar和foobar的出现? 问题答案: Swift 3和Swift 2: 您可以使用类型

  • 本文向大家介绍计算C ++中给定范围内的最小元素数,包括了计算C ++中给定范围内的最小元素数的使用技巧和注意事项,需要的朋友参考一下 我们得到了一个大小为N的整数数组。变量L和R定义了一个介于1和N之间的范围。目标是找到位于范围L和R中的最小元素数,使得L> = 1且R <= N. 我们将遍历位于范围L和R中的元素并找到最小的元素,以实现此目的。 同样,遍历范围L和R的元素,如果任何元素等于在步