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

ارجو المساعده

مغلق
بدأه لووولوووو في 7 مايو 2005 · 4 رد · 580 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

مرحبا :

كيفكم يا مبرميجين لولاالله و لولاكم انتو ما كنا افهمنا البرمجه ودايما اسئلتنا كتيره وبنتشكركم كتير علي تعبكم معنا

انا معليش بدي اياكم اتسعدوني في فهم هاالبرنامج انا لسه كيف هلأ درسة السي ++ وعندي هالبرنامج في نقطه مش فهما فيه فيؤيت افهموني اياه وهذا هو البرنامج:

اكتب برنامج يقوم باستخدام داله تستخدم المؤشرات للبحت عن عنوان رقم صحيح معطي في مصفوفه معطاة.اذا وجد الرقم المعطي,تعيد الالة عنوان والا فتعيد null

البرنامج:

int*location (int a[], int n, int target)

{

for (int i;i<n;i++)

if (a==target)

return &a;

return NULL;

}

main()

{

int a[8]={22,33,44,55,66,77,88,99},*p,n;

do {

cin>>n;

if (p=location (a,8,n))

cout<<p<<","<<*p<<endl;

else

cout<<n<<"was not found.\n";

}

while(n>0);

}

فأنا مش فهما الخطوه اللي في if (p=location (a,8,n)) يعني في عملية التنفيد شو هطعتي النتيجه في هاي الخطوه

معليش انا عارفه انو السؤال سهل بس انا ليسه هلأ بس واخده الدوال فهمي فيهم بسيط هي والمؤشرات وبكون شاكره الليكم كتير

#2

مرحبا:

انا لهلأما رد عليا حدا معليش يريت اتفهموني اياها

وشكرا

#3

بسم الله الرحمن الرحيم

السلام عليكم

أولا بالنسبة للكود دة هو عبارة عن جزئين

function تسمى location وهى من النوع int ويتم أرسال اليها ثلاث أشياء هم

الarray ودة متمثل فى int a[]

والثانى عدد عناصر الarray

int n

والثالث الرقم المراد البحث عنة target

داخل الدالة يوجد for loop حيث ان الميغير i لازم يكون معمول لة initalize بصفر

ثم نهاية الloop عند نهاية الarray أو وجود العنصر المراد البحث عنة

ثم عمل condition لاختبار وجود العنصر أم لا

فى حالة وجودة وبالتالى يعمل return للadderess بتاع هذا المتغير

وبالتالى رجوع هذا الadderess فى المتغير p المعرف على انة مؤشر حتى يستطسع تخزين فية الadderess المبعوت من الدالة location

وأيضا فى حالة عدم وجودة يرجع null اى false

و

فى الmain function

عرف array ثابتة بعدد 8 وعناصرها هم 22,33,44,55,66,77,88,99

ثم عرف pointer من النوع int علشان يرجع قيمة الreturn فية

وn المتغير المراد البحث عنة

ثم طلب من المستخدم أن يدخل القيمة

و

الconditon دة يختبر اللى راجع من الدالة true or false

فى حالة الtrue يعنى وجود المتغير n فى الarray ورجوع قيمة من الدالة (أى قيمة أى الadderess بتاع الn )

وبالتالى ليست null أى ليست false أو null وبالتالى ف حالة تحقيق الشرط ووجود العنصر وأرجاع لقيمتة ال adderess

وبالتالى يطبع الرقم والعنوان بتاعة وف حالة عدم وجودة أى ان الدالة ترجع null or false وبالتالى يطبع خطأ

 #include <iostream>
int *location (int a[], int n, int target)
{
for (int i=0;i<n;i++)
if (a==target)
return &a;
return NULL;
}
main()
{
int a[8]={22,33,44,55,66,77,88,99},*p,n;
do {
cin>>n;
if (p=location (a,8,n))
cout<<p<<","<<*p<<endl;
else
cout<<n<<"was not found.\n";
}
while(n>0);
}

وارجو وضعة بين علمتين التاجات بتاعت الcode علشان يسهل على أى عضو قرأتةوفهمة بسهولة ويسر

Muhammad Allam

Computer Science

@Resource(MappedURL="My Blog" )

#4

مرحبا:

شكرا اليك كتير يا استاذ تسلم انت شرحتلي الداله كلها تسلم وانا فهمتها وشكرا كتير اليك :rolleyes:

#5

اشكرك على مرورك وياريت بلاش كلمة استاذ دى :(

أحسن انت بتحسسنى بانا كبير جدا فى السن ياسيدى بدون كلمة استاذ احسن وأفضل

Muhammad Allam

Computer Science

@Resource(MappedURL="My Blog" )

هذا الموضوع مغلق.

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