الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مطلوب تصحيح كود..........

بدأه angel20 في 20 نوفمبر 2010 · 31 رد · 1,328 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

مرحبا

الكود ده منقول من قسم الجافا

الكود حولته الى C++

لكن الكود فيه خطأ

عند الRun لايظهر النتيجة....

#include<iostream.h>

void main()
  {
int i,x,Count=0,sum=0,j,c ;
double avg,A=0;
  for (j=1;j<=x;j++)
	{
c=0;
cout<<"Enter any number"<<endl ;
cin>>x ;

	for (i=1;i<=x;i++)
	{
   if (x%i==0)
   {
   Count++;
   }
	}
  if (Count==2 || Count==1)
   {


 sum=sum+x;
 A++ ;
   }

  avg =sum/A;

  }

   cout<<"avg";


}
1
#2

أنت استحدمت المتغير x في شرط حلقة التكرار For دون أن يكون لx قيمة مبدأية...

أيضا لا تنسى استخدام

using namespace std;

للكاءنات cin و cout

" إن الله كتب الإحسان على كل شيء"

::

الإرادة ... تحقق السيادة.

#3

بس هذه الجملة اخي ما اخذناها using namespace std;

يعني شو الحل اخي.....

تم تعديل هذه المشاركة بواسطة angel20 في 20 نوفمبر 2010 في 21:37

#4

يبدو أنك تستخدم iostream.h القديمة لذلك لا حاجة لـ using namespace std

أعطي قيمة مبدأية للمتغير x ، أو استخدم أو بدل for ب

do{



}while(conditions)

تم تعديل هذه المشاركة بواسطة A.S Hack في 20 نوفمبر 2010 في 21:41

" إن الله كتب الإحسان على كل شيء"

::

الإرادة ... تحقق السيادة.

#5

صحيح انا بستخدم برنامج j2sdk1.4.0

حتى اخي ال

ما اخذناها..

do{

}while(conditions)

تم تعديل هذه المشاركة بواسطة angel20 في 20 نوفمبر 2010 في 21:45

#6

رد عليك الأخ أحمد المتألق سابقا و لم نعرف هل فهمت الشرح أم لا !, عليك بمتابعة مواضيعك و الرد على كل من قدم لكِ المساعدة :)

هذا سبب يجعل الأعضاء ينفرون من مواضيعك !

======

ما هو هدف الكود !؟

تم تعديل هذه المشاركة بواسطة khaled_prg في 20 نوفمبر 2010 في 23:14

#7

اخي الكود اذا دخلت 10 ارقام يعمل على ايجاد متوسط كل عدد اولي.........

الكود منقول من قسم الجافا

اريد تعديله للسي بلس بلس

#8
اقتباس
اخي الكود اذا دخلت 10 ارقام يعمل على ايجاد متوسط كل عدد اولي.........

الكود منقول من قسم الجافا

اريد تعديله للسي بلس بلس

أخاف أن أعطيك الحل و تتجاهلينني !!! :P

======

اممممم .. جاري تحريك الجمجمة :)

#9

اخي انا مابدي تعطيني حل 016.gif

انا بدي تصحيح........

وكيف يعني اتجاهلتك.....

تم تعديل هذه المشاركة بواسطة angel20 في 20 نوفمبر 2010 في 23:44

#10
اقتباس
اخي انا مابدي تعطيني حل

انا بدي تصحيح........

أحيانا يكون التصحيح أصعب من كتابة الكود من جديد, خصوصا إذا كان الكود المُصحح غير مُوضح المعالم !

بالمناسبة ... هل درسستم الـ array !؟

اقتباس
اخي الكود اذا دخلت 10 ارقام يعمل على ايجاد متوسط كل عدد اولي

الأعداد المُدخلة هل هي أولية أم يجب التحقق في كل مرة !؟

#11

الحقيقة لا لسا احنا وصلنا للfor فقط

#12
اقتباس
وكيف يعني اتجاهلتك.....

تمام مثل ما حدث للأخ أحمد

اقتباس
الحقيقة لا لسا احنا وصلنا للfor فقط

أوكي .. راح أحاول مع أن الإمكانيات قليلة ....!

تم تعديل هذه المشاركة بواسطة khaled_prg في 20 نوفمبر 2010 في 23:51

#13

هو السؤال فقط يحسب الاعداد الاولية في النهاية

