Batool_Alsayed
New Member
- تاريخ التسجيل
- 18 سبتمبر 2014
- المشاركات
- 1
- المجموعة
- أنثى
- الدفعة الدراسية
- 2011
- الكلية
- كلية الهندسة
- التخصص
- هندسة كيميائية
شلون نقدر نستخدم الpointers مع الـ function و struct ?

السلام عليكمهل من شرح او نوتات للماده ,,,,![]()
هل من شرح او نوتات للماده ,,,,![]()




السلام عليكممو فاهمه لموضوع الـ Open File
حتى من نوتات فيصل القائد
+ get line
ممكن أحد يشرح ليي الموضوع
الفايل فهمت انه احنا بناخذ معلومات من فايل و نحط الآوتبت بفايل
بس شلون أسويه مو عارفه
عدنا أول براكتيكال كويز :tears:
#include<iostream>
#include<string>
using namespace std;
int main(){
string name ;
cout << " Enter your first name : " ;
cin >> name ;
cout << " Your First name is : " << name << endl ;
cout << " Now enter your full name : " ;
cin >> name ;
cout << " Your Full Name is : " << name << endl ;
// Look To Last Cout it's include just string before space
system("pause");
return 0;
}
getline(cin,name);
#include<iostream>
#include<string>
using namespace std;
int main(){
string name , birthDay ;
/*
cout << " Enter your first name : " ;
cin >> name ;
cout << " Your First name is : " << name << endl ;
*/
cout << " enter your full name : " ;
getline(cin,name);
cout << " Your Full Name is : " << name << endl ;
// Look To Last Cout it's include just string before space
cout << " Enter your date of birth day : " ;
getline(cin,birthDay);
cout << " Your birth day is : " << birthDay << endl ;
system("pause");
return 0;
}

