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

طلب من جميع اعضاء المنتدى وخاصه ابو فايز وHGB

مغلق
بدأه ibn_ali في 27 نوفمبر 2003 · 7 رد · 1,400 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

الاخ ابو فايز والاخ HGB السلام عليكم وكل عام وانتم وبخير

عندي رجاء خاص بشرح التالي :

مامعنى مثلا ان اكتب :

sum+=temp

انا فاهم الاختصار :

sum = sum+temp

لكن ابي المعنى كيف

السؤال الثاني :

مامعنى مثلا

char t[x]=0

ثالثا :

لو سمحتوا ابغى شرح مفصل عن الطبقه التالية لاني الصراحه غاشه من واحدوشكرا#include<iostream>#

using namespace std;

class rectangle

{

public:

void Setlength(int Length );

void Setwidth(int Width);

void Setcolor(char Color);

int Getlength();

int Getwidth();

char Getcolor();

int Getarea();

void print_length();

void print_width();

void print_color();

void print_area();

private:

int length;

int width;

char color;

int area();

};

void rectangle::Setlength(int Length)

{length=Length;}

void rectangle::Setwidth(int Width )

{width=Width;}

void rectangle::Setcolor(char Color)

{color=Color;} /*End Set*/

int rectangle::Getlength()

{return length;}

int rectangle::Getwidth()

{return width;}

char rectangle::Getcolor()

{return color;}

int rectangle::Getarea()

{return rectangle::area();} /*End Get*/

void rectangle::print_length()

{cout<<"Length is= "<<rectangle::Getlength();}

void rectangle::print_width()

{cout<<"\nWidth is= "<<rectangle::Getwidth();}

void rectangle::print_color()

{cout<<"\nColor is "<<rectangle::Getcolor();}

void rectangle::print_area()

{cout<<"\nArea is= "<<rectangle::Getarea();

cout<<"\n";} /*End Print*/

int rectangle::area()

{return (length*width);}

/*End Defind*/

/*-----------------------------------------------------------------------------*/

int main()

{

int Length,Width;

char Color;

rectangle rec;

cout<<"Enter Length \n";

cin>>Length;

cout<<"Enter Width \n";

cin>>Width;

cout<<"Entter Color \n";

cin>>Color;

rec.Setlength(Length);

rec.Setwidth(Width);

rec.Setcolor(Color);

rec.print_length();

rec.print_width();

rec.print_color();

rec.print_area();

return 0;

}

رابعا واخير ا: انا اشتريت كتاب c++ how to programe

وارجو اني ماكون اطلت عليكم .

واسف على الازعاج

وشكرا

ابــــــــــــــــــــــــــــــــــــن علـــــــــــــــــــــــــــــــــــي

#2

تتمة الموضوع ....................................ز

وبعد ان قمت بشراء هذا الكتاب وجدت انه يحتوي على معلومات كثيره وانا امتحاناتي على الابواب فما ادري مافضل طريقه للتعامل مع هذا الكتاب .

وشكرا

#3

السلام عليكم ,,,

أهلا أخي العزيز bin ali ,,

بانسبة لسؤالك الاول ,, كما فهمت ,,

فمعنى اعامل sum +=temp هو نفسه sum = sum + temp ,,,

والسي++ لغة اختصارات .. بها بعض الاشياء الاخرى كهذه ,,مثلا sum++ وغيرها ,,

أم هل تقصد معناها الحرفي ؟؟

........................................

أما بالنسبة لسؤالك الثاني فلفهمه فيجب تغيير صيغته الى :

لماذا لايعمل الامر التالي char t[x]=0 ??

نعلم أولا أننا نمرر عدد int الى char ... وهذا خطأ لايمكن أن نمرر int الى char ...

فعندها يجب أن يكون الامر كالتالي ...

"char t[x] ="0 بين العلامتين " " ..

في هذه الحالة ستصبح " 0 " عبارة عن الحرف 0 وليس الرقم 0 ....هذا أمر ,,

أما اذا قلنا

'char t[x] ='0 ,, فهذا الأمر لن يعمل مع أن العلامة ' ' أيضا معناها مثل " " لكن الاولى ثابت والثانية متغير ,, لن أدخل في التفصيل فهو معقد نوعا ما .. الا اذا أردت ذلك ,,

.................................

أما اجابة سؤالك الثاني فسأجيبك اليوم لكن مساء فانا مشغول جدا الان .. فقط أمهلني قليلا لأن السؤال طويل قليلا ...

...............................

أما بالنسبة للكتاب .. فالى أي مدى وصلتم في الدراسة وسأعطيك الاشياء التي يجب أن تركز عليها ... ووفقك الله ,,,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#4

السلام عليكم,

لا أعلم ما هو السياق الذي جاء فيه هذا السؤال ولكن أريد أن أضيف بعض الأشياء التي ربما يكون لها نفع ما.

حين نتعامل مع المعطيات مثل char int وغيرها فيمكن أن نمزج بينها ولكن يجب أن نعرف ماذا نريد وفي غالب الأحيان الكمبايلر يعطينا إنذار وهو في الحقيقة سيعمل Cast دائما لصالح الأصغر فكما جاء سابقا يمكن أن نكتب

char x=0 فإذا كان العدد أقل من قيمة char فهذا لن يسبب لنا مشكلا أما إذا كان العدد يشمل على word أو أكثر فالكاست يعمل كالتالي حيث أنه سيأخذ Low Byte للقيمة وهذا سيسبب لنا ضياعا للبقية.

وإلى اللقاء

#5

