#جديد
تعلم برمجة بايثون باستخدام ChatGPT | Udemy
2.5 ساعة • 32 محاضرة
⏳ 929 استخدامًا متبقيًا للكوبون ⚠️
📶 التقييم: 4.5 ⭐️ (39 تقييمًا)
📅 آخر تحديث: 24/11
🎓 المدرب: دكتور عبد القادر رباني
✅ رابط الدورة هنا 👇
https://t.co/uJIUnQgysi
#لغات_البرمجة
أعجبك الموضوع شاركه مع أصدقائك👩💻
⬅️ إضغط هنا لمشاركة القناة مع اصدقائك ➡️
@coursaty4you
😍 وأهلاً وسهلاً بجميع المبرمجين 💝
#لغات_البرمجة
تعلم برمجة بايثون باستخدام ChatGPT | Udemy
تعلم برمجة بايثون بسرعة باستخدام ChatGPT | برامج بدون برمجة باستخدام ChatGPT + Python | برامج استخراج البيانات من الويب + واجهة المستخدم الرسومية
2.5 ساعة • 32 محاضرة
⏳ 929 استخدامًا متبقيًا للكوبون ⚠️
📶 التقييم: 4.5 ⭐️ (39 تقييمًا)
📅 آخر تحديث: 24/11
🎓 المدرب: دكتور عبد القادر رباني
✅ رابط الدورة هنا 👇
https://t.co/uJIUnQgysi
#لغات_البرمجة
أعجبك الموضوع شاركه مع أصدقائك👩💻
⬅️ إضغط هنا لمشاركة القناة مع اصدقائك ➡️
@coursaty4you
😍 وأهلاً وسهلاً بجميع المبرمجين 💝
#لغات_البرمجة
👍4
1. الكلمات المفتاحية (Keywords)
✅ ما هي الكلمات المفتاحية؟
▪︎الكلمات المفتاحية هي كلمات محجوزة (Reserved Words) في لغة C++، ولها معاني محددة ومهام معينة.
▪︎لا يمكن استخدامها كأسماء متغيرات أو دوال أو أي عناصر أخرى في البرنامج.
🔸️ أمثلة على الكلمات المفتاحية في C++
✔ الشروط والمتحكمات Control Flow:
✔ أنواع البيانات:
✔ البرمجة الكائنية:
✔ التعديلات (الثوابت):
✔ الاستثناءات:
🔸️ ملاحظات:
• الكلمات المفتاحية تكون دائمًا بأحرف صغيرة (Lowercase).
• لا يمكن تغيير معنى الكلمات المفتاحية أو استخدامها لأغراض أخرى.
✅ ما هي الكلمات المفتاحية؟
▪︎الكلمات المفتاحية هي كلمات محجوزة (Reserved Words) في لغة C++، ولها معاني محددة ومهام معينة.
▪︎لا يمكن استخدامها كأسماء متغيرات أو دوال أو أي عناصر أخرى في البرنامج.
🔸️ أمثلة على الكلمات المفتاحية في C++
✔ الشروط والمتحكمات Control Flow:
if, else, switch, case, default,
while, do, for, break, continue, return
✔ أنواع البيانات:
int, float, double, char, bool, void
✔ البرمجة الكائنية:
class, struct, public, private, protected, new, delete, this.
✔ التعديلات (الثوابت):
const, static, volatile, mutable
✔ الاستثناءات:
try, catch, throw.
🔸️ ملاحظات:
• الكلمات المفتاحية تكون دائمًا بأحرف صغيرة (Lowercase).
• لا يمكن تغيير معنى الكلمات المفتاحية أو استخدامها لأغراض أخرى.
❤5👍1
2. المعرفات (Identifiers)
✅ ما هي المعرفات (Identifiers)؟
▪︎ المعرفات هي أسماء يُعرف بها المبرمج العناصر المختلفة في البرنامج مثل المتغيرات، الدوال، الكلاسات، الكائنات، وغيرها.
▪︎ يجب أن تتبع المعرفات قواعد معينة في التسمية.
🔮 قواعد تسمية المعرفات:
1 - تبدأ بحرف أو شرطة سفلية (_):
✅ كتابة صحيحة: 👇
❌ كتابة خاطئة:👇
2 - يمكن أن تحتوي على أحرف، أرقام، وشرطة سفلية (_):
✅ كتابة صحيحة: 👇
❌ كتابة خاطئة: 👇
3️⃣ لا يمكن أن تحتوي على مسافات أو رموز خاصة:
✅ كتابة صحيحة : 👇
❌ كتابة خاطئة: 👇
4️⃣ لا يمكن أن تكون كلمة مفتاحية:
✅ كتابة صحيحة : 👇
❌ كتابة خاطئة : 👇
5️⃣ حساسة لحالة الأحرف (Case-Sensitive):
• Name و name يعتبران كتابتين مختلفتين.
🔸️ أمثلة على الكتابة الصحيحة:
🔸️ أمثلة على الكتابة غير الصحيحة:
▪︎ 1stPlace (يبدأ برقم).
▪︎ my-name (يحتوي على رمز خاص).
▪︎ int (كلمة مفتاحية).
3. الفرق بين الكلمات المفتاحية والمعرفات
🔸️ الميزة : الغرض
• الكلمات المفتاحية (Keywords) : لها معنى محدد في اللغة.
• المعرفات (Identifiers) : تُستخدم لتسمية العناصر في البرنامج.
🔸️ الميزة : التعديل
• الكلمات المفتاحية (Keywords) : لا يمكن تغييرها أو استخدامها كمعرف.
• المعرفات (Identifiers) : يمكن تعريفها من قبل المبرمج.
🔸️ الميزة : الأحرف
• الكلمات المفتاحية (Keywords) : دائمًا بأحرف صغيرة.
• المعرفات (Identifiers) : يمكن أن تحتوي على أحرف كبيرة وصغيرة.
🔸️ الميزة : الأمثلة
• الكلمات المفتاحية (Keywords) : int, if, return, class
• المعرفات (Identifiers) : age, totalScore, calculateArea
4. نصائح لاختيار Identifiers
🔹️ استخدام أسماء ذات معنى:
• اختر أسماء تعبر عن الغرض من المتغير أو الدالة.
• مثال: totalScore أفضل من ts
🔹️ استخدام تنسيق متسق:
• يمكن استخدام CamelCase
(مثل firstName) أو snake_case (مثل first_name).
🔹️ تجنب الأسماء الغامضة:
• مثال: x, y, temp قد تكون غامضة، بينما width, height, area أكثر وضوحًا.
🔹️ عدم البدء بشرطة سفلية مزدوجة (__):
• الأسماء التي تبدأ بشرطة سفلية مزدوجة محجوزة للاستخدام الداخلي في اللغة.
5. أمثلة عملية لإستخدام المعرفات مع المتغيرات والدوال
🔸️ مثال 1: استخدام المعرفات في تعريف المتغيرات
🔸️ مثال 2: استخدام المعرفات في تعريف الدوال
6. الخلاصة العامة
🔹️ الكلمات المفتاحية: كلمات محجوزة في اللغة ولا يمكن استخدامها كمعرف.
🔸️ المعرفات : أسماء يُعرف بها المبرمج العناصر في البرنامج، ويجب أن تتبع قواعد تسمية محددة.
🔹️ اختيار أسماء ذات معنى للمعرف يجعل الكود أكثر قابلية للقراءة والصيانة.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الخامس_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
✅ ما هي المعرفات (Identifiers)؟
▪︎ المعرفات هي أسماء يُعرف بها المبرمج العناصر المختلفة في البرنامج مثل المتغيرات، الدوال، الكلاسات، الكائنات، وغيرها.
▪︎ يجب أن تتبع المعرفات قواعد معينة في التسمية.
🔮 قواعد تسمية المعرفات:
1 - تبدأ بحرف أو شرطة سفلية (_):
✅ كتابة صحيحة: 👇
name, _age, totalScore.
❌ كتابة خاطئة:👇
1name, @age.
2 - يمكن أن تحتوي على أحرف، أرقام، وشرطة سفلية (_):
✅ كتابة صحيحة: 👇
user_name, score1, total_amount
❌ كتابة خاطئة: 👇
user-name, total$amount.
3️⃣ لا يمكن أن تحتوي على مسافات أو رموز خاصة:
✅ كتابة صحيحة : 👇
firstName, lastName.
❌ كتابة خاطئة: 👇
first name, last-name.
4️⃣ لا يمكن أن تكون كلمة مفتاحية:
✅ كتابة صحيحة : 👇
myClass, calculateSum
❌ كتابة خاطئة : 👇
int, class.
5️⃣ حساسة لحالة الأحرف (Case-Sensitive):
• Name و name يعتبران كتابتين مختلفتين.
🔸️ أمثلة على الكتابة الصحيحة:
age, totalScore, _count, MAX_VALUE, calculateArea.
🔸️ أمثلة على الكتابة غير الصحيحة:
▪︎ 1stPlace (يبدأ برقم).
▪︎ my-name (يحتوي على رمز خاص).
▪︎ int (كلمة مفتاحية).
3. الفرق بين الكلمات المفتاحية والمعرفات
🔸️ الميزة : الغرض
• الكلمات المفتاحية (Keywords) : لها معنى محدد في اللغة.
• المعرفات (Identifiers) : تُستخدم لتسمية العناصر في البرنامج.
🔸️ الميزة : التعديل
• الكلمات المفتاحية (Keywords) : لا يمكن تغييرها أو استخدامها كمعرف.
• المعرفات (Identifiers) : يمكن تعريفها من قبل المبرمج.
🔸️ الميزة : الأحرف
• الكلمات المفتاحية (Keywords) : دائمًا بأحرف صغيرة.
• المعرفات (Identifiers) : يمكن أن تحتوي على أحرف كبيرة وصغيرة.
🔸️ الميزة : الأمثلة
• الكلمات المفتاحية (Keywords) : int, if, return, class
• المعرفات (Identifiers) : age, totalScore, calculateArea
4. نصائح لاختيار Identifiers
🔹️ استخدام أسماء ذات معنى:
• اختر أسماء تعبر عن الغرض من المتغير أو الدالة.
• مثال: totalScore أفضل من ts
🔹️ استخدام تنسيق متسق:
• يمكن استخدام CamelCase
(مثل firstName) أو snake_case (مثل first_name).
🔹️ تجنب الأسماء الغامضة:
• مثال: x, y, temp قد تكون غامضة، بينما width, height, area أكثر وضوحًا.
🔹️ عدم البدء بشرطة سفلية مزدوجة (__):
• الأسماء التي تبدأ بشرطة سفلية مزدوجة محجوزة للاستخدام الداخلي في اللغة.
5. أمثلة عملية لإستخدام المعرفات مع المتغيرات والدوال
🔸️ مثال 1: استخدام المعرفات في تعريف المتغيرات
#include <iostream>
using namespace std;
int main() {
int age = 25; // "age" معرف
double totalScore = 95.5; // "totalScore" معرف
string firstName = "Ali"; // "firstName" معرف
cout << "Name: " << firstName << ", Age: " << age << ", Score: " << totalScore << endl;
return 0;
}
🔸️ مثال 2: استخدام المعرفات في تعريف الدوال
#include <iostream>
using namespace std;
// "calculateArea" معرف للدالة
double calculateArea(double width, double height) {
return width * height;
}
int main() {
double area = calculateArea(5.0, 10.0); // "area" معرف
cout << "Area: " << area << endl;
return 0;
}
6. الخلاصة العامة
🔹️ الكلمات المفتاحية: كلمات محجوزة في اللغة ولا يمكن استخدامها كمعرف.
🔸️ المعرفات : أسماء يُعرف بها المبرمج العناصر في البرنامج، ويجب أن تتبع قواعد تسمية محددة.
🔹️ اختيار أسماء ذات معنى للمعرف يجعل الكود أكثر قابلية للقراءة والصيانة.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الخامس_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
👍5❤1
Forwarded from 🎨 Canva For Ever 🖼
💝 CANVA PRO INVITE LINK | New LINK 2025🥰
🟢 LINK 👉 : https://t.co/mo2zyf1rh8
❤ ENJOY Your Canva Pro 💚
Canva Pro new link on 100 Like with "❤💙" Or " 👍"
#canva
#canvapro
#canvaprofree
#canvafree
#canva4ever
#canva4you
#canva_pro
#design #canvadesign #art #graphicdesign #marketing #logo #graphicdesigner #photoshop #designer
👑 Can I get 50 stars ⭐ here guys... I want stars 🌟🌟🌟
🔀 Share here Canva4ever
🤴👸 Thanks all members ❤💜
🟢 LINK 👉 : https://t.co/mo2zyf1rh8
❤ ENJOY Your Canva Pro 💚
Canva Pro new link on 100 Like with "❤💙" Or " 👍"
#canva
#canvapro
#canvaprofree
#canvafree
#canva4ever
#canva4you
#canva_pro
#design #canvadesign #art #graphicdesign #marketing #logo #graphicdesigner #photoshop #designer
👑 Can I get 50 stars ⭐ here guys... I want stars 🌟🌟🌟
🔀 Share here Canva4ever
🤴👸 Thanks all members ❤💜
👍2
1. ما هي المتغيرات (Variables)؟
🔸️ المتغيرات هي أماكن في الذاكرة تُستخدم لتخزين البيانات أثناء تنفيذ البرنامج.
▪︎ لكل متغير:
• اسم (Identifier): يُستخدم للوصول إلى البيانات المخزنة.
• نوع (Data Type): يحدد نوع البيانات التي يمكن تخزينها (مثل أعداد صحيحة، أعداد عشرية، نصوص، إلخ).
• قيمة (Value): البيانات الفعلية المخزنة في المتغير.
2. تعريف المتغيرات في C++
🔹️ صيغة تعريف المتغير:
أو مع تعيين قيمة ابتدائية:
🔰 أمثلة:
3. أنواع البيانات الأساسية في C++
🔸️ النوع : int
• الوصف : أعداد صحيحة
• الحجم (بايت) : 4
• المجال : من -2,147,483,648 إلى 2,147,483,647
🔹️ النوع : float
• الوصف : أعداد عشرية (فاصلة عائمة)
• الحجم (بايت) : 4
• المجال : حوالي 7 أرقام عشرية
🔸️ النوع : double
• الوصف : أعداد عشرية بدقة أعلى
• الحجم (بايت) : 8
• المجال : حوالي 15 رقمًا عشريًا
🔹️ النوع : char
• الوصف : حرف واحد
• الحجم (بايت) : 1
• المجال : من -128 إلى 127 أو 0 إلى 255
🔸️ النوع : bool
• الوصف : قيمة منطقية (صحيح أو خطأ)
• الحجم (بايت) : 1
• المجال : true أو false
🔹️ النوع : string
• الوصف : سلسلة نصية (نص)
• الحجم (بايت) : متغير
• المجال : يعتمد على طول النص
4. إستخدام المتغيرات في لغة C++
🔰 أمثلة عملية:
🔮 مثال 1: تعريف وتعيين قيم للمتغيرات
🔮 مثال 2 : تعديل قيم المتغيرات
🔮 مثال 3 : العمليات الحسابية باستخدام المتغيرات
5. نصائح لاستخدام المتغيرات
1️⃣ اختيار أسماء ذات معنى:
▪︎ مثال: totalScore أفضل من ts
2️⃣ تهيئة المتغيرات عند تعريفها:
▪︎ مثال: int age = 0; بدلاً من int age;
3️⃣ تجنب استخدام أسماء متشابهة:
▪︎ مثال: firstName و first_name قد يسببان ارتباكًا.
4️⃣ استخدام النوع المناسب للبيانات:
▪︎ مثال: استخدم int للأعداد الصحيحة و double للأعداد العشرية.
6. الخلاصة العامة في المتغيرات
• المتغيرات تُستخدم لتخزين البيانات في الذاكرة أثناء تنفيذ البرنامج.
• لكل متغير نوع يحدد نوع البيانات التي يمكن تخزينها.
• يمكن تعريف المتغيرات وتعيين قيم لها، ثم استخدامها في العمليات الحسابية أو عرضها على الشاشة.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_السادس_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
🔸️ المتغيرات هي أماكن في الذاكرة تُستخدم لتخزين البيانات أثناء تنفيذ البرنامج.
▪︎ لكل متغير:
• اسم (Identifier): يُستخدم للوصول إلى البيانات المخزنة.
• نوع (Data Type): يحدد نوع البيانات التي يمكن تخزينها (مثل أعداد صحيحة، أعداد عشرية، نصوص، إلخ).
• قيمة (Value): البيانات الفعلية المخزنة في المتغير.
2. تعريف المتغيرات في C++
🔹️ صيغة تعريف المتغير:
نوع_البيانات اسم_المتغير;
أو مع تعيين قيمة ابتدائية:
نوع_البيانات اسم_المتغير = القيمة;
🔰 أمثلة:
int age = 25; // متغير من نوع int (عدد صحيح)
double salary = 1500.5; // متغير من نوع double (عدد عشري)
char grade = 'A'; // متغير من نوع char (حرف واحد)
string name = "Ali"; // متغير من نوع string (نص)
bool isStudent = true; // متغير من نوع bool (قيمة منطقية)
3. أنواع البيانات الأساسية في C++
🔸️ النوع : int
• الوصف : أعداد صحيحة
• الحجم (بايت) : 4
• المجال : من -2,147,483,648 إلى 2,147,483,647
🔹️ النوع : float
• الوصف : أعداد عشرية (فاصلة عائمة)
• الحجم (بايت) : 4
• المجال : حوالي 7 أرقام عشرية
🔸️ النوع : double
• الوصف : أعداد عشرية بدقة أعلى
• الحجم (بايت) : 8
• المجال : حوالي 15 رقمًا عشريًا
🔹️ النوع : char
• الوصف : حرف واحد
• الحجم (بايت) : 1
• المجال : من -128 إلى 127 أو 0 إلى 255
🔸️ النوع : bool
• الوصف : قيمة منطقية (صحيح أو خطأ)
• الحجم (بايت) : 1
• المجال : true أو false
🔹️ النوع : string
• الوصف : سلسلة نصية (نص)
• الحجم (بايت) : متغير
• المجال : يعتمد على طول النص
4. إستخدام المتغيرات في لغة C++
🔰 أمثلة عملية:
🔮 مثال 1: تعريف وتعيين قيم للمتغيرات
#include <iostream>
using namespace std;
int main() {
int age = 25; // تعريف متغير age وتعيين قيمة 25
double salary = 1500.75; // تعريف متغير salary وتعيين قيمة 1500.75
char grade = 'A'; // تعريف متغير grade وتعيين قيمة 'A'
string name = "Ali"; // تعريف متغير name وتعيين قيمة "Ali"
bool isStudent = true; // تعريف متغير isStudent وتعيين قيمة true
cout << "Name: " << name << endl;
cout << "Age: " << age << endl;
cout << "Salary: " << salary << endl;
cout << "Grade: " << grade << endl;
cout << "Is Student: " << isStudent << endl;
return 0;
}
🔮 مثال 2 : تعديل قيم المتغيرات
#include <iostream>
using namespace std;
int main() {
int score = 90; // تعريف متغير score وتعيين قيمة 90
cout << "Original Score: " << score << endl;
score = 95; // تعديل قيمة المتغير score إلى 95
cout << "Updated Score: " << score << endl;
return 0;
}
🔮 مثال 3 : العمليات الحسابية باستخدام المتغيرات
#include <iostream>
using namespace std;
int main() {
int a = 10, b = 20; // تعريف متغيرين a و b
int sum = a + b; // حساب مجموع a و b وتخزينه في sum
cout << "Sum of " << a << " and " << b << " is: " << sum << endl;
return 0;
}
5. نصائح لاستخدام المتغيرات
1️⃣ اختيار أسماء ذات معنى:
▪︎ مثال: totalScore أفضل من ts
2️⃣ تهيئة المتغيرات عند تعريفها:
▪︎ مثال: int age = 0; بدلاً من int age;
3️⃣ تجنب استخدام أسماء متشابهة:
▪︎ مثال: firstName و first_name قد يسببان ارتباكًا.
4️⃣ استخدام النوع المناسب للبيانات:
▪︎ مثال: استخدم int للأعداد الصحيحة و double للأعداد العشرية.
6. الخلاصة العامة في المتغيرات
• المتغيرات تُستخدم لتخزين البيانات في الذاكرة أثناء تنفيذ البرنامج.
• لكل متغير نوع يحدد نوع البيانات التي يمكن تخزينها.
• يمكن تعريف المتغيرات وتعيين قيم لها، ثم استخدامها في العمليات الحسابية أو عرضها على الشاشة.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_السادس_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
❤5👍1👏1
1. النوع int (عدد صحيح)
🔰 الوصف:
• يُستخدم لتخزين الأعداد الصحيحة (بدون كسور).
• الحجم: 4 بايت (32 بت).
• المجال: من -2,147,483,648 إلى 2,147,483,647.
🔮 أمثلة:
2. النوع float (عدد عشري بدقة منخفضة)
🔰 الوصف:
• يُستخدم لتخزين الأعداد العشرية (مع كسور).
• الحجم: 4 بايت (32 بت).
• المجال : حوالي 7 أرقام عشرية.
🔮 أمثلة:
⚠️ ملاحظة:
• يُفضل إضافة الحرف f بعد القيمة العشرية للإشارة إلى أنها من نوع float (مثل 3.14f).
3. النوع double (عدد عشري بدقة عالية)
🔰 الوصف:
• يُستخدم لتخزين الأعداد العشرية بدقة أعلى من float.
• الحجم : 8 بايت (64 بت).
• المجال : حوالي 15 رقمًا عشريًا.
🔮 أمثلة:
⚠️ ملاحظة:
• يعتبر double هو النوع الافتراضي للأعداد العشرية في C++.
4. النوع char (حرف واحد)
🔰 الوصف:
• يُستخدم لتخزين حرف واحد.
• الحجم : 1 بايت (8 بت).
• المجال : من -128 إلى 127 أو من 0 إلى 255.
🔮 أمثلة:
⚠️ ملاحظة:
• يتم تخزين الحرف بين علامتي تنصيص مفردة ('A').
5. النوع bool (قيمة منطقية)
🔰 الوصف:
• يُستخدم لتخزين القيم
• المنطقية : true (صحيح) أو false (خطأ).
• الحجم : 1 بايت (8 بت).
• القيمة : true (1) أو false (0).
🔮 أمثلة:
⚠️ ملاحظة:
• عند طباعة القيم المنطقية، يتم عرض 1 لـ true و 0 لـ false.
7. أمثلة عملية متكاملة لفهم أنواع البيانات في لغة ++C
🔸️ مثال 1: استخدام أنواع البيانات المختلفة
🔸️ مثال 2: العمليات الحسابية مع أنواع البيانات
8. الخلاصة العامة
▪︎ int: للأعداد الصحيحة.
▪︎ float: للأعداد العشرية بدقة منخفضة.
▪︎ double: للأعداد العشرية بدقة عالية.
▪︎ char: لتخزين حرف واحد.
▪︎ bool: لتخزين القيم المنطقية (true أو false).
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_السابع_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
🔰 الوصف:
• يُستخدم لتخزين الأعداد الصحيحة (بدون كسور).
• الحجم: 4 بايت (32 بت).
• المجال: من -2,147,483,648 إلى 2,147,483,647.
🔮 أمثلة:
#include <iostream>
using namespace std;
int main() {
int age = 25; // تعريف متغير age من نوع int
int temperature = -10; // يمكن أن تكون القيمة سالبة
cout << "Age: " << age << endl;
cout << "Temperature: " << temperature << endl;
return 0;
}
2. النوع float (عدد عشري بدقة منخفضة)
🔰 الوصف:
• يُستخدم لتخزين الأعداد العشرية (مع كسور).
• الحجم: 4 بايت (32 بت).
• المجال : حوالي 7 أرقام عشرية.
🔮 أمثلة:
#include <iostream>
using namespace std;
int main() {
float pi = 3.14f; // تعريف متغير pi من نوع float
float temperature = 98.6f;
cout << "Pi: " << pi << endl;
cout << "Body Temperature: " << temperature << endl;
return 0;
}
⚠️ ملاحظة:
• يُفضل إضافة الحرف f بعد القيمة العشرية للإشارة إلى أنها من نوع float (مثل 3.14f).
3. النوع double (عدد عشري بدقة عالية)
🔰 الوصف:
• يُستخدم لتخزين الأعداد العشرية بدقة أعلى من float.
• الحجم : 8 بايت (64 بت).
• المجال : حوالي 15 رقمًا عشريًا.
🔮 أمثلة:
#include <iostream>
using namespace std;
int main() {
double pi = 3.141592653589793; // تعريف متغير pi من نوع double
double distance = 123456789.123456789;
cout << "Pi: " << pi << endl;
cout << "Distance: " << distance << endl;
return 0;
}
⚠️ ملاحظة:
• يعتبر double هو النوع الافتراضي للأعداد العشرية في C++.
4. النوع char (حرف واحد)
🔰 الوصف:
• يُستخدم لتخزين حرف واحد.
• الحجم : 1 بايت (8 بت).
• المجال : من -128 إلى 127 أو من 0 إلى 255.
🔮 أمثلة:
#include <iostream>
using namespace std;
int main() {
char grade = 'A'; // تعريف متغير grade من نوع char
char symbol = '$';
cout << "Grade: " << grade << endl;
cout << "Symbol: " << symbol << endl;
return 0;
}
⚠️ ملاحظة:
• يتم تخزين الحرف بين علامتي تنصيص مفردة ('A').
5. النوع bool (قيمة منطقية)
🔰 الوصف:
• يُستخدم لتخزين القيم
• المنطقية : true (صحيح) أو false (خطأ).
• الحجم : 1 بايت (8 بت).
• القيمة : true (1) أو false (0).
🔮 أمثلة:
#include <iostream>
using namespace std;
int main() {
bool isStudent = true; // تعريف متغير isStudent من نوع bool
bool isRaining = false;
cout << "Is Student: " << isStudent << endl;
cout << "Is Raining: " << isRaining << endl;
return 0;
}
⚠️ ملاحظة:
• عند طباعة القيم المنطقية، يتم عرض 1 لـ true و 0 لـ false.
7. أمثلة عملية متكاملة لفهم أنواع البيانات في لغة ++C
🔸️ مثال 1: استخدام أنواع البيانات المختلفة
#include <iostream>
using namespace std;
int main() {
int age = 25;
float weight = 68.5f;
double height = 175.5;
char gender = 'M';
bool isStudent = true;
cout << "Age: " << age << endl;
cout << "Weight: " << weight << endl;
cout << "Height: " << height << endl;
cout << "Gender: " << gender << endl;
cout << "Is Student: " << isStudent << endl;
return 0;
}
🔸️ مثال 2: العمليات الحسابية مع أنواع البيانات
#include <iostream>
using namespace std;
int main() {
int a = 10, b = 20;
float x = 10.5f, y = 20.5f;
double pi = 3.14159;
int sumInt = a + b;
float sumFloat = x + y;
double area = pi * 5 * 5; // حساب مساحة دائرة نصف قطرها 5
cout << "Sum of integers: " << sumInt << endl;
cout << "Sum of floats: " << sumFloat << endl;
cout << "Area of circle: " << area << endl;
return 0;
}
8. الخلاصة العامة
▪︎ int: للأعداد الصحيحة.
▪︎ float: للأعداد العشرية بدقة منخفضة.
▪︎ double: للأعداد العشرية بدقة عالية.
▪︎ char: لتخزين حرف واحد.
▪︎ bool: لتخزين القيم المنطقية (true أو false).
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_السابع_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
❤3
الثوابت (Constants) في لغة C++ | الدرس الثامن
🌷 سنشرح درس الثوابت (Constants) في لغة C++، وسأقدم شرحًا مفصلاً عن كيفية تعريفها باستخدام #define و const، مع أمثلة عملية.
🌷 سنشرح درس الثوابت (Constants) في لغة C++، وسأقدم شرحًا مفصلاً عن كيفية تعريفها باستخدام #define و const، مع أمثلة عملية.
1. ما هي الثوابت (Constants)؟
🔸️ الثوابت هي قيم ثابتة لا يمكن تغييرها أثناء تنفيذ البرنامج.
🔸️ تُستخدم الثوابت لتخزين القيم التي لا تتغير، مثل القيم الرياضية (π = 3.14) أو الإعدادات الثابتة.
2. طرق تعريف الثوابت في C++
1️⃣ الطريقة الأولى:
🔰 استخدام #define
▪︎ #define
هي تعليمة للمعالج المسبق (Preprocessor) تُستخدم لتعريف ثوابت نصية (Macros).
💎 صيغة الاستخدام:
⚠️ ملاحظات:
• لا تحتاج إلى تحديد نوع البيانات.
• يتم استبدال اسم الثابت بالقيمة في جميع أنحاء الكود قبل الترجمة.
🔮 مثال:
2️⃣ الطريقة الثانية:
🔰 استخدام كلمة const
▪︎ const
هي كلمة مفتاحية تُستخدم لتعريف ثوابت ذات نوع محدد.
💎 صيغة الاستخدام:
⚠️ ملاحظات:
• يجب تحديد نوع البيانات.
• يتم التحقق من نوع البيانات أثناء الترجمة، مما يجعلها أكثر أمانًا من #define.
🔮 مثال:
3. الفرق بين #define و const
🔸️ الميزة : نوع البيانات
• الثابت (#define): لا يحتاج إلى تحديد نوع البيانات.
• الثابت (const) : يجب تحديد نوع البيانات.
🔹️ الميزة : التحقق من النوع
• الثابت (#define): لا يتم التحقق من النوع.
• الثابت (const) : يتم التحقق من النوع أثناء الترجمة.
🔸️ الميزة : النطاق (Scope)
• الثابت (#define): يعمل على مستوى الملف ككل.
• الثابت (const) : يعمل ضمن النطاق الذي تم تعريفه فيه.
🔹️ الميزة : الأمان
• الثابت (#define): أقل أمانًا بسبب عدم التحقق من النوع.
• الثابت (const) : أكثر أمانًا بسبب التحقق من النوع
🔸️ الميزة : الاستخدام الشائع
• الثابت (#define): يُستخدم للقيم البسيطة والنصوص.
• الثابت (const) : يُستخدم للثوابت ذات النوع المحدد.
🔰 4. أمثلة عملية لإستخدام الثوابت
🔮 مثال 1: استخدام #define
🔮 مثال 2: استخدام Const
5. نصائح لاستخدام الثوابت
1️⃣ اختيار الأسماء الوصفية:
▪︎ مثال: TAX_RATE أفضل من TR
2️⃣ استخدام const بدلاًمن #define عند الإمكان:
▪︎ يعتبر const أكثر أمانًا بسبب التحقق من نوع البيانات.
3️⃣ تجنب تغيير قيمة الثوابت:
▪︎ الثوابت يجب أن تبقى كما هي طوال فترة تنفيذ البرنامج.
6. الخلاصة العامة من درس الثوابت
• الثوابت تُستخدم لتخزين القيم الثابتة التي لا تتغير أثناء تنفيذ البرنامج.
• يمكن تعريف الثوابت باستخدام #define
أو const.
• يُفضل استخدام const بسبب التحقق من نوع البيانات وزيادة الأمان.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الثامن_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
🔸️ الثوابت هي قيم ثابتة لا يمكن تغييرها أثناء تنفيذ البرنامج.
🔸️ تُستخدم الثوابت لتخزين القيم التي لا تتغير، مثل القيم الرياضية (π = 3.14) أو الإعدادات الثابتة.
2. طرق تعريف الثوابت في C++
1️⃣ الطريقة الأولى:
🔰 استخدام #define
▪︎ #define
هي تعليمة للمعالج المسبق (Preprocessor) تُستخدم لتعريف ثوابت نصية (Macros).
💎 صيغة الاستخدام:
#define اسم_الثابت القيمة
⚠️ ملاحظات:
• لا تحتاج إلى تحديد نوع البيانات.
• يتم استبدال اسم الثابت بالقيمة في جميع أنحاء الكود قبل الترجمة.
🔮 مثال:
#include <iostream>
using namespace std;
#define PI 3.14159
#define MAX_VALUE 100
int main() {
cout << "Value of PI: " << PI << endl;
cout << "Max Value: " << MAX_VALUE << endl;
return 0;
}
2️⃣ الطريقة الثانية:
🔰 استخدام كلمة const
▪︎ const
هي كلمة مفتاحية تُستخدم لتعريف ثوابت ذات نوع محدد.
💎 صيغة الاستخدام:
const نوع_البيانات اسم_الثابت = القيمة;
⚠️ ملاحظات:
• يجب تحديد نوع البيانات.
• يتم التحقق من نوع البيانات أثناء الترجمة، مما يجعلها أكثر أمانًا من #define.
🔮 مثال:
#include <iostream>
using namespace std;
int main() {
const double PI = 3.14159;
const int MAX_VALUE = 100;
cout << "Value of PI: " << PI << endl;
cout << "Max Value: " << MAX_VALUE << endl;
return 0;
}
3. الفرق بين #define و const
🔸️ الميزة : نوع البيانات
• الثابت (#define): لا يحتاج إلى تحديد نوع البيانات.
• الثابت (const) : يجب تحديد نوع البيانات.
🔹️ الميزة : التحقق من النوع
• الثابت (#define): لا يتم التحقق من النوع.
• الثابت (const) : يتم التحقق من النوع أثناء الترجمة.
🔸️ الميزة : النطاق (Scope)
• الثابت (#define): يعمل على مستوى الملف ككل.
• الثابت (const) : يعمل ضمن النطاق الذي تم تعريفه فيه.
🔹️ الميزة : الأمان
• الثابت (#define): أقل أمانًا بسبب عدم التحقق من النوع.
• الثابت (const) : أكثر أمانًا بسبب التحقق من النوع
🔸️ الميزة : الاستخدام الشائع
• الثابت (#define): يُستخدم للقيم البسيطة والنصوص.
• الثابت (const) : يُستخدم للثوابت ذات النوع المحدد.
🔰 4. أمثلة عملية لإستخدام الثوابت
🔮 مثال 1: استخدام #define
#include <iostream>
using namespace std;
#define TAX_RATE 0.15
#define COMPANY_NAME "Tech Pro3dev"
int main() {
double salary = 5000.0;
double tax = salary * TAX_RATE;
cout << "Company: " << COMPANY_NAME << endl;
cout << "Salary: " << salary << endl;
cout << "Tax: " << tax << endl;
return 0;
}
🔮 مثال 2: استخدام Const
#include <iostream>
using namespace std;
int main() {
const double TAX_RATE = 0.15;
const string COMPANY_NAME = "Tech Pro3dev";
double salary = 5000.0;
double tax = salary * TAX_RATE;
cout << "Company: " << COMPANY_NAME << endl;
cout << "Salary: " << salary << endl;
cout << "Tax: " << tax << endl;
return 0;
}
5. نصائح لاستخدام الثوابت
1️⃣ اختيار الأسماء الوصفية:
▪︎ مثال: TAX_RATE أفضل من TR
2️⃣ استخدام const بدلاًمن #define عند الإمكان:
▪︎ يعتبر const أكثر أمانًا بسبب التحقق من نوع البيانات.
3️⃣ تجنب تغيير قيمة الثوابت:
▪︎ الثوابت يجب أن تبقى كما هي طوال فترة تنفيذ البرنامج.
6. الخلاصة العامة من درس الثوابت
• الثوابت تُستخدم لتخزين القيم الثابتة التي لا تتغير أثناء تنفيذ البرنامج.
• يمكن تعريف الثوابت باستخدام #define
أو const.
• يُفضل استخدام const بسبب التحقق من نوع البيانات وزيادة الأمان.
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الثامن_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
👍2
1. ما هي التعليقات (Comments)؟
🔸️ التعليقات هي نصوص يُضيفها المبرمج إلى الكود لتوضيح كيفية عمل البرنامج أو لتقديم ملاحظات.
🔹️ يتم تجاهل التعليقات تمامًا من قبل المترجم (Compiler) ولا تؤثر على تنفيذ البرنامج.
2. أنواع التعليقات في C++
1️⃣ التعليقات ذات السطر الواحد (Single-Line Comments)
• تبدأ بعلامة // وتنتهي بنهاية السطر.
🔰 صيغة الاستخدام:
🔮 مثال:
2️⃣ التعليقات متعددة الأسطر (Multi-Line Comments)
• تبدأ بعلامة /* وتنتهي بعلامة */.
🔰 صيغة الاستخدام:
🔮 مثال:
3. أهمية التعليقات في لغة ++C
🔹️ توضيح الكود
• التعليقات تساعد في توضيح الغرض من الكود وكيفية عمله.
🔮 مثال:
🔸️ تسهيل الصيانة
• التعليقات تجعل الكود أكثر قابلية للقراءة والفهم، مما يسهل صيانته وتحديثه لاحقًا.
🔮 مثال:
🔹️ التواصل مع المطورين الآخرين
• التعليقات تساعد المطورين الآخرين على فهم الكود بسرعة، خاصة في المشاريع الكبيرة.
🔮 مثال:
🔸️ تعطيل أجزاء من الكود (Debugging)
• يمكن استخدام التعليقات لتعطيل أجزاء من الكود مؤقتًا أثناء عملية التصحيح (Debugging).
🔮 مثال:
4. نصائح لكتابة التعليقات
▪︎ كن واضحًا وموجزًا:
• اكتب تعليقات واضحة وموجزة دون إطالة غير ضرورية.
▪︎تجنب التعليقات الواضحة (المفصلة):
• لا تكتب تعليقات توضح ما هو واضح من الكود.
🔮 مثال سيء:
▪︎ استخدم التعليقات لشرح "لماذا" وليس "ماذا":
• ركز على شرح سبب كتابة الكود بهذه الطريقة بدلاً من وصف ما يفعله الكود.
🔮 مثال جيد:
▪︎ تحديث التعليقات عند تغيير الكود:
• تأكد من تحديث التعليقات عند تعديل الكود لتجنب التضارب.
5. أمثلة عملية
🔮 مثال 1: توضيح الكود
🔮 مثال 2: تعطيل أجزاء من الكود
6. الخلاصة العامة لإستخدام التعليقات
• التعليقات تُستخدم لتوضيح الكود، تسهيل الصيانة، والمساعدة في عملية التصحيح.
• هناك نوعان من التعليقات في C++:
- تعليقات ذات سطر واحد (//)
- تعليقات متعددة الأسطر (/* ... */).
• كتابة تعليقات واضحة وموجزة يجعل الكود أكثر قابلية للقراءة والفهم.
#برمجة_و_تطوير
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_التاسع_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
🔸️ التعليقات هي نصوص يُضيفها المبرمج إلى الكود لتوضيح كيفية عمل البرنامج أو لتقديم ملاحظات.
🔹️ يتم تجاهل التعليقات تمامًا من قبل المترجم (Compiler) ولا تؤثر على تنفيذ البرنامج.
2. أنواع التعليقات في C++
1️⃣ التعليقات ذات السطر الواحد (Single-Line Comments)
• تبدأ بعلامة // وتنتهي بنهاية السطر.
🔰 صيغة الاستخدام:
// هذا تعليق على سطر واحد
🔮 مثال:
#include <iostream>
using namespace std;
int main() {
// هذا تعليق يوضح أن المتغير age سيخزن العمر
int age = 25;
cout << "Age: " << age << endl; // طباعة العمر
return 0;
}
2️⃣ التعليقات متعددة الأسطر (Multi-Line Comments)
• تبدأ بعلامة /* وتنتهي بعلامة */.
🔰 صيغة الاستخدام:
/*
هذا تعليق
يمكن أن يمتد على عدة أسطر
*/
🔮 مثال:
#include <iostream>
using namespace std;
int main() {
/*
هذا تعليق متعدد الأسطر
يوضح أن المتغيرات التالية تخزن
العمر والراتب
*/
int age = 25;
double salary = 1500.75;
cout << "Age: " << age << ", Salary: " << salary << endl;
return 0;
}
3. أهمية التعليقات في لغة ++C
🔹️ توضيح الكود
• التعليقات تساعد في توضيح الغرض من الكود وكيفية عمله.
🔮 مثال:
int result = a + b; // جمع القيمتين a و b وتخزين النتيجة في result
🔸️ تسهيل الصيانة
• التعليقات تجعل الكود أكثر قابلية للقراءة والفهم، مما يسهل صيانته وتحديثه لاحقًا.
🔮 مثال:
// حساب مساحة الدائرة
double area = PI * radius * radius;
🔹️ التواصل مع المطورين الآخرين
• التعليقات تساعد المطورين الآخرين على فهم الكود بسرعة، خاصة في المشاريع الكبيرة.
🔮 مثال:
// هذا الكود يحسب الضريبة بناءً على النسبة المحددة
double tax = salary * TAX_RATE;
🔸️ تعطيل أجزاء من الكود (Debugging)
• يمكن استخدام التعليقات لتعطيل أجزاء من الكود مؤقتًا أثناء عملية التصحيح (Debugging).
🔮 مثال:
// cout << "Debugging: " << x << endl; // تم تعطيل هذا السطر للتصحيح
4. نصائح لكتابة التعليقات
▪︎ كن واضحًا وموجزًا:
• اكتب تعليقات واضحة وموجزة دون إطالة غير ضرورية.
▪︎تجنب التعليقات الواضحة (المفصلة):
• لا تكتب تعليقات توضح ما هو واضح من الكود.
🔮 مثال سيء:
int x = 5; // تعيين القيمة 5 للمتغير x
▪︎ استخدم التعليقات لشرح "لماذا" وليس "ماذا":
• ركز على شرح سبب كتابة الكود بهذه الطريقة بدلاً من وصف ما يفعله الكود.
🔮 مثال جيد:
// استخدام خوارزمية سريعة بسبب حجم البيانات الكبير
sort(data, data + size);
▪︎ تحديث التعليقات عند تغيير الكود:
• تأكد من تحديث التعليقات عند تعديل الكود لتجنب التضارب.
5. أمثلة عملية
🔮 مثال 1: توضيح الكود
#include <iostream>
using namespace std;
int main() {
// تعريف متغيرات لتخزين العمر والراتب
int age = 25;
double salary = 1500.75;
// حساب الضريبة بناءً على النسبة المحددة
const double TAX_RATE = 0.15;
double tax = salary * TAX_RATE;
// طباعة النتائج
cout << "Age: " << age << endl;
cout << "Salary: " << salary << endl;
cout << "Tax: " << tax << endl;
return 0;
}
🔮 مثال 2: تعطيل أجزاء من الكود
#include <iostream>
using namespace std;
int main() {
int x = 10;
int y = 20;
// cout << "x: " << x << endl; // تم تعطيل هذا السطر للتصحيح
cout << "y: " << y << endl;
return 0;
}
6. الخلاصة العامة لإستخدام التعليقات
• التعليقات تُستخدم لتوضيح الكود، تسهيل الصيانة، والمساعدة في عملية التصحيح.
• هناك نوعان من التعليقات في C++:
- تعليقات ذات سطر واحد (//)
- تعليقات متعددة الأسطر (/* ... */).
• كتابة تعليقات واضحة وموجزة يجعل الكود أكثر قابلية للقراءة والفهم.
#برمجة_و_تطوير
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_التاسع_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
1. ما هو الكائن cin؟
• الكائن cin هو كائن الإدخال (Input Object) المُعرَّف في مكتبة <iostream>.
• يُستخدم لقراءة البيانات من المستخدم عبر لوحة المفاتيح (Standard Input).
• يعمل مع أنواع البيانات المختلفة مثل int, double, char, string, إلخ.
2. صيغة استخدام cin
💎 الصيغة العامة:
• العامل << هو عامل الاستخراج (Extraction Operator) ويُستخدم لقراءة البيانات من cin وتخزينها في المتغير.
3. قراءة أنواع البيانات المختلفة باستخدام cin
🔸️ 1. قراءة الأعداد الصحيحة (int)
🔹️ 2. قراءة الأعداد العشرية (double)
🔸️ 3. قراءة الحروف (char)
🔹️ 4. قراءة النصوص (string)
4. قراءة عدة مدخلات في سطر واحد
يمكنك قراءة عدة مدخلات في سطر واحد باستخدام cin مع عامل الاستخراج >> عدة مرات.
🔮 مثال:
5. مشكلة cin مع النصوص التي تحتوي على مسافات
❌ المشكلة في cin :
مشكلة الكائن cin يتوقف عند أول مسافة، مما يعني أنه لا يمكنه قراءة النصوص التي تحتوي على مسافات.
🔮 مثال:
✅ الحل: استخدام getline
الدالة getline تستخدم لقراءة سطر كامل من النص، بما في ذلك المسافات.
🔮 مثال:
6. تنظيف (Buffer) بعد استخدام cin
❌ المشكلة:
بعد استخدام cin، قد يتبقى حرف السطر الجديد (n\) فيBuffer ، مما يؤثر على getline.
✅ الحل: استخدام cin.ignore()
الجملة cin.ignore() تُستخدم لتجاهل الأحرف المتبقية فيBuffer.
🔮 مثال:
7. أمثلة عملية لفهم الكائن cin
🔮 مثال 1: برنامج بسيط لحساب مجموع عددين
🔮 مثال 2: برنامج لقراءة وعرض بيانات المستخدم
• الكائن cin هو كائن الإدخال (Input Object) المُعرَّف في مكتبة <iostream>.
• يُستخدم لقراءة البيانات من المستخدم عبر لوحة المفاتيح (Standard Input).
• يعمل مع أنواع البيانات المختلفة مثل int, double, char, string, إلخ.
2. صيغة استخدام cin
💎 الصيغة العامة:
cin >> متغير;
• العامل << هو عامل الاستخراج (Extraction Operator) ويُستخدم لقراءة البيانات من cin وتخزينها في المتغير.
3. قراءة أنواع البيانات المختلفة باستخدام cin
🔸️ 1. قراءة الأعداد الصحيحة (int)
#include <iostream>
using namespace std;
int main() {
int age;
cout << "Enter your age: ";
cin >> age; // قراءة العمر من المستخدم
cout << "You are " << age << " years old." << endl;
return 0;
}
🔹️ 2. قراءة الأعداد العشرية (double)
#include <iostream>
using namespace std;
int main() {
double salary;
cout << "Enter your salary: ";
cin >> salary; // قراءة الراتب من المستخدم
cout << "Your salary is: " << salary << endl;
return 0;
}
🔸️ 3. قراءة الحروف (char)
#include <iostream>
using namespace std;
int main() {
char grade;
cout << "Enter your grade: ";
cin >> grade; // قراءة الحرف من المستخدم
cout << "Your grade is: " << grade << endl;
return 0;
}
🔹️ 4. قراءة النصوص (string)
#include <iostream>
using namespace std;
int main() {
string name;
cout << "Enter your name: ";
cin >> name; // قراءة الاسم من المستخدم
cout << "Hello, " << name << "!" << endl;
return 0;
}
4. قراءة عدة مدخلات في سطر واحد
يمكنك قراءة عدة مدخلات في سطر واحد باستخدام cin مع عامل الاستخراج >> عدة مرات.
🔮 مثال:
#include <iostream>
using namespace std;
int main() {
int age;
double salary;
string name;
cout << "Enter your name, age, and salary: ";
cin >> name >> age >> salary; // قراءة الاسم، العمر، والراتب في سطر واحد
cout << "Name: " << name << ", Age: " << age << ", Salary: " << salary << endl;
return 0;
}
5. مشكلة cin مع النصوص التي تحتوي على مسافات
❌ المشكلة في cin :
مشكلة الكائن cin يتوقف عند أول مسافة، مما يعني أنه لا يمكنه قراءة النصوص التي تحتوي على مسافات.
🔮 مثال:
#include <iostream>
using namespace std;
int main() {
string fullName;
cout << "Enter your full name: ";
cin >> fullName; // سيقرأ فقط الجزء الأول من الاسم
cout << "Your full name is: " << fullName << endl;
return 0;
}
✅ الحل: استخدام getline
الدالة getline تستخدم لقراءة سطر كامل من النص، بما في ذلك المسافات.
🔮 مثال:
#include <iostream>
using namespace std;
int main() {
string fullName;
cout << "Enter your full name: ";
getline(cin, fullName); // قراءة الاسم الكامل
cout << "Your full name is: " << fullName << endl;
return 0;
}
6. تنظيف (Buffer) بعد استخدام cin
❌ المشكلة:
بعد استخدام cin، قد يتبقى حرف السطر الجديد (n\) فيBuffer ، مما يؤثر على getline.
✅ الحل: استخدام cin.ignore()
الجملة cin.ignore() تُستخدم لتجاهل الأحرف المتبقية فيBuffer.
🔮 مثال:
#include <iostream>
using namespace std;
int main() {
int age;
string name;
cout << "Enter your age: ";
cin >> age;
cin.ignore(); // تنظيف
cout << "Enter your name: ";
getline(cin, name);
cout << "Age: " << age << ", Name: " << name << endl;
return 0;
}
7. أمثلة عملية لفهم الكائن cin
🔮 مثال 1: برنامج بسيط لحساب مجموع عددين
#include <iostream>
using namespace std;
int main() {
int num1, num2;
cout << "Enter the first number: ";
cin >> num1;
cout << "Enter the second number: ";
cin >> num2;
int sum = num1 + num2;
cout << "Sum: " << sum << endl;
return 0;
}
🔮 مثال 2: برنامج لقراءة وعرض بيانات المستخدم
#include <iostream>
using namespace std;
int main() {
string name;
int age;
double height;
cout << "Enter your name: ";
getline(cin, name);
cout << "Enter your age: ";
cin >> age;
cout << "Enter your height (in meters): ";
cin >> height;
cout << "Name: " << name << ", Age: " << age << ", Height: " << height << " meters" << endl;
return 0;
}
🔥2
9. نصائح لاستخدام cin
🔰 استخدام endl أو n\ لإدخال سطر جديد:
▪︎ endl
يُفضل استخدامه لأنه يفرغ (Buffer) أيضًا.
▪︎ \n
أسرع ولكن لا يفرغ Buffer.
🔰 تجنب استخدام cin و getline معًا دون تنظيف buffer:
▪︎ بعد استخدام cin، قد يتبقى حرف السطر الجديد (n\) في buffer، مما يؤثر على getline.
🔸️ الحل:
▪︎ استخدام cin.ignore() لتنظيف Buffer
8. الخلاصة العامة لإستخدام الكائن cin
▪︎ الكائن cin يُستخدم لقراءة المدخلات من المستخدم.
▪︎ يمكن استخدامه مع أنواع البيانات المختلفة مثل int, double, char, string.
▪︎ الدالة getline تُستخدم لقراءة النصوص الكاملة التي تحتوي على مسافات.
▪︎ الجملة cin.ignore() يُستخدم لتنظيف Buffer بعد استخدام cin.
▪︎ كتابة كود واضح ومنظم مع استخدام التعليقات يجعل البرنامج أكثر قابلية للقراءة والصيانة
#برمجة_و_تطوير
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_العاشر_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
🔰 استخدام endl أو n\ لإدخال سطر جديد:
▪︎ endl
يُفضل استخدامه لأنه يفرغ (Buffer) أيضًا.
▪︎ \n
أسرع ولكن لا يفرغ Buffer.
🔰 تجنب استخدام cin و getline معًا دون تنظيف buffer:
▪︎ بعد استخدام cin، قد يتبقى حرف السطر الجديد (n\) في buffer، مما يؤثر على getline.
🔸️ الحل:
▪︎ استخدام cin.ignore() لتنظيف Buffer
8. الخلاصة العامة لإستخدام الكائن cin
▪︎ الكائن cin يُستخدم لقراءة المدخلات من المستخدم.
▪︎ يمكن استخدامه مع أنواع البيانات المختلفة مثل int, double, char, string.
▪︎ الدالة getline تُستخدم لقراءة النصوص الكاملة التي تحتوي على مسافات.
▪︎ الجملة cin.ignore() يُستخدم لتنظيف Buffer بعد استخدام cin.
▪︎ كتابة كود واضح ومنظم مع استخدام التعليقات يجعل البرنامج أكثر قابلية للقراءة والصيانة
#برمجة_و_تطوير
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_العاشر_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
https://t.me/artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
👍3❤1
1. ما هو الكائن cout؟
• الكائن cout هو كائنالإخراج (Output Object) المُعرَّف في مكتبة <iostream>.
• يُستخدم لإرسال البيانات إلى الشاشة (Standard Output).
• يعمل مع أنواع البيانات المختلفة مثل int, double, char, string, إلخ.
2. صيغة استخدام cout
💎 الصيغة العامة:
• العامل >> هو عامل الإرسال (Insertion Operator) ويُستخدم لإرسال البيانات إلى cout.
3. إخراج أنواع البيانات المختلفة باستخدام cout
🔸️ 1. إخراج الأعداد الصحيحة (int)
🔹️ 2. إخراج الأعداد العشرية (double)
🔸️ 3. إخراج الحروف (char)
🔹️ 4. إخراج النصوص (string)
4. إخراج عدة مدخلات في سطر واحد
يمكنك إخراج عدة بيانات في سطر واحد باستخدام cout مع عامل الإرسال >> عدة مرات.
🔮 مثال:
5. استخدام endl و n\ لإدخال سطر جديد
▪︎ endl
ال endl يُستخدم لإدخال سطر جديد (New Line) ويفرغ (Buffer) أيضًا.
🔮 مثال
▪︎\n
ال \n يُستخدم لإدخال سطر جديد دون تفريغ.
🔮 مثال
6. تنسيق الإخراج
🔹️ . تحديد عدد الأرقام العشرية
يمكنك استخدام fixed و setprecision من مكتبة <iomanip> لتحديد عدد الأرقام العشرية.
🔮 مثال:
🔹️ محاذاة النصوص
يمكنك استخدام setw من مكتبة <iomanip> لتحديد عرض الحقل.
🔮 مثال:
7. أمثلة عملية لفهم الكائن cout
🔮 مثال 1: برنامج بسيط لعرض معلومات الطالب
🔮 مثال 2: برنامج لحساب مساحة الدائرة
8. الخلاصة العامة لإستخدام الكائن cout
• الكائن cout يُستخدم لإخراج البيانات إلى الشاشة.
• يمكن استخدامه مع أنواع البيانات المختلفة مثل int, double, char, string.
ال endl و n\ يُستخدمان لإدخال سطر جديد.
• يمكن تنسيق الإخراج باستخدام مكتبة <iomanip>.
#برمجة_و_تطوير
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الحادي_عشر_سي_بلس_بلس
#المستوى_الأول
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
• الكائن cout هو كائنالإخراج (Output Object) المُعرَّف في مكتبة <iostream>.
• يُستخدم لإرسال البيانات إلى الشاشة (Standard Output).
• يعمل مع أنواع البيانات المختلفة مثل int, double, char, string, إلخ.
2. صيغة استخدام cout
💎 الصيغة العامة:
cout << بيانات_للإخراج;
• العامل >> هو عامل الإرسال (Insertion Operator) ويُستخدم لإرسال البيانات إلى cout.
3. إخراج أنواع البيانات المختلفة باستخدام cout
🔸️ 1. إخراج الأعداد الصحيحة (int)
#include <iostream>
using namespace std;
int main() {
int age = 25;
cout << "Age: " << age << endl; // طباعة العمر
return 0;
}
🔹️ 2. إخراج الأعداد العشرية (double)
#include <iostream>
using namespace std;
int main() {
double salary = 1500.75;
cout << "Salary: " << salary << endl; // طباعة الراتب
return 0;
}
🔸️ 3. إخراج الحروف (char)
#include <iostream>
using namespace std;
int main() {
char grade = 'A';
cout << "Grade: " << grade << endl; // طباعة الحرف
return 0;
}
🔹️ 4. إخراج النصوص (string)
#include <iostream>
using namespace std;
int main() {
cout << "Hello, World!" << endl; // طباعة جملة "Hello, World!"
return 0;
}
4. إخراج عدة مدخلات في سطر واحد
يمكنك إخراج عدة بيانات في سطر واحد باستخدام cout مع عامل الإرسال >> عدة مرات.
🔮 مثال:
#include <iostream>
using namespace std;
int main() {
int age = 25;
double salary = 1500.75;
string name = "Ali";
cout << "Name: " << name << ", Age: " << age << ", Salary: " << salary << endl;
return 0;
}
5. استخدام endl و n\ لإدخال سطر جديد
▪︎ endl
ال endl يُستخدم لإدخال سطر جديد (New Line) ويفرغ (Buffer) أيضًا.
🔮 مثال
#include <iostream>
using namespace std;
int main() {
cout << "Line 1" << endl;
cout << "Line 2" << endl;
return 0;
}
▪︎\n
ال \n يُستخدم لإدخال سطر جديد دون تفريغ.
🔮 مثال
#include <iostream>
using namespace std;
int main() {
cout << "Line 1\n";
cout << "Line 2\n";
return 0;
}
6. تنسيق الإخراج
🔹️ . تحديد عدد الأرقام العشرية
يمكنك استخدام fixed و setprecision من مكتبة <iomanip> لتحديد عدد الأرقام العشرية.
🔮 مثال:
#include <iostream>
#include <iomanip> // لتضمين مكتبة التنسيق
using namespace std;
int main() {
double pi = 3.141592653589793;
cout << "Pi: " << fixed << setprecision(2) << pi << endl; // طباعة pi بدقة منزلتين عشريتين
return 0;
}
🔹️ محاذاة النصوص
يمكنك استخدام setw من مكتبة <iomanip> لتحديد عرض الحقل.
🔮 مثال:
#include <iostream>
#include <iomanip> // لتضمين مكتبة التنسيق
using namespace std;
int main() {
cout << setw(10) << "Name" << setw(10) << "Age" << endl;
cout << setw(10) << "Ali" << setw(10) << 25 << endl;
cout << setw(10) << "Ahmed" << setw(10) << 30 << endl;
return 0;
}
7. أمثلة عملية لفهم الكائن cout
🔮 مثال 1: برنامج بسيط لعرض معلومات الطالب
#include <iostream>
using namespace std;
int main() {
string name = "Ali";
int age = 20;
double gpa = 3.75;
cout << "Student Information:" << endl;
cout << "Name: " << name << endl;
cout << "Age: " << age << endl;
cout << "GPA: " << gpa << endl;
return 0;
}
🔮 مثال 2: برنامج لحساب مساحة الدائرة
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
const double PI = 3.14159;
double radius;
cout << "Enter the radius of the circle: ";
cin >> radius;
double area = PI * radius * radius;
cout << "Area of the circle: " << fixed << setprecision(2) << area << endl;
return 0;
}
8. الخلاصة العامة لإستخدام الكائن cout
• الكائن cout يُستخدم لإخراج البيانات إلى الشاشة.
• يمكن استخدامه مع أنواع البيانات المختلفة مثل int, double, char, string.
ال endl و n\ يُستخدمان لإدخال سطر جديد.
• يمكن تنسيق الإخراج باستخدام مكتبة <iomanip>.
#برمجة_و_تطوير
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الحادي_عشر_سي_بلس_بلس
#المستوى_الأول
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
❤3👍1
1. ما هي std::string؟
• نعتبر std::string على أنها فئة (Class) في لغة C++ والتي تُستخدم لتمثيل النصوص والتعامل معها.
• تُعتبر بديلاً أكثر مرونة وأمانًا لمصفوفات الأحرف ([]char) التي تُستخدم في لغة C.
2. تضمين مكتبة std::string
لاستخدام std::string، يجب تضمين مكتبة <string> في البرنامج.
3. تعريف النصوص (Strings)
🔰 صيغة التعريف:
🔮 أمثلة:
4. العمليات الأساسية على النصوص
1️⃣ القراءة من المستخدم
يمكن استخدام cin أو getline لقراءة النصوص من المستخدم.
🔸️ مثال باستخدام cin:
🔸️ مثال باستخدام getline:
2️⃣ التخصيص (Assignment)
يمكن تعيين نص جديد للمتغير باستخدام عامل التخصيص =
3️⃣ التسلسل (Concatenation)
يمكن دمج نصوص باستخدام عامل الجمع +
4️⃣ المقارنة (Comparison)
يمكن مقارنة نصوص باستخدام العوامل العلائقية مثل ==, !=, <, >, إلخ.
5️⃣ الوصول إلى الأحرف (Accessing Characters)
يمكن الوصول إلى الأحرف الفردية في النص باستخدام الأقواس المربعة [].
6️⃣ طول النص (Length)
يمكن الحصول على طول النص باستخدام الدالة ()length أو ()size.
7️⃣ البحث في النص (Searching)
يمكن البحث عن نص فرعي (Substring) باستخدام الدالة ()find.
8️⃣ استبدال النص (Replacing)
يمكن استبدال جزء من النص باستخدام الدالة ()replace.
📟 النتيجة على الشاشة:
• نعتبر std::string على أنها فئة (Class) في لغة C++ والتي تُستخدم لتمثيل النصوص والتعامل معها.
• تُعتبر بديلاً أكثر مرونة وأمانًا لمصفوفات الأحرف ([]char) التي تُستخدم في لغة C.
2. تضمين مكتبة std::string
لاستخدام std::string، يجب تضمين مكتبة <string> في البرنامج.
#include <string>
3. تعريف النصوص (Strings)
🔰 صيغة التعريف:
std::string اسم_المتغير = "النص";
🔮 أمثلة:
#include <iostream>
#include <string> // تضمين مكتبة النصوص
using namespace std;
int main() {
string name = "Ali"; // تعريف نص
cout << "Name: " << name << endl;
return 0;
}
4. العمليات الأساسية على النصوص
1️⃣ القراءة من المستخدم
يمكن استخدام cin أو getline لقراءة النصوص من المستخدم.
🔸️ مثال باستخدام cin:
#include <iostream>
#include <string>
using namespace std;
int main() {
string name;
cout << "Enter your name: ";
cin >> name; // قراءة النص (يتوقف عند أول مسافة)
cout << "Hello, " << name << "!" << endl;
return 0;
}
🔸️ مثال باستخدام getline:
#include <iostream>
#include <string>
using namespace std;
int main() {
string fullName;
cout << "Enter your full name: ";
getline(cin, fullName); // قراءة النص الكامل (بما في ذلك المسافات)
cout << "Hello, " << fullName << "!" << endl;
return 0;
}
2️⃣ التخصيص (Assignment)
يمكن تعيين نص جديد للمتغير باستخدام عامل التخصيص =
#include <iostream>
#include <string>
using namespace std;
int main() {
string text = "Hello";
cout << "Original Text: " << text << endl;
text = "World"; // تعيين نص جديد
cout << "Updated Text: " << text << endl;
return 0;
}
3️⃣ التسلسل (Concatenation)
يمكن دمج نصوص باستخدام عامل الجمع +
#include <iostream>
#include <string>
using namespace std;
int main() {
string firstName = "Ali";
string lastName = "Ahmed";
string fullName = firstName + " " + lastName; // دمج النصوص
cout << "Full Name: " << fullName << endl;
return 0;
}
4️⃣ المقارنة (Comparison)
يمكن مقارنة نصوص باستخدام العوامل العلائقية مثل ==, !=, <, >, إلخ.
#include <iostream>
#include <string>
using namespace std;
int main() {
string text1 = "apple";
string text2 = "banana";
if (text1 == text2) {
cout << "The texts are equal." << endl;
} else {
cout << "The texts are not equal." << endl;
}
return 0;
}
5️⃣ الوصول إلى الأحرف (Accessing Characters)
يمكن الوصول إلى الأحرف الفردية في النص باستخدام الأقواس المربعة [].
#include <iostream>
#include <string>
using namespace std;
int main() {
string text = "Hello";
cout << "First character: " << text[0] << endl; // الوصول إلى الحرف الأول
cout << "Last character: " << text[text.length() - 1] << endl; // الوصول إلى الحرف الأخير
return 0;
}
6️⃣ طول النص (Length)
يمكن الحصول على طول النص باستخدام الدالة ()length أو ()size.
#include <iostream>
#include <string>
using namespace std;
int main() {
string text = "Hello, World!";
cout << "Length of text: " << text.length() << endl; // طول النص
cout << "Size of text: " << text.size() << endl; // نفس النتيجة
return 0;
}
7️⃣ البحث في النص (Searching)
يمكن البحث عن نص فرعي (Substring) باستخدام الدالة ()find.
#include <iostream>
#include <string>
using namespace std;
int main() {
string text = "Hello, World!";
size_t pos = text.find("World"); // البحث عن "World"
if (pos != string::npos) {
cout << "Found at position: " << pos << endl;
} else {
cout << "Not found." << endl;
}
return 0;
}
8️⃣ استبدال النص (Replacing)
يمكن استبدال جزء من النص باستخدام الدالة ()replace.
#include <iostream>
#include <string>
using namespace std;
int main() {
string text = "Hello, World!";
text.replace(7, 5, "C++"); // استبدال "World" بـ "C++"
cout << "Updated Text: " << text << endl;
return 0;
}
📟 النتيجة على الشاشة:
Updated Text: Hello, C++!
9️⃣ . استخراج النص الفرعي (Substring)
يمكن استخراج جزء من النص باستخدام الدالة ()substr.
📟 النتيجة على الشاشة:
5. أمثلة عملية
🔮 مثال 1: برنامج لتحويل النص إلى أحرف كبيرة (Uppercase)
🔮 مثال 2: برنامج لعكس النص (Reverse)
6. الخلاصة العامة لإستخدام string
• الكلاس std::string تُستخدم لتمثيل النصوص والتعامل معها في C++.
• تدعم العديد من العمليات مثل القراءة، الكتابة، التسلسل، المقارنة، الوصول إلى الأحرف، البحث، الاستبدال، واستخراج النصوص الفرعية.
• استخدام std::string يجعل التعامل مع النصوص أكثر مرونة وأمانًا مقارنة بمصفوفات الأحرف.
#برمجة_و_تطوير
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الثاني_عشر_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
@artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲
يمكن استخراج جزء من النص باستخدام الدالة ()substr.
#include <iostream>
#include <string>
using namespace std;
int main() {
string text = "Hello, World!";
string sub = text.substr(7, 5); // استخراج "World"
cout << "Substring: " << sub << endl;
return 0;
}
📟 النتيجة على الشاشة:
Substring: World
5. أمثلة عملية
🔮 مثال 1: برنامج لتحويل النص إلى أحرف كبيرة (Uppercase)
#include <iostream>
#include <string>
#include <algorithm> // لتضمين transform
using namespace std;
int main() {
string text = "hello, world!";
transform(text.begin(), text.end(), text.begin(), ::toupper); // تحويل النص إلى أحرف كبيرة
cout << "Uppercase Text: " << text << endl;
return 0;
}
🔮 مثال 2: برنامج لعكس النص (Reverse)
#include <iostream>
#include <string>
#include <algorithm> // لتضمين reverse
using namespace std;
int main() {
string text = "Hello, World!";
reverse(text.begin(), text.end()); // عكس النص
cout << "Reversed Text: " << text << endl;
return 0;
}
6. الخلاصة العامة لإستخدام string
• الكلاس std::string تُستخدم لتمثيل النصوص والتعامل معها في C++.
• تدعم العديد من العمليات مثل القراءة، الكتابة، التسلسل، المقارنة، الوصول إلى الأحرف، البحث، الاستبدال، واستخراج النصوص الفرعية.
• استخدام std::string يجعل التعامل مع النصوص أكثر مرونة وأمانًا مقارنة بمصفوفات الأحرف.
#برمجة_و_تطوير
#دورة_سي_بلس_بلس
#C_plus_plus
#الدرس_الثاني_عشر_سي_بلس_بلس
#المستوى_الأول
✅ الرجاء متابعة قناتنا 👇
@artificial_AI_intelligence
🥰 قال رسول الله ﷺ << إذا مات ابن آدم؛ انقطع عمله إلا من ثلاث: صدقة جارية، أو علم ينتفع به، أو ولد صالح يدعو له >> رواه مسلم.
🤗 اذا إستفدت من الدرس لا تنسى الدعاء لنا 🤲