fstream fin ;
ifstream fin ;
fin.open("name.txt");
getline(fin,name);
fin >> cpr ;
fin >> name ;
fin.close();
ofstream fout ;
fout.open("name.txt);
fout.close();
#include<fstream>
#include<string>
using namespace std;
int main(){
ifstream fin;
ofstream fout;
string name ;
long cpr ;
fin.open("information.txt");
fout.open("information after compile.txt");
getline(fin, name );
fin >> cpr ;
fout<< " Your name is : " << name << " Your born in :" <<1900+(cpr/10000000)<< endl ;
fin.close();
fout.close();
system("pause");
return 0 ;
}

السلام عليكم
# في البداية شنو ال getline ؟ و شلون نستخدمه ؟ و اي مكتبة نحتاج عشان نستخدم ال getline ؟
- ال getline عبارة عن فنكش في مكتبة ال string ، نسختدمها لإضافة اسم طويل أو جملة أو خل نقول على سبيل المثال اسم ثلاث او تاريخ ...إلخ بس في النهاية على سبيل المثال عندنا هذا الكود و ننبغي ندخل اسم Ali Ahmed Hussain ، و جينا استخدمنا هذا الكود على سبيل المثال :
شرح فيديو لتشغيل الكود و الي صار فيه :كود:#include<iostream> #include<string> using namespace std; int main(){ string name ; cout << " Enter your first name : " ; cin >> name ; cout << " Your First name is : " << name << endl ; cout << " Now enter your full name : " ; cin >> name ; cout << " Your Full Name is : " << name << endl ; // Look To Last Cout it's include just string before space system("pause"); return 0; }
https://drive.google.com/file/d/0By6IydPqj2WAWC1Da2xab3ZSaG8/view?usp=sharing
لاحظي في الفيديو ان لما دخلت اول اسم طلعه ليي عادي بدون مشكلة ، بس لما دخلت الاسم الثلاثي طلع ليي بس الاسم الاول قبل لسبيس ؟ عادةً الطلاب يفكرون انهم يسوون ثلاث سترنق على سبيل المثال name1 , name2 , name3 عشان يحلون هاذي المشكلة في هاذي الحالة المشكلة بتنحل ان احنا في السي ان الثاني بنخليه يدخل الاسماء الثلاثة انزين بس هذا مو حل نفرض ان المستخدم بيدخل مثلاً الاسم الى الجد الرابع للشخص نقوم نسوي 6 أسماء ما ينفع هذا الحل ببساط بنستخدم فنكنش ال getline بحيث ان احنا ندخل الاسم لاي حد احنا نبغيه او احتى نقدر ندخل جملة و حتى تاريخ بس حتى التاريخ هني بكون مجرد كتابة على شكلسترنق فما نقدر نتعامل اياه كأنتجر ، دائماً في استخدام ال getline نكتب فنكشن القيت لاين و بين القوسين نكتب في البداية الامر cin و بعدين اسم الفاريبل الي نبغي ندخله على سبيل المثال :
خل نرجع نجرب هذا الشي على الكود السابق مع التعديل عليه اشوي بإستخدام ال getline في المرة الاولى بندخل الاسم الي دخلناه سابقاً الي هو Ali Ahmed Hussain و بنجرب هل بيطلع الاسم كامل او لا بعدها بندخل تاريخ الميلاد كسترنق و بنشوف يصير او لا :كود:getline(cin,name);
الكود بعد التعديل :
فيديو اثناء استخدام الكود :كود:#include<iostream> #include<string> using namespace std; int main(){ string name , birthDay ; /* cout << " Enter your first name : " ; cin >> name ; cout << " Your First name is : " << name << endl ; */ cout << " enter your full name : " ; getline(cin,name); cout << " Your Full Name is : " << name << endl ; // Look To Last Cout it's include just string before space cout << " Enter your date of birth day : " ; getline(cin,birthDay); cout << " Your birth day is : " << birthDay << endl ; system("pause"); return 0; }
https://drive.google.com/file/d/0By6IydPqj2WASFdFXzJnRWZDZlE/view?usp=sharing
هذا بإختصار ال getline و شلون نستخدمه و ليش
------------------------------------------------------------------------------
# نجي لمكتبة ال fstream شنو فائدتها ؟ و ليش نستخدمه ، و شلون نستخدمها و شنهي الفنكشنات الي نستخدمها عادة من مكتبة ال fstream ؟
- مكتبة ال fstream تستخدم لقراءة المعلومات من ملف txt معين او ادخال معلومات الى ملف txt معين بشرط ان كومبايل السورس كود و ملف ال txt يكونون في مكان واحد و الافضل يكونون في ملف واحد بالإضافة لازم نكتب بعد في الكود عند فتح الملفات صيغة الملف الي بنفتحه على سبيل المثال اسم ملف التكست students في فتح الملف ما نكتب فقط students نكتب "students.txt" ، الحين نجي لإدخال و إخراج البيانات من و الى ملف ال txt بنبدأ بإدخال معلومات الى الملف ، للإدخال دائما نحتاج لفايبرل بصيغ fstream على سبيل المثل :
بالاضافة الى ان اذا بنفتح الفايل نستخدم الفنكشن open و عشا نغلق الفايل نستخدم الفنكشن close على سبيل المثال عندنا فايل اسمه name فاضي و نبغي ندخل فيه اسمنا الثلاثي على سبيل المثال ب ال fstream فقبل لا ندخل المعلومات بنفتح هذا الملف بهاذي الطريقةكود:fstream fin ;
عشان ناخذ المعلومات من الملف الي فتحناه بنستخدم ال fin مثل ما نستخدم ال cin في ال iostream اي بما معناه كانه نسوي cin تلقائي من ملف معين على سبيل المثال عندنا اسم ثلاثي و سي بي ار في الملف الي بناخذ منه المعلومات فبناخذ المعلومات من الملف ك cin بهاذي الطريقة :كود:ifstream fin ; fin.open("name.txt");
هني استخدمت ال getline لان مثل ما ذكرت سابقاً الاسم ثلاثي فاذا فقط استخدمتكود:getline(fin,name); fin >> cpr ;
اليوزر بدخل بس اول اسم من الاسم الثلاثي و اذا بنغلقه بكون بهاذي الطريقةكود:fin >> name ;
نجي لإدخال المعلومات و القيام بشيء معين عليها في الملف الثاني بنسوي متغير جديد نوعه ofstream مثال :كود:fin.close();
و مثل ما سوينا في المتغير من نوع ifstream بنفتح الملف بالاوبن في بداية الكود :كود:ofstream fout ;
و بنغلقه في نهاية الكود بهاذي الطريقةكود:fout.open("name.txt);
الفاريبل الي انشاءنها عن طريق ال ifstream دائماً نستخدمها عشان نأخذ معلومات من فايل فقط أما الفاريبل الي انشءنها بواسطة ال ofstream فنستخدمها دائماً لأدخال المعلومات الجديد في الملف الثانيكود:fout.close();
مثال على إدخال و إخراج المعلومات الى ملف معين :
الكود المستخدم :
شرح الكود و شنو التغيير الي صار في الملف الجديد بعد استخدام الكود :كود:#include<fstream> #include<string> using namespace std; int main(){ ifstream fin; ofstream fout; string name ; long cpr ; fin.open("information.txt"); fout.open("information after compile.txt"); getline(fin, name ); fin >> cpr ; fout<< " Your name is : " << name << " Your born in :" <<1900+(cpr/10000000)<< endl ; fin.close(); fout.close(); system("pause"); return 0 ; }
https://drive.google.com/file/d/0By6IydPqj2WAOEhPVHBvOUpNYU0/view?usp=sharing
رابط للملفات المستخدمة في الشرح :
https://drive.google.com/file/d/0By6IydPqj2WAbm0xbHBDY2VRcDg/view?usp=sharing
و عذراً على طول الشرح![]()


عندي سؤال:
اذا output بکون فایل اي واحد صح لفتح الفايل:
fstream outfile
outfile . open ("ABC.txt")
or
fstream fout;
fout . open ("ABC
يعني نستخدم
fout أو outfile؟
أو الثنين نفس الشي؟ مثل اكس و واي؟
أثنينهم مثل الشي مجرد تغير أسم البرميتر مثل ما قلت انت كأنك تقول أكس و واي بس عادةً الدكاترة يكتبون outfile او fout كتمييز ليهم للفت الانتباه ان هذا البرميتر بنستخدمه لطباعة الاوت بوت في ملف ال txtعندي سؤال:
اذا output بکون فایل اي واحد صح لفتح الفايل:
fstream outfile
outfile . open ("ABC.txt")
or
fstream fout;
fout . open ("ABC
يعني نستخدم
fout أو outfile؟
أو الثنين نفس الشي؟ مثل اكس و واي؟
ممكن شرح شامل عن
WHILE ?
int i=0;
while(i<10){
cout<<"i="<<i<<endl;
i++;
}
الwhile وظيفتها تكرار الكود حتى تحقق الشرط
مثلا:
و الoutput بكون :PHP:int i=0; while(i<10){ cout<<"i="<<i<<endl; i++; }
i=1
i=2
i=3
i=4
i=5
i=6
i=7
i=8
i=9
أما ال10 ما بتطلع لان شرط الwhile هو i<10
إيه صح .. شكرانسيت الـ 0

ما يصير أحط لك الإجابة جاهزة حاول فيه ، بس أقدر أقولك بتحتاج تستخدم مكتبة ال cctype للحل بالإضافة بتاخذ كل جزء من الكلام ك char و بتجيكهم واحد واحد بواسطة فنكشن اسمهها isalpha