Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

Nに素数を加算して形成された最も近い素数を出力します


質問によると、タスクは、数Nが素数でない場合、2から始まる素数を加算することによって最も近い素数を見つけることです。

Input: N=6
Output: 11

説明

6は素数ではないので、最初の素数を6に追加します。つまり、2は8になります。8も素数ではありません。2の後に次の素数を追加します。3は8 + 3 =11になります。したがって、11は素数の出力になります。 11.

アルゴリズム

START
Step 1- > declare num=15, i = num/2
Step 2 -> Loop For k=2 and k<=i and k++
   Set I=k/2
   Loop For j=2 and j<=l and j++
      Set flag=0;
      If k%j=0
         Set flag=1
         Break
      End
   End
   IF flag=0
      Set num=num+k;
   End IF
   Set a=num/2
   Loop For m=2 and m<=a and m++
      Set flag1=0;
      IF num%m=0
         Set flag1=1
         break
      End
   END
   If flag1=0
      Print num
   End
END
STOP

#include<stdio.h>
int main(){
   int num =15 ;
   int i,k,j,sum=0,flag=0,l,flag1=0,a,m;
   i=num/2;
   for(k=2;k<=i;k++) {
      l=k/2;
      for(j=2;j<=l;j++) {
         flag=0;
         if(k%j==0) {
            flag=1;
            break;
         }
      }
      if(flag==0) {
         num=num+k;
      }
      a=num/2;
      for(m=2;m<=a;m++) {
         flag1=0;
         if(num%m==0) {
            flag1=1;
            break;
         }
      }
      if(flag1==0){
         printf("%d",num);
         return 0;
      }
   }
}

出力

上記のプログラムを実行すると、次の出力が生成されます

17

  1. 非平方数をCで印刷する

    プログラムの説明 数の2乗は、その数にそれ自体を掛けたものです。 平方数または完全な正方形は、整数の2乗である整数です。 完全な平方は整数の平方です 1, 4, 9, 16, 25, 36, 49, 64, 81, 100 これが1から100までのすべての完全な平方の平方根です。 √1 = 1 since 12 = 1 √4 = 2 since 22 = 4 √9 = 3 since 32 = 9 √16 = 4 since 42 = 16 √25 = 5 since 52 = 25 √36 = 6 since 6

  2. Pythonを使用して間隔内にすべての素数を印刷する方法は?

    素数は、1とそれ自体を除く他の数値で割り切れない数として定義されます。したがって、数が素数であることを確認するには、1とそれ自体の間のすべての数(両方を除く)による除算性をチェックする必要があります。 次のプログラムは、1から100までのすべての素数をリストします。外側のループはこの範囲の数を生成します。内側のループは2から外側のループの各数値に移動し、%演算子で除算性を連続してチェックします。内側の範囲のすべての数値で割り切れない場合は、その数値を出力します for i in range(101):     for j in range(2,i-1):   &n