প্রশ্ন অনুযায়ী, যদি N প্রাইম না হয়, তবে ২ থেকে শুরু করে প্রাইম সংখ্যা যোগ করে নিকটতম প্রাইম সংখ্যা খুঁজে বের করতে হবে।
Input: N=6 Output: 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