هههههههههههههه حلي يشبه حلك بس يعتبر البرنامج غلط لانك لو ادخلت 9 حيقولك انو prim بس ال 9 ليست prim وعشان كذا انت تحتاج حلقت لوب اتركم مع الحل :
#include <stdio.h>
int main(void)
{
int num , i;
int c = 0;
printf(" Enter a number : ");
scanf("%d",&num);
if (num > 1 ) {
for ( i = 1 ; i <= num ; i++)
{
if (num % i != 0)
c++;
}
if (c> 2)
printf("Not Prime \n");
else
printf("Is prime \n");
return 0;
}
}
العداد الي في الحل يحسب عدد مرات القسمه للعدد المدخل
واحنا نعرف انو الاعداد الاوليه لها عمليتاين قسمه الاولى على نفسها والثانيه على الواحد
الي قهرني انو وانا احل عارف انو في شي ناقص وطلعت حلقت الوب
تحياتي للجميع انشاء تستفيدوا من الحل
|
حل جميل بس انا الى الآن ماني قادر ابلع اللوب ابدا مدري ليش
بالنسبة لملاحظتك على برنامجي كان صحيح بس برضو عندي حل بدون لوب
جرب الكود هذا وبصراحة اشكرك على التصحيح
كود:
#include <stdio.h>
int is_prime(int n)
{
int p,c,o,f;
f = n %5 ;
p = n %2 ;
o = n %3 ;
if(p==1 && o== 1)
c=1;
else if(n==5)
c=1;
else if (f==0)
c=0;
else if(n==2)
c=1;
else
c=0;
return c;
}
int main(void)
{
int n;
int p;
printf("enter a number \n");
scanf("%d",&n);
p = is_prime(n);
if (p == 1)
printf("the number is prime \n");
else
printf("the number is not prime \n");
return(0);
}
}