|
اقسام على الموقع
دروس في أنظمة التشغيل | ماي سكيول - MySQL | لفيجوال بيسك - Visual Basic | المات لاب Matlab | اللينكس و اليونكس | الاسمبلي - ASSEMBLY | الاوتلوك - Outlook | البرمجة تحت اللنكس -Linux Programming | البرمجة تحت وندوز بواسطة دوال ال win API | البرمجة في بيئة الدوت نت .Net | التصمبم والرسوم | الدلفي - Delphi | الجافا - Java | السي - C | الصوت و الصورة | الوورد - Word | القسم العام للأوفيس | الكوبول - COBOL | control panel-ftp | اوراكل - Oracle | اكسل - Excel | تحميل الملفات | برامج متنوعة | برامج التصفح | برامج الحماية | برامج إنترنت | تعرّف على الويب | بوربوينت - Power Point | images | دروس : كمبيوتر وصيانة | دروس مجلة نيوك phpnuke | دروس مسنجر MSN - yahoo - Gmail | دروس منتديات vBulletin | دروس الجوالات والهواتف | دروس السي بنل cpanel | دروس اكسس access | دروس بيونت شوب برو - point shop pro | دروس برمجة php - mysql | دروس برامج منوعة software | دروس ثري دي ماكس 3D max | دروس تطوير المواقع والمنتديات | دروس جافا سكريبت JavaScript | دروس دريم ويفر DreamWeaver | دروس شبكات Networks | دروس سويش - swish | دروس فلاش - flash | دروس فلاش mx | دروس فى نظام الوندوز WINDOWS | دروس فىالباسكال - Pascal | دروس فيجوال بيسك Visual Basic | دروس فرونت بيج - frontpage | دروس فوتوشوب photoshop | دروس هكر hacker crack virus | سي ++ | سي شارب - #C | فيجوال سي ++ - ++ Visual C | قسم البرمجة العام | دروس فى لغة HTML
البحث في المواد
اكثر المحتويات زيارة
الدوال في الاكسل (6,958 مشاهده)
ربط قاعدة بيانات أكسس (MS Access) مع برنامج الفيجوال بيسك بطريقة(ODBC) (4,597 مشاهده) الدرس الثالث : بعض تطبيقات الدوال في اكسل (3,349 مشاهده) شرح طريقة استعمال الأوتلوك مع بريد الهوتميل (2,728 مشاهده) تغيير لغة واجهة التطبيق من عربي الى انجليزي وبالعكس لـ Windows-based applications (2,669 مشاهده) تعريف الاستعلام وطريقة عرضه في آكسس، أنواع الاستعلامات، نافذة تحديد الاستعلام! (2,638 مشاهده) الدرس الثاني: بعض الحيل لتسهيل برنامج اكسل (2,563 مشاهده) أنواع العلاقات وطريقة الربط بين الجداول. (2,325 مشاهده) دروس في الأوفيس الأكسس - Access0- (2,019 مشاهده) أنشئ قاعدة بياناتك التي ستستند إليها في تعلم طريقة ربط الجداول والاستعلامات. (1,972 مشاهده) مقدمة عامة حول الاكسل وحيل خاصة بالاكسل (1,953 مشاهده) تعريف الفن التشكيلي: (1,947 مشاهده) كيفية حل مشاكل الانترنت اكسبلور Internet Explorer (1,869 مشاهده) الدرس الأول : عمل شريحة في البوربوينت (1,771 مشاهده) اضافه صوت ونص لخلفيه في باور بوينت (1,690 مشاهده) شرح طريقة التجميع Grouping في برنامج الاكسل (1,595 مشاهده) دورة الأكسس: الدرس السادس : منوعات في أكسيس . (1,576 مشاهده) دورة الأكسس: الدرس السادس : منوعات في أكسيس .0--- (1,566 مشاهده) التعرف على مكونات الكمبيوتر (1,516 مشاهده) برنامج Windows Movie Maker لتكوين أفلام (1,489 مشاهده) ما هو المات لاب MATLAB؟ (1,410 مشاهده) كيف تجعل برنامجك أكثر تألقا وجمالا باستخدام أداة Active Skin (1,390 مشاهده) درس تعريب المجلة (1,349 مشاهده) مقدمة عن لغة البيسك (1,322 مشاهده) مقدمة في ربط قواعد البيانات داخل بيئة الـ .NET باستخدام الـ VB.NET (1,318 مشاهده)
جديد مواد مع عشوائي
التحويل التلقائي للحروف ل- ل- ه إلى اسم الجلالة0---- (964 مشاهده)
النسبة المئوية لا تظهر بالخط العربي & الشدة وألف المد في لفظ الجلالة0---النسبة المئوية لا تظهر بالخط العربي & الشدة وألف المد في لفظ الجلالة0--- (596 مشاهده) ضبط خيارات اللغة فى الـ Microsoft Word0--- (735 مشاهده) استخدام لوحة المفاتيح في الـ Word0---- (858 مشاهده) إضافة كلمة سر إلي ملفات الورد دون استخدام برامج0--- (925 مشاهده) دمج المراسلات0-- (530 مشاهده) وضع صورة كخلفية للنص0-- (674 مشاهده) السماح للمستخدمين بتعديل أجزاء من ملف وورد محمي (Word2003)0--- (469 مشاهده) كتابة الأرقام الكسرية ورموز المعادلات0-- (771 مشاهده) درس كامل عن الدمج السهل من لوحة المفاتيح ف0-ي برنامج الـ Word (506 مشاهده) دورة الأكسس: الدرس السادس : منوعات في أكسيس .0--- (1,566 مشاهده) دورة الأكسيس : الدرس الرابع : العلاقات0---- (799 مشاهده) أساسيات في Access0--0 (612 مشاهده) تصميم تقرير لطباعة البيانات0---- (606 مشاهده) تصميم نموذج استعراض البيانات0--تصميم نموذج استعراض البيانات0-- (598 مشاهده) تصميم نموذج إدخال البيانات0--- (684 مشاهده) إنشاء قوائم خاصة باستخدام الماكرو(1)0-- (554 مشاهده) خطوات إنشاء الماكرو في تذييل النموذج (2)0-- (460 مشاهده) خطوات إنشاء الماكرو في تذييل النموذج (1)0- (419 مشاهده) استعلامات SQL في Access - تعديل الجداول وإضافة الحقول0- (570 مشاهده) استعلامات SQL في Access - تحديث البيانات الجدولية0-- (497 مشاهده) الاستعلامات الإجرائية -4 (استعلام الحذف)0--- (289 مشاهده) الاستعلامات الإجرائية -2 (استعلام الإلحاق)0--- (378 مشاهده) تصميم تقرير لطباعة الإجمالي0--- (394 مشاهده) استعلامات التحديد Select Query مع أمثله (1)0--- (518 مشاهده)
روابط ذات صلة
روابط دليل وصلات
خطوط منتديات مدرسة المشاغبين افلام مقاطع يوتيوب بروكسي proxy ماسنجر مسنجر العاب فلاش اغاني اناشيد مسجات رسائل sms جوال موبايل بلوتوث صور جديدة برامج جديدة خطوط بث مباشر مشاهدة قنوات فضائية على النت تلفزيون راديو television radio tv live منتديات فراشة حواء - للبنات للنساء للستات للحريم |
دروس كمبيوتر وصيانة دروس حاسب دروس مجلة درس نيوك phpnuke الدروس دروس مسنجر MSN - yahoo - Gmail دروس منتديات vBulletin دروس الجوالات والهواتف دروس السي بنل cpanel دروس اكسس access دروس بيونت شوب برو - point shop pro دروس برمجة php - mysql دروس برامج منوعة software دروس ثري دي ماكس 3D max دروس جافا سكريبت JavaScript دروس دريم ويفر DreamWeaver دروس شبكات Networks دروس سويش - swish دروس فلاش - flash دروس فيجوال بيسك Visual Basic دروس فرونت بيج - frontpage دروس فوتوشوب photoshop دروس هكر hacker crack virus > سي ++ > الدرس السابع - المتغيرات الحرفية
اعلانات في الموقع على جميع الصفحات
الدرس السابع - المتغيرات الحرفية
لقد تحدثنا في الدرس السابق عن تخزين الحروف في مصفوفات وألان سوف نعيد ما قلناه بشئ من التفصيل لنأخذ مثال مشابه لما سبق تماما char A[50]; سوف تتذكر الآن ماقلناه بأن المصفوفة السابقة تقوم بتخزين اسم او مجموعة حروف عددها 50 حرف شاملا المسافات التي بين الاسماء فعند ضغطك على قضيب المسافات يعتبر حرف ولكنه ليس له شكل لينتج المسافة بين الكلمات المهم ان المجموع 50 حرف تبدء المصفوفة من صفر الى 49 كما قلنا سابقا ان مصفوفات سي++ تبدء من صفر وليس من واحدد ولذلك الاعداد من صفر الى 49 هي 50 عدد وبالتالي عدد الحرف المخزنة هي 50 حرف كما سبق وطلبت وتم تلبية طلبك كل ذلك قلناه سابقا ولكن دعني اضيف بأن عدد الحروف التي سوف تدخلها سوف تكون 49 فقط وليس 50 لان سي++ تضيف في نهاية المتغير الحرف رقم 50 من عندها وهو الحرف \0 وهو يعني نهاية المتغير الحرفي ليعرف نظام التشغيل بأن هذه هي نهاية المتغير ولا يوجد شئ بعدها والرمز السابق يطلق عليه NULL character وخلاصة القول ان تعلن عن المصفوفة بعدد يزيد بواحد عن سعتها المدخلة لا تتضايق مما تفعلة سي++ من اضافة رمز على حسابك الخاص في نهاية المتغير انك تفعل ذلك وانا ايضا افعل ذلك فعند كتابة فقرة مكونة من حروف نضع نقطة في نهاية الكلام لنفيد القارئ بأن الكلام انتهى – أليس كذلك
استخدام المؤشرات للاعلان عن متغيرات الحروف يمكنك ايضا ان تعلن عن المتغير الحرفي باستخدام المؤشرات وهو درس كان يجب ان اشرحة ضمن الدروس السابقة ولكني رأيت ان اتركه للنهاية مع انه من المفترض ان يكون في البداية ولكن لصعوبته قليلا تلافيت وضع امثلة تحتوى مؤاشرات ما أمكن في البداية انتظارا لشرحة – يمكنك ان تعلن عن متغير حرفي بهذه الطريقة char *A; وهذه طريقة اخرى للاعلان عن متغيرات حرفية تحتوي مميزات اكبر A = new char [50]; ولنأخذ طريقة صياغة الامر السابق بجدولنا المعتاد
والجديد في الصيغة السابقة هو انك بعد ان تنتهي من جميع العمليات الخاصة بالمصفوفة السابقة يمكن ان تلغيها ولذلك لتفريغ المساحة الخاصة بها من الذاكرة وهذه هي سي++ القوية جدا وذلك بالصيغة التالية
delete [A] ; ادخال المتغيرات الحرفية بالطبع ليس عندك مشكلة الآن في ادخال المتغيرات الحرفية باستخدام cin ولكن لزم هنا التنويه بأن هذا الامر بالفعل سوف يدخل الحروف ولكنه سوف يتوقف عن الادخال عند الضغط على قضيب المسافة فلو انك تريد ادخال الاسم Mohamad Hasan الى متغير حرفي سوف يستقبل الاسم Mohamad وعند ضغطك على قضيب المسافة لادخال بقية الاسم Hasan حينها سوف يتوقف ولا يقبل الا الجزء الاول من الاسم وعليه استخدام احد عناصر فئة cin والفئات سوف نشرحها في درس قادم وهو cin.getline (A,50,’\n’); وصيغتة كما يلي
مزيدا من الدوال التي تتعامل مع المتغيرات الحرفية انها عدد من الدوال للمقارنة بين الحروف والتعامل معها كما سيلي شرحه char Name1 [30] = “MOHAMAD HASAN”; char Name2 [30] = “mohamad hasan”; int L; L = strcmp (Name1 , Name2); الدالة strcmp تقارن بين متغيرين حرفيين مع الاخذ في الاعتبار حالة الحروف الصغيرة والكبيرة فالحرف A بالنسبة لها غير الحرف a وتعيد قيمة عدد صحيح يخزن في المتغير الصحيح L كما يلي
ربما يسأل احدكم سؤال ما معنى ان يكون اسم اكبر من اسم حيث ان اسم يساوي اسم هو شئ مفهوم اي تطبق الحروف فما معنى ان يكون اكبر او اصغر – نعم ربما يهمك فقط عملية التساوى كأن تدخل كلمة سر يتم مقارنتها مع كلمة اخرى مخزنة داخل الحاسب للتعرف على الشخص اما حالة ان يكون الاسم اكبر او اصغر فهي نادرة الاستخدام وتستخدم فقط في ترتيب الاسماء ابجديا ومعنى اكبر ان يكون ترتيب الحروف في جدول اسكي للاسم الاكبر يلي ترتب الحروف للمتغير الاصغر . في المثال السابق لن تكون قيمة L تساوي صفر رغم ان الحروف واحدة للاسمين ولكن مرة حروف صغيرة ومرة حروف كبيرة ولكن هناك الدالة التالية التي لاتهتم بحالة الحروف
char Name1 [30] = “MOHAMAD HASAN”; char Name2 [30] = “mohamad hasan”; int L; L = strcmpi (Name1 , Name2);
هذه الدالة strcmpi سوف تعطي قيمة = صفر لان الاسمين متساويين وهي لاتهتم بحالة الحروف الحاق متغير حرفي بآخر strcat
char Name1 [30] = “Mohamad”; char Name2 [30] = “Hasan”; int L; strcat (Name1 , Name2); تقوم الدالة بالحاق الاسم الثاني بالاول ليصبح الاسم الثاني عبارة عن الاسمين مدموجين وتكون النتيجة ان المتغير الثاني Name2 بعد العملية السابقة يصبح حاملا القيمة Mohamad Hasan
تحويل الحروف الصغيرة الى كبيرة strupr
char Name [30] = “mohamad hasan”; strupr (Name); بعد العملية السابقة يتحول المتغير Name الى MOHAMAD HASAN
تحويل الحروف الكبيرة الى صغيرة strlwr
char Name [30] = “MOHAMAD HASAN”; strlwr (Name); بعد العملية السابقة يتحول المتغير Name الى mohamad hasan
قياس طول متغير حرفي strlen char Name [30] = “MOHAMAD HASAN”; int L; L = strlen (Name); بعد العملية السابقة سيتم قياس طول المتغير الحرفي او عدد حروفه ويوضع كعدد بالمتغير L حيث سبق الاعلان عنه كعدد صحيح واليك مثال يشمل كل ما سبق شرحه #include <iostream.h> //For cout #include <string.h> //For many of the string functions int main() { char name[50]; //Declare variables char lastname[50]; //This could have been declared on the last line cout<<"Please enter your name: "; //Tell the user what to do cin.getline(name, 50, '\n'); //Use gets to input strings with spaces // or just to get strings after the user presses enter
if(!strcmpi("Mohamad", name)) //The ! means not,strcmpi returns 0 for { //equal strings cout<<"That's my name too."<<endl; //Tell the userif its my name
} else //else is used to keep it from always { //outputting this line cout<<"That's not my name." }
cout<<"What is your name in uppercase..."<<endl; strupr(name); //strupr converts the string to uppercase cout<<name<<endl; cout<<"And, your name in lowercase..."<<endl; strlwr(name); //strlwr converts the string to lowercase cout<<name<<endl; cout<<"Your name is "<<strlen(name)<<" letters long"<<endl; //strlen returns //the length of the string cout<<"Enter your last name:"; gets(lastname); //lastname is also a string strcat(name, " "); //We want to space the two names apart strcat(name, lastname); //Now we put them together, we a space in //the middle cout<<"Your full name is "<<name; //Outputting it all... return 0;
} درس الدرس السابع - المتغيرات الحرفية
أضف هذه المادة في موقعك:
مواد مشابهة:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||









