• 0
أحاسيس

سؤالين في c++

سؤال

السلام عليكم ورحمة الله وبركاته

كعادته القلق .. يقتل القلوب قبل اوانها .. :blush:

هذا الكود يطلب من المستخدم ادخال اي رقم والبرنامج يحدد او عدد زوجي او فردي ..

سؤلي .. كيف احصر عدد الاعداد الزوجية والفردية

كأن اقول :

الاعداد الفردية عددها = ؟؟؟

الاعداد الزوجية عددها = ؟؟


using namespace std;
int main()
{
int n;
int counter=0;
do
{
cout<<"enter uour number or -1 to exit\n";
cin>>n;
if(n%2==0)
cout<<"even\n";
else
cout<<"odd\n";
counter++;
}
while(n!=-1);

return 0;
}
#include <iostream>

سؤالي الثاني ..

في الفانكشن : الدوال

نقطتين فقط اريد ايضاحها ..

البارامتر وارجاع القيمة( return)

الارسال والاستقبال

على اساس تكون ولو فيه مثال بسيط ..

وهل عند نداء الدالة لا بد نضع في البارمتر قيمة ؟؟ ام نكتفي بنداء راس الدالة ؟؟

.

.

فهمي للفانكشن ضروري للخوض في المصفوفات .. :(

جزاكم الله خير ..

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

9 إجابة على هذا السؤال .

  • 0

وعليكم السلام ورحمة الله وبركاته .. ,

بالنسبة لسؤالك الأول .. بتحتاجين متغيرين .. واحد يحسب عدد الأعداد الزوجية والثاني للفردية .. ,

عند إدخال المستخدم الرقم , بيشيك عليه هل هو فردي أو زوجي .. و أيضاً بيزيد في العداد . يعني لو أدخل 3 راح يطبع له أنه عدد فردي .. و بيزيد عداد الأعداد الفردية بواحد ,

if(n%2==0)
{
cout<<"even\n";
counteven++;
}
else
{
cout<<"odd\n";
countodd++;
}

وبالأخير بعد ما يطلع من الـ loop راح تطبعين له عدد الأعداد الزوجية و عدد الاعداد الفردية .. ,

أتمنى يكون مفهوم ,

بالتوفيق يارب :happy: ..

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الله يجزاك خير ياااااااااااارب

طيب لو حبينا نسوي عليه الفانكشن كيف .. ويكون لوب كمان :blink:

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

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

#include <iostream>
using namespace std;
int main()
{
int n;
int countereven=0;
int counterodd=0;
do
{
cout<<"enter uour number or -1 to exit\n";
cin>>n;
if(n%2==0)
cout<<"even\n";
countereven++;
if(n%2!=0)
cout<<"odd\n";
counterodd++;
}
while(n!=-1);
cout<<"even="<<countereven;
cout<<"odd="<<counterodd;
return 0;
}

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

الخطأ في جملة الشرط .. لازم تضعين أقواس ..

لأن جواب الشرط أكثر من جملة :happy: ,

وبما أن عندك حالتين يعني يا فردي أو زوجي ما يحتاج تكتبين IF مرة ثانية .. تكتفين بكتابة ELSE

if(n%2==0)
{
cout<<"even\n";
countereven++;
}
else
{
cout<<"odd\n";
counterodd++;
}

تم تعديل بواسطه إشراقــه فجــر
1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

السلام عليكم.

هذا مثال لدالة.

#include <iostream>
using namespace std;

int even(int n)
{
return (n%2==0);
}

int main ( int argc , char* argv[] )
{
int n;
do{
cin>>n;
if(even(n)) cout<<"it is even.\n";
else cout<<"it's odd\n";
}while(n);

return 0;



}

وهذا شرح للدوال

1

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

جزاكم الله خير

بس اخ فهد شو معنى هالجملة ..

int main ( int argc , char* argv[] )

وياليت تفهموني النقطتين اللي ذكرت

سؤالي الثاني ..

في الفانكشن : الدوال

نقطتين فقط اريد ايضاحها ..

البارامتر وارجاع القيمة( return)

الارسال والاستقبال

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بالنسبة للدوال ,

على حسب عمل الدالة ..

يعني مثلاً لو كانت بتطبع بس .. ما تحتاجين ترسلين لها شي , تسوين إستدعاء لها , ونوعها راح يكون void ,

و أحياناً تحتاجين ترسلين قيم للدالة لكن ما ترجع (يعني مثلاً تجري عملية وتطبع الناتج ) فيكون نوعها void..

ويمكن تستقبل و ترجع فيكون نوعها نوع الراجع ..

أهم شي تفهمين المطلوب من الدالة فعله , واللي بتحتاجه !

موفقه :happy:

>>>>>>>>>>>>>

المعذرة أستاذ فهد للتو أنتبهت للرابط اللي حطيتيه :wink: .. ,

تم تعديل بواسطه إشراقــه فجــر
0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

#include <iostream>
using namespace std;

int fun1(int a,int b)
{
return a+b;
}

int fun2()
{
return (3+7);
}

void fun3()
{
cout<<"Text\n";
}


int main ( int argc , char* argv[] )
{
int s;
int t;
int f;
s=fun2()+1; //s=11
t=fun1(3,2); //t=5
//f=fun3(); //خطأ

cout<<s<<endl;
cout<<t<<endl;

return 0;



}

البارمتر هو متغيرات تطلبها الدالة .

اذا كنت اريد دالة تجمع عددين . سوف اطلب بارمترين وهما العددان المطلوب جمعهما مثل fun1

مامعني return : هي قيمة الدالة

مثلا fun1(3,5)

في الكود سوف يتم أستبدال fun1 بالرقم 8 والذي هو قيمتها

دالة void هذا يعني ان الدالة تنفذ أمر لكن لن ترجع قيمه !

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه
  • 0

بارك الله فيكم،،

أفدتمونا :)

0

شارك هذا الرد


رابط المشاركة
شارك الرد من خلال المواقع ادناه

  • يستعرض القسم حالياً   0 members

    لا يوجد أعضاء مسجلين يشاهدون هذه الصفحة .