ده حيكون تمهيد لدرس ال pointers الي حشرحه
مع العلم اني حتطرق يه لكل شيئ من اول النمله للصاروخ
المصفوفات الرقميه:1
درسنا اليوم عن ال مصفوفات وفايدتها وكيف التعامل معها وده حيكون الجزء الاول عشان بعد كده حندخلها ونوسعها مع المؤشرات
المهم تعريف المصفوفه ايه ؟
خلينا نجيب مثال كويس كده انت اليوم وراك جدول تصحيح كير بصفتك مدرس وحاطته وبعد ماخلصت عايز تجيب اسم الولد mohamed وتجيب درجته
بس للاسف الجداول عندك كتير جدا وممكن تتوه وانت بدور عليه وساعتها لاحتروح شغلك
طيب حل الموضوع دوت ايه ؟
انك تعمل قائمه تحت شعار واحد
__________________
|لا الوحده |
------------------------
وتحط تحت القائمه ديت ارقام
اقتباس:
__________________
|لا للوحده |
------------------------
|0:>>>>10
|1>>>>:ا20
|2>>>>:10
كويس كل واحده من العناصر الي جوه القائمة ديت بيحتوي علي بيانات من نفس نوع القائمه لا للوحده
وكل واحد فيهم بيشكل مكان للبيانات
وكل واحد فيهم بيحتوي علي بيانات
وكلهم تحت اسم واحد
حلو دلوقتي تعالي نشغلها علي البرمجه
من غير ماتعرف المصفوفات الطبيعي ايه؟
وهكذا يعني حتضر تعمل مليون متغير رقمي عشان تحفظ حاجه واحده
طيب مهو بدل البهدله ديت تقدر تعمل كده
يعني القائمه ستورم تحتوي10درجات كل اسم اظنك فهمت تعريف المصفوفه واستدخدمها كويس كده؟
المهم يعني انت دلوقتي عايز تستفيد من الموضوع ده طيب ايه الحل ؟
ممكن تفكر وتعمل كده
تعالي نفهم بقي الي احنا عملناه واحده واحده
هنا حتلاحظ مصيبه صغيره انه بيطلب منك ادخال الدرجه للشخص 0 وده مش موجود في الدنيا اللهم تجاوزا بعض الخلق الاغبياء الي مايستحقوش فاي حتي
نرجع لموضوعنا
حلها ايه ؟
اظن مفهوم
ملحوظه اخري
عناصر المصفوفات كلها تبتدي ب 0 وتنتهي ب الرقم-1
يعني لو عندك مصفوفه فيها 10 عناصر يبقي المصفوفه بتاعتنا اذاي؟
كود PHP:
مفهوم اظن
المهم
تعالي نشرح ديت ونشرح معاها حاجه كمان
انت هنا كانك بتعمل ادخال ل 10 متغيرات جميل وليكن م0 م1 م3 .....م9
حلو يعني نفس طريقة ادخال المتغيرات العاديه خالص
ديت لطباعة قيم المصفوفه من 0 الي9 يعني عشر عناصر
ملحوظه مهمه جدا:
يمكنك استخدام محدد العناصر للمصفوفه وهو مابين []
ك:expresion يعني 3+5 مثلا
ك: array يعني مثلا
معنهاا ديت انك اخدت القيمه المسنده للعنصر 2 في المصفوفه storm وليكن
10 يبقي كانك كتبت
وممكن تستعمل ثوابت بس لاحظ حاجه مهمه متقدرش تستعمل ال symolic constans لكن تقدر تستعمل ال lerial constants وحشرح معناهم الاتنين بس مش دلوقتي في الجزء التاني
يكفيك انك تعرف ان
يعني تقدر تعمل
ومتقدرش
وممكن تسند قيم المصفوفه وانت بتنشئها كده
مع العلم تسيب مكان لل
ولو انك متعرفش انك عايز كام عنصر ممكن
كود PHP:
اظن انك فهمت المصفوفات الرقميه ذات البعد الواحد
في مصفوفات باكثر من بعد
الرقعه اتسعت عليك ورئيسك في المدرسه عايز تعمل للطلاب في فصلك كل الدرجات تولع انت وهو يرتاح
متفرقش
التلميذ رقم :0:الماده رقم{0
{1
{2
التلميذ رقم :1:الماده رقم{0
{1
{2
التلميذ رقم الماده رقم{0
{1
{2
اظنك فهمت انا اقصد بكده ايه
وليكن
يعني التلميذ رقم
اظنط فاهم برده ولاحظ اننا ماشيين علي رقم التلميذ:رقم الماده
وهكذا علي نفس المنوال مع باقي المصفوفه
الكود كله اخطاء املائيه نظرا لني مش بشوف
المصفوفه ذات البعدين
صوره توضيحيه
في المرفقات
هذه المصفوفه ثانئية البعد
العوده:ههههههههههههههههههههههههه
المهم نشرح الصوره وبعدين المصفوفه
انا سبق وقولت ان الصوره ديت بتمثل مصفوفه
فاكر مثال
رقم التلميذ:رقم الماده
والصوره بتشرح ان كل عنصر في المصفوفه يحتوي علي عدد 3 عناصر
طبعا كلنا عارف ايه هو الكلام ده استدعاء الدوال المكتبيه وتعريف المصفوفه وانا كنت قايل انها عادي كاي متغير وتعريف c f متغيرين رقميين
ركز كويس جدا معايا ماشي
تعالي نسترجع for بتعمل ايه
واحد تسند القيمه وانا قولت ده مش شرط اساسي راجع موضوع for
وبعدين تتحقق من الشرط
وتنفذالقيمه الاخيره الي غالبا بتكون ازاده او نقصان
وبعدين تحققال statments
في الحاله ديت ال statments ايه؟
دوارة for تانيه
حتعمل نفس الموضوع وتنفذ statments الخاصه بيها
اصبح كالاتي for1:for2
راعي ان القيمه 0 هي اول قيمه ل for1 و for2 وبعدين الازاده مستمره
ي
وراعي ان انا اقصد ب for2={0,1,2} القيمه المتزايده
وبعدين
color=red]for1=1>>>for2={0,1,2}[/color]
ثم
color=red]for1=2>>>for2={0,1,2}[/color]
تعالي بقي نطبق علي المصفوفه
وهكذا اظنك فاهم
طيب بما ان for1 معاملها هو c
و for2 معاملها هو b
يبقي
انت بتدخل degrees تثلات مرات
وتساويها ب c=0 في اول تلات مرات و b = 0 1 2
وتساويها ب c=1 في ثاني تلات مرات و b = 0 1 2
وهكذا واظن انك فهمت
يعني
[
وهكذا
شوف الصوره ديت
التلميذرقم0{الماده رقم 0=الدرجه الاولي
التلميذرقم0{الماده رقم 1=الدرجه الثاينه
التلميذرقم0{الماده رقم 2=الدرجه الثالثه
تعالي نطبع عناصرها بقي
ديت عشان نطبع
array[معامل تزاييد C ] [معامل تزايد b]
ثم
طباعة القيم المسنده الي عناصر المصفوفه كلها
لايمكنك امرار array ك argumetn ل functions
يعني مش في كده ابدا
ده مستحيل لان ال arrays عباره عن مصفوفة عناوين الي العناصر ولايمكنك عمل acces علي جميع عناصرها
نتطرق الي هذا الجزء مع المؤشرات
مع العلم اني حتطرق يه لكل شيئ من اول النمله للصاروخ
المصفوفات الرقميه:1
درسنا اليوم عن ال مصفوفات وفايدتها وكيف التعامل معها وده حيكون الجزء الاول عشان بعد كده حندخلها ونوسعها مع المؤشرات
المهم تعريف المصفوفه ايه ؟
خلينا نجيب مثال كويس كده انت اليوم وراك جدول تصحيح كير بصفتك مدرس وحاطته وبعد ماخلصت عايز تجيب اسم الولد mohamed وتجيب درجته
بس للاسف الجداول عندك كتير جدا وممكن تتوه وانت بدور عليه وساعتها لاحتروح شغلك
طيب حل الموضوع دوت ايه ؟
انك تعمل قائمه تحت شعار واحد
__________________
|لا الوحده |
------------------------
وتحط تحت القائمه ديت ارقام
اقتباس:
__________________
|لا للوحده |
------------------------
|0:>>>>10
|1>>>>:ا20
|2>>>>:10
كويس كل واحده من العناصر الي جوه القائمة ديت بيحتوي علي بيانات من نفس نوع القائمه لا للوحده
وكل واحد فيهم بيشكل مكان للبيانات
وكل واحد فيهم بيحتوي علي بيانات
وكلهم تحت اسم واحد
حلو دلوقتي تعالي نشغلها علي البرمجه
من غير ماتعرف المصفوفات الطبيعي ايه؟
كود PHP:
char mohamd=10
int storm=10
طيب مهو بدل البهدله ديت تقدر تعمل كده
كود PHP:
int degrees[100
المهم يعني انت دلوقتي عايز تستفيد من الموضوع ده طيب ايه الحل ؟
ممكن تفكر وتعمل كده
كود PHP:
#include<stdio.h>
int count;
int storm[100]
main()
{
for(count=0;count<100;count++)
{
printf("Enter th %d\'s degree",count);
scanf("%d",&storm[count]);
{
/* printing the elements*/
for(count=0;count<100;count++)
{
printf("the persot %d\'s degree is",count+1,storm[count]);
{
{
كود PHP:
printf("Enter th %d\'s degree",count);
نرجع لموضوعنا
حلها ايه ؟
كود PHP:
printf("Enter th %d\'s degree",count+1);
ملحوظه اخري
عناصر المصفوفات كلها تبتدي ب 0 وتنتهي ب الرقم-1
يعني لو عندك مصفوفه فيها 10 عناصر يبقي المصفوفه بتاعتنا اذاي؟
كود PHP:
كود PHP:
storm[0],storm[1].........storm[9]
المهم
تعالي نشرح ديت ونشرح معاها حاجه كمان
كود PHP:
scanf("%d",&storm[count]);
حلو يعني نفس طريقة ادخال المتغيرات العاديه خالص
كود PHP:
printf("the persot %d\'s degree is",count+1,storm[count]);
ملحوظه مهمه جدا:
يمكنك استخدام محدد العناصر للمصفوفه وهو مابين []
ك:expresion يعني 3+5 مثلا
ك: array يعني مثلا
كود PHP:
array[storm[2]
10 يبقي كانك كتبت
كود PHP:
array[10]
يكفيك انك تعرف ان
كود PHP:
#define s 100 ديت letrial
const int a=5; ديت symbolic
كود PHP:
#define a 5
int array [a];
كود PHP:
const int a=5;
int array [a];
كود PHP:
int storm [4]={1,2,3};
كود PHP:
0 \
كود PHP:
كود PHP:
int storm[]={1,2,3,4,5}
في مصفوفات باكثر من بعد
كود PHP:
int storm[5][5]
متفرقش
التلميذ رقم :0:الماده رقم{0
{1
{2
التلميذ رقم :1:الماده رقم{0
{1
{2
التلميذ رقم الماده رقم{0
{1
{2
اظنك فهمت انا اقصد بكده ايه
وليكن
كود PHP:
array[3][3]={{1,2,3},{4,5,6},{1,2,3}};
كود PHP:
array[0][0]=1
array[0][1]=2
array[0][2=3]
وهكذا علي نفس المنوال مع باقي المصفوفه
كود PHP:
#include<stdio.h>
int array[3][3];
int c,f;
int degrees;
main()
{
for(c=0;c<3;c++)
{
for(b=0;b<3;b++)
{
printf("perso %d\' subject %d dgrees is",c,f);
scanf("%d",°rees);
array[c][b]=degrees;
}
}
for(c=0;c<3;c++)
{
for(b=0;b<3;b++)
{
printf("\narray[%d][%d]=",c,f);
printf("%d",array[c][b]);
}
}
}
المصفوفه ذات البعدين
صوره توضيحيه
في المرفقات
هذه المصفوفه ثانئية البعد
كود PHP:
int storm[3][3];
المهم نشرح الصوره وبعدين المصفوفه
انا سبق وقولت ان الصوره ديت بتمثل مصفوفه
كود PHP:
int storm [3][3];
رقم التلميذ:رقم الماده
والصوره بتشرح ان كل عنصر في المصفوفه يحتوي علي عدد 3 عناصر
كود PHP:
#include<stdio.h>
int array[3][3];
int c,f;
int degrees;
ركز كويس جدا معايا ماشي
كود PHP:
for(c=0;c<3;c++)
{
for(b=0;b<3;b++)
واحد تسند القيمه وانا قولت ده مش شرط اساسي راجع موضوع for
وبعدين تتحقق من الشرط
وتنفذالقيمه الاخيره الي غالبا بتكون ازاده او نقصان
وبعدين تحققال statments
في الحاله ديت ال statments ايه؟
دوارة for تانيه
حتعمل نفس الموضوع وتنفذ statments الخاصه بيها
اصبح كالاتي for1:for2
راعي ان القيمه 0 هي اول قيمه ل for1 و for2 وبعدين الازاده مستمره
ي
كود PHP:
for1=0>>>for2={0,1,2}
وبعدين
color=red]for1=1>>>for2={0,1,2}[/color]
ثم
color=red]for1=2>>>for2={0,1,2}[/color]
تعالي بقي نطبق علي المصفوفه
كود PHP:
storm[0][0]
storm[0][1]
storm[0][2]
storm[1][0]
طيب بما ان for1 معاملها هو c
و for2 معاملها هو b
يبقي
كود PHP:
for(c=0;c<3;c++)
{
for(b=0;b<3;b++)
{
printf("perso %d\' subject %d dgrees is",c,f);
scanf("%d",°rees);
array[c][b]=degrees;
}
}
وتساويها ب c=0 في اول تلات مرات و b = 0 1 2
وتساويها ب c=1 في ثاني تلات مرات و b = 0 1 2
وهكذا واظن انك فهمت
يعني
[
كود PHP:
deegres1=storm[0][0
storm[0][1]=degrees2
storm[0][2]=degrees3
storm[1][0]=degress4
شوف الصوره ديت
التلميذرقم0{الماده رقم 0=الدرجه الاولي
التلميذرقم0{الماده رقم 1=الدرجه الثاينه
التلميذرقم0{الماده رقم 2=الدرجه الثالثه
تعالي نطبع عناصرها بقي
كود PHP:
for(c=0;c<3;c++)
{
for(b=0;b<3;b++)
{
printf("\narray[%d][%d]=",c,f);
printf("%d",array[c][b]);
}
}
}
الدوراتين هم هم وبتتسمي nested loops
كود PHP:
printf("\narray[%d][%d]=",c,f);
array[معامل تزاييد C ] [معامل تزايد b]
ثم
كود PHP:
printf("%d",array[c][b]);
كود PHP:
storm[0][1]=degrees2
storm[0][2]=degrees3
storm[1][0]=degress4
يعني مش في كده ابدا
كود PHP:
do_what_ver_this_do(array[10]);
نتطرق الي هذا الجزء مع المؤشرات
تعليق