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

التحويل من for loop الى function

بدأه N O R A في 6 مايو 2012 · 1 رد · 423 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

لدي برنامج مستخدم فيه for loop

#include<iostream.h>
void main()
{
	int i,num;
	cout<<"Enter a number:";
	cin>>num;
	for(i=1;i<=10;i++)
	{
		cout<<i<<" "<<"*"<<" "<<num<<" "<<"="<<" "<<i*num;
		cout<<"\n";
	}
}

أريد تحويله إلى function , هذه محاولتي وأتمنى الإفادة بصحتها وتصحيح الخطأ إن وجد

الـ output خرج بالمطلوب لكن أريد أتأكد من صحة الخطوات !

#include <iostream.h>
void printFunc(void);
void main()
{
	printFunc();
}
void printFunc(void)
{
	int i,num;
	cout<<"Enter a number:";
	cin>>num;
	for(i=1;i<=10;i++)
	{
		cout<<i<<" "<<"*"<<" "<<num<<" "<<"="<<" "<<i*num;
		cout<<"\n";
	}

	return ;
}
#2

تحويلك صحيح وسليم 100% ولا توجد به مشكلة. لكن الهدف والفائدة من الدّوال هي تقسيم الكود وفصل الوظيفة. في برنامجك الدالة الرئيسية لاتقوم بشيء أبداً, كل ماتقوم به أنها تستدعي دالة أخرى بها كُلّ شيء.

أليس من الأفضل أن تلغي الدالة printFunc وتنسخ محتوياتها للدالة الرئيسية main ؟.

الإستخدام الجيّد للدالة هو إستخدامها لفصل الوظائف. مثلاً في برنامجك, أحد الوظائف التي يقوم بها هو طباعة حاصل ضرب الرقم الذي أدخلة المسخدم بالأرقام من 1 إلى 10. إفصل هذه الوظيفة في دالة لوحدها وإجعل

الدالة الرئيسية هي التي تأخذ الرقم من المستخدم وتمرره للدالة الأخرى. مثال :

#include<iostream.h>

void print_func(int number) {

    int i;
    for( i = 1 ; i <= 10 ; i++ )
        cout << i << " * " << number << " = " << i * number << endl;
}

int main(void) {

    int number;
    cout << "Enter a number: ";
    cin  >> number;
    print_func(number);

    return(0);
}
1

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