تا %60 تخفیف خرید برای 2 نفر با صدور مدرک فقط تا
00 00 00
محمد

اعدا اول در c++

سلام و خسته نباشید.

سوالی داشتم راجبع سورس کد زیر :

#include <iostream>
#include <math.h>
using namespace std;
int main()
{
	int jazr , i , num ,z;
	cout<<"Enter Number : ";
	cin>>num;
	jazr = (sqrt(num));
	for(i=1;i<=num;i++)
	if(num % i == 1 )
	cout<<"Avla";
	else
	cout<<"No Aval";
return 0;
}

این سورسی که نوشتم قرار عددی رو که وارد می کنی بفهمه اوله یا نه. ولی نمی دونم چرا کار نمی کنه.

ممنون میشم یک توضیحی بدید.

یا حق

لذت یادگیری با توسینسو
به عنوان شخصی که مدت هاست از سایت توسینسو استفاده می کنم باید بگم که واقعاً یکی از بهترین مرجع ها برای ارتقاء دانش شخصی هست. دوره های سایت، راهکارها و مطالب، همگی عالی هستند.

کد شما اشتبا هستش

شما عدد از ورودی می گیرید می ریزید تو n

عددی که از ورودی گرفتید یک for میزنید از 1 تا عدد n

بعد باقیمانده تقصیم عدد n را به ترتیب به گام های حلقه چک می کنیم هرجا باقیمانده 0 بود یکی به متغییر m اضافه می کنیم در آخر

اگر m=2 بود عدد را چاپ می کنیم

چرا 2 چون عدد اول فقط بر خودش و یک باقیماندش 0 می شه

#include <iostream> 
#include <math.h> 
using namespace std; 
int main() 
{ 
int m, i , n; 
cout<<"Enter Number : "; 
cin>>n; 
for(i=1;i<=n;i++) 
{
if(n % i == 0 ) 
m+=1
}
if (m==2) cout<<n;
return 0; 

مدرس رسمی کمپانی میکروتیک
محمد

پس یعنی متغییر m این جا داره میشمره که از بین این تقسیم ها چه تعداد باقی مانده مونده که اگه دوتا بود (یعنی 0 و خود عدد) نشون دهنده ی اول بودنش هست !. ولی بعدش من میزنم که چاپ کنه اوله مقدار اول نیست رو بر میگردونه : مثال عدد 11

#include <iostream>
using namespace std;
int main()
{
	int m,i,n;
	cout<<"Number : ";
	cin>>n;
	for(i=1;i<=n;i++)
	if(n % i == 0)
	m+=1;
	if(m == 2)
	cout<<"Aval";
	else
	cout<<"No";
	return 0;
}
محمد

ممنون میشم راهنمایی کنید.

اها خوب من در آخر خود عدد رو خروجی دادم بجاش یک متن خروجی بده که بزنه عدد اول است مثل کد پایین

#include <iostream> 
#include <math.h> 
using namespace std; 
int main() 
{ 
int m, i , n; 
cout<<"Enter Number : "; 
cin>>n; 
for(i=1;i<=n;i++) 
{
if(n % i == 0 ) 
m+=1
}
 if(m == 2)
      cout<<" Aval";
    else
    cout<<"No";
return 0; 
مدرس رسمی کمپانی میکروتیک
محمد

......................

متغییر m رو که تعداد باقی مانده 0 رو می شماره رو زمان تعریف متغییر 0 قرار دهید

#include <iostream> 
#include <math.h> 
using namespace std; 
int main() 
{ 
int m=0, i , n; 
cout<<"Enter Number : "; 
cin>>n; 
for(i=1;i<=n;i++) 
{
if(n % i == 0 ) 
m+=1
}
 if(m == 2)
      cout<<" Aval";
    else
    cout<<"No";
return 0; 
مدرس رسمی کمپانی میکروتیک
پاسخ شما
برای ارسال پاسخ خود وارد شوید.