0
سورس کد تشخیص اول بودن یک عدد در C++
سلام مهندسین بزرگوار ، من یادم رفته c++ قبلا خوندم حالا واسه بچه خواهرم میخوام بنویسم گیر کردم ، توی C++ الگوریتمی بنوسید که نشان دهد عدد وارد شده اول است یا خیر ؟
3 پاسخ
5
آقا فرهاد استاد ماست ولی این یکی کمی کوتاه و ساده تره من چند روز پیش روی وب سایتمم گذاشتم
Code
#include<iostream.h> #include<math.h> main() { int x; cin>>x; int z=2; for(int i=2;i<sqrt(x);i++) if (x%i==0) z=z+1; if (z==2 && x!=1 && x!=4) cout<<"adad aval ast"<<endl; else cout<<"addade aval nist"<<endl; }
6
این برنامه عددی را از کاربر می گیرید اگر هیچ یک از اعداد دو تا جزر (رادیکال) همان عدد مقسوم آن نباشند آن عدد اول است در غیر این صورت مرکب است
Code
#include <iostream> #include <math.h> #include <conio.h> using namespace std; int main() { int x, a, b, c, d; cout<<"This program for finding number is prime or not\nPlease enter a number"<<endl; cin>>x; if (x<=3) { cout<<x<<" is prime"<<endl; getch(); return(0); } a=sqrt(x); for (b=2;b<=a;b++) { d=x%b; if (d==0) { cout<<x<<"%"<<b<<"=0"<<endl; cout<<x<<" is not prime"<<endl; getch(); return(0); } } cout<<x<<" is prime"<<endl; getch(); return(0); }
یه جور دیگه هم میتونید بنویسید:
Code
#include<iostream.h> #include<conio.h> main() { int number; int counter = 0; cout<<"enter number to progress it for prime:"; cin>>number; for(int i=2; i <= number/2 ; i++) { if(!(number%i)) counter++; } if (!counter) cout<<"\nnumber "<<number<<" is "<<"prime"; else cout<<"\nnumber "<<number<<" is Not "<<"prime"; getch(); return 0; }
یه راه دیگه هم هست
- باقی مانده عدد را بر تمامی اعداد کوچکتر از خود را حساب کند.
- اگر صفر شد متقیری را false کند در غیر اینصورت true کند.
Code
#include <iostream> using namespace std; int main() { bool is_prime=true; int num; cin>>num; for(int i=2;i<num;i++){ if(num%i==0) is_prime=false; } if(is_prime) cout<<"Your number is prime"<<endl; else cout<<"Your number isn't prime"<<endl; return 0; }
1
ممنون آقا فرهاد و آقا مرتضی هر دو اجرا میشه و به جوابم رسیدم ولی برای آقا مرتضی چون کوتاه تره بهتر میتونم به ذهن خواهر زادم فرو کنم