شكرا جزيلا لكل من ساهم ولتفاعل الاخ HGB واسال الله عز وجل ان يوفقك

اما بالنسبه للمواضيع التي اخذنا فهي من كتاب تعلم لغة سي بلس بلس في 21 يوم

وهي

انشاء برنامج بسيط في اللغه

الثاني : اجزاء برنامج سي بلس بلس

الثالث: هو المتغيرا ت والثوابت

الرابع : التعبيرات والعبارات

الخامس :الاجراءات (الدواتل)

السادس :الطبقات الاساسيه

السابع :

عبارات التحكم

اخ HGB مالاحظته عليك ماشا الله انك مميز في هذه اللغه فالرجاء الا تبخل علينا بالنصائح التي تساعدونا على بلوغ مابلغت

وارجو اني ماكون اثقلت وشكرا .

ابــــــــــــــــــــــــــــــــن عـــــــــــــــــــــلــــــــــــــــــــــــــــــي

#6

السلام عليكم ,,,

أخي العزيز ibn ali ,, بالنسبة للمنهج الذي لديكم من الواضح أنها الاساسيات ,,

والاساسيات كلها مهمة ,, لذا يصعب تحديد شيء للتركيز عليه ,,,

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

الرابع ستستخدمها ي أغلب البرامج التي تكتبها .. حيث تكمن فيها قوة البرمجة وتعطي روح التحكم للبرنامج ,,,

الخامس ,,, مهم لتنظيم البرامج وجعله متناسقا أكثر , ولايمكن الاستغناء عنها عندما يبدأ البرنامج بتنفيذ عدة خطوات ومهام أكثر ,, وبها بعض الامو تحتاج لتركيز مثل قيم الاعادة return وأنواع الدوال والتمرير بالبارمترات ,,,

السادس مهم أكثر عندما تصبح البرامج ضخمة بشكل لاتقدر معه الدوال بحل مشكلة كثرة الاجراءات ,, وهي كما تدعى في بعض الكتب "الفئات " classes ,, وهي أساس البرمجة كائنية المنحى ,,, حاول أن تفهما بشكل جيد لأننا سندخل في شرح لها مفصل "غالبا يوم غد أو بعده " ,, ولكي تتعلم C# في المستقبل أو حتى أي لغة في منصة الدت نت يجب أن تكون ملما بالفئات بشكل جيد , فقد أبحت أساس منصة الدوت نت ,,,

........................

أخيرا لكي تطور مستواك بشكل فعال فقط حاول أن تقرأ الكتاب الذي لديك وافهمه جيدا ,, ثم انتقل لكتاب أكثر شمولية يمكن أن أنصحك بكتاب " الدليل الكامل ل سي++" وهو رائع جدا ,,,

وبالطبع عليك بمحاولة حل مشاكل الاخرين فهي من أكثر مايعلم البرمجة الجيدة ,,,

وعليك بقراءة الكثير من البرامج الجاهزة ,,

أخيرا تواصل معنا واسأل كلما وقفت في وجهك مشكلة وستجدنا تحت الخدمة ,,,

........................

بالنسبة لشرح الفئة التي سألت عنها سابقا وعدتك بأن أجيب اليوم لكن تأتي الرياح بما لاتشتهي السفن سأجيبك غدا ,,, :)

ووفقك الله ,,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

#7

شكرا الف شكر لك اخ HGB ووالله ادعو لك من كل قلبي للتوفيق واشكر ايضا كل من ساهم

ابـــــــــــــــــــــــــــن عــــــــــــــــــــــــلــــــــــــــــــــــــي

#8

السلام عليكم ,,,

أخي الكريم ibn ali ,,,

توجد في الفئة التي ذكرت 3 دوال ,, كل واحدة نمرر لها وسيط واحد فتقوم بتخزينه في مكان المتغير الاصلي الذي في الفئة ,,, لاحظ أنه توجد 3 متغيرات في الفئة وهي

int length;

int width;

char color;

الدوال التي نستدعيها لنغير هذه القيم

void Setlength(int Length );

void Setwidth(int Width);

void Setcolor(char Color);

يمكن أن نغير القيم دون الحاجة لاستدعاء الدوال بطريقة أخرى ,,,

توجد 4دوال أخرى نستدعيها لنحصل على القيم أيضا التي في الفئة " كما قلت توجد 3 قيم فقط في الفئة ",,,

int Getlength();

int Getwidth();

char Getcolor();

الدالة الرابعة للحصول على نتيجة ضرب الطول في العرض وهي

int Getarea();

وهذه الدالة فقط تستدعي الدالة

int area();

حيث بها العملية الحقيقية لضرب الطول في العرض ,,,

أخيرا توجد 4 دوال لعملية الطباعة على الشاشة وهي

void print_length();

void print_width();

void print_color();

void print_area();

كل ماتقوم به هو وضع الدوال Get بعد الامر cout لتتم طباعة القيم ,,,

.,..................................ز

يستحيل شرح الفئة كلها لتفهم من مرة واحدة ,,,, أعلم أنه يوجد الكثير من علامات الاستفهام لديك مثل مذا تعني private و public الموجودة في الفئة ,؟؟

لايمكن أنتجد الاجابة الا اذا فهمت بعض الامور قبل ذلك ,, لذا سنبدأ يوم غد باذن الله في سلسلة دروس الفئات وسأحاول بقدر المستطاع أن يكون الشرح مبسطا ليفهمه الجميع ,,,

ووفقك الله ,,,

banner_60_468.gif

NOTHING IS IMPOSSIBLE

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

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…