ليس في كل مرة يحسب ....في النهاية

الحقيقة انا ما تجاهلته

بس عشان عجئة العيد ماكان عندي وقت بعد ما الله يعطيه العافية شرح لي بالتفصيل

#14
اقتباس
هو السؤال فقط يحسب الاعداد الاولية في النهاية

ليس في كل مرة يحسب ....في النهاية

الأعداد المُخلة هي أعداد أولية أم ماذا !؟

#15

اخي الاعداد المدخلة اولي وغير اولي.......

اعداد صحيحة.......

#17

وانا اخي في الانتظار.......

#18

هذا الكود في حلة العيد :) :

#include<iostream.h>
main()
{
	 int j,k,n,sum=0,Variable_logique,A=0;
	 double avg;
	 for (j=1;j<=10;j++)
	 {
		  Variable_logique = 1;
		  cout<<"n = ";
		  cin>>n;
		  if(n>=0)
		  {
					 if(n==0||n==1)
					 continue;
					 else
					 {
						  for(k=2;k<n;k++)
						  if(n%k==0)
						  Variable_logique--;
						  if(Variable_logique==1)
						  {sum += n;A++;}
						  if(Variable_logique!=1)
						  continue;
					 }
		  }
		  if(n<0)
		  {
					if(n==2)
					{sum += n;A++;}
					else
					{
						 for(k=n+1;k<-1;k++)
						 if(n%k==0)
						 Variable_logique++;
						 if(Variable_logique==1)
						 {sum += n;A++;}
						 if(Variable_logique>1)
						 continue;
					}
		  }
	 }
	 avg =(float)sum/A;
	cout<<"avg = "<<avg<<endl;
	return 0;
}

بالتوفيق.

#19

مشكور اخي

khaled_prg

جاري تجربة الكود

والله يعطيك الف عافية......

مشكور اخي

بس انا وضعت الارقام من 1 الى 10

وطلع المتوسط 4.25

.

.

بس اخي لازم يطلع 3.6

لانو1و2و3و5و7 اعداد اولية

متوسطهم 3.6

تم تعديل هذه المشاركة بواسطة angel20 في 21 نوفمبر 2010 في 01:51

#20

تفضل:

#include <iostream>
using namespace std;

void main() 
  { 
		int x,count, number;
		double avg=0,A=0,sum=0; 
		cout<<"\nHow many numbers do you want insert?: " ; 
		cin>>x ;
	    for (int j=0; j<x; j++) 
        {	
			cout<<"\nInsert any number:";
			cin>>number;
			count=0;
			for (int i=1; i<=number; i++) 
			{ 
				if (number%i==0) 
				{ 
					count++; 
				} 
			} 
			if (count==2) 
			{ 
				sum=sum+number; 
				A++ ; 
			} 	   
		}
		avg =sum/A;
		cout<<avg; 
		system("pause");

}

بالتوفیق

>(

تم تعديل هذه المشاركة بواسطة u77431 في 21 نوفمبر 2010 في 01:46

#21

مشكورين على الحل

بس اخي

khaled_prg

بس انا وضعت الارقام من 1 الى 10

وطلع المتوسط 4.25

.

.

بس اخي لازم يطلع 3.6

لانو2و3و5و7 اعداد اولية

متوسطهم 3.6

تم تعديل هذه المشاركة بواسطة angel20 في 21 نوفمبر 2010 في 02:01

#22

1 لیس أول و لیس مرکب أیضا.

#23

اسفة على الخطأ

بس انا جربت الارقم من 1 الى 10

لازم الجواب يظهر 3.6 متوسط الاعداد الاولية

تم تعديل هذه المشاركة بواسطة angel20 في 21 نوفمبر 2010 في 02:03

#24
angel20 كتب:

اسفة على الخطأ

بس انا جربت الارقم من 1 الى 10

لازم الجواب يظهر 3.6 متوسط الاعداد الاولية

الاعداد الاولیة بین 1 إلی 10 هو:

2+3+5+7=17
17/4=4.25

فهو صحیح

#25

شكرا لك عل تنبيهي على خطئي اخي

u77431 مشكور الله يعطيك العافية....

وشكرا لاخي

khaled_prg

انا دائما بغلبو معي

الى الامام إن شاء الله...

موفقين جميعا...

مواضيع مشابهة