- تاريخ التسجيل
- 14 سبتمبر 2012
- المشاركات
- 2,834
- المجموعة
- ذكر
- الدفعة الدراسية
- 2012
- الكلية
- كلية تقنية المعلومات
- التخصص
- CS - متقاعد
للاسف مو راضي يصير install البرنامج اللي نستخدمه ف اللاب
عندي وندوز 8
تقصدون vmware player ؟
شنو المشكلة اللي تطلع

للاسف مو راضي يصير install البرنامج اللي نستخدمه ف اللاب
عندي وندوز 8

تقصدون vmware player ؟
شنو المشكلة اللي تطلع![]()
عليكم السلامالسلام عليكم
عندي سؤال عن أسايمنت2
- Write a program “sort.cpp” that reads n integers from a file and stores them in an array. The program then sorts the array and prints the sorted array.
هذا أول بارت .. يرتبط ببارت2 بس بجزء رقم3 ؟
يعني بارت ون نسوي كرييت فايل وندخل فيه قيم من عندنا وندخل القيم في أري ونسوي ليهم سورت ونطبعهم فما ليه علاقة ب unsorted.txt صح ؟
وبارت2 رقم 2 ما ليه علاقة ببارت1 له .. بحيث ما نستخدم فنكشنات بارت ون صح؟
بارت ون مجرد تدخلين قيم الاريه من الملف و تنتهي شغلته هني و بارت 2 سورت و برنت للاريه نفسه
ما أعرف لسالفة ال fork لاني مو ماخذ المقرر بس حل السؤال حسب كلامش المفروض يصير بهاذي الطريقة ، كملاحظة حق الراندوم فايو استخدمت فنكشن اسمها rand من مكتبة stdlib ما ادري اذا مسموح تستخدمونها او لا أو في طريقة علموكم اياها عشان تدخلون راندوم فاليوبارت 1 ندخل القيم في فايل وننقلهم الى أري ونسوي ليهم سورت
بارت 2 بعد ندخل قيم بس جنريت راندوم انتجر في unsorted ونسوي ليهم نفس بارت 1 ننقلهم الى أري ونسوي ليهم سورت
بالاضافة الى ان الجزء الاخير نشغل منه بارت 1
يعني يتشابهون البارتين .. الفرق الثاني محددة الفايلات بالضبط والقيم عشوائية مو من عند اليوزر والعمليات تتم عن طريق fork
الرابط للبارتين بس رقم 3 في بارت 2 ان انشغل اول بارت من خلاله ونستخدم wait عشان ينتظر بارت ون
هذا الي فهمته وسويته
#include<fstream>
#include<cstdlib>
#include<iostream>
using namespace std;
void insertEnd( int arr[] , int length , int element ){
arr[length]=element;
length++;
}
void bubbleSort(int list[], int length)
{
int temp;
int iteration;
int index;
for (iteration = 1; iteration < length; iteration++)
{
for (index = 0; index < length - iteration; index++)
if (list[index] > list[index + 1])
{
temp = list[index];
list[index] = list[index + 1];
list[index + 1] = temp;
}
}
}
int main(){
int n ;
int length = 0 ;
int list[20];
ifstream fin ;
ifstream fin2 ;
ofstream fout ;
fin.open("elementOfArray.txt");
fin2.open("unsorted.txt");
fout.open("unsorted.txt");[COLOR=#008000][/COLOR]
[COLOR=#ff0000]//include 10 elements from file [/COLOR]
[COLOR=#008000]int i = 11 ; [/COLOR]
[COLOR=#008000]while( i > 0 ){[/COLOR]
[COLOR=#008000]fin >> n ;[/COLOR]
[COLOR=#008000]insertEnd( list , length , n );[/COLOR]
[COLOR=#008000]i--;[/COLOR]
[COLOR=#008000]}[/COLOR]
[COLOR=#ff0000]//Sort Element in array [/COLOR]
[COLOR=#008000]bubbleSort(list,length); [/COLOR]
[COLOR=#ff0000]//generate 10 random value and put it in file "unsorted"[/COLOR]
[COLOR=#008000]i = 11 ; [/COLOR]
[COLOR=#008000]while(i > 0 ){[/COLOR]
[COLOR=#008000]n = rand(); [/COLOR]
[COLOR=#008000]fout << n << endl ; [/COLOR]
[COLOR=#008000]i--;[/COLOR]
[COLOR=#008000]}[/COLOR]
[COLOR=#ff0000]//insert random value from "unsorted" file to array [/COLOR]
[COLOR=#008000]i = 11 ; [/COLOR]
[COLOR=#008000]while( i > 0 ){[/COLOR]
[COLOR=#008000]fin2 >> n ;[/COLOR]
[COLOR=#008000]insertEnd( list , length , n );[/COLOR]
[COLOR=#008000]i--;[/COLOR]
[COLOR=#008000]}[/COLOR]
[COLOR=#ff0000]// Sort Array Again after insert random values that genrated in "unsorted.txt" file [/COLOR]
[COLOR=#008000]bubbleSort(list,length);[/COLOR]
[COLOR=#ff0000]// print array[/COLOR]
[COLOR=#008000]cout << " The element of array : " << endl ; [/COLOR]
[COLOR=#008000]for ( int j = 0 ; j < length ; j++){[/COLOR]
[COLOR=#008000] cout << list[j] << " " ;[/COLOR]
[COLOR=#008000]}[/COLOR]
fin.close();
fin2.close();
fout.close();
system("pause");
return 0 ;
}
ما أعرف لسالفة ال fork لاني مو ماخذ المقرر بس حل السؤال حسب كلامش المفروض يصير بهاذي الطريقة ، كملاحظة حق الراندوم فايو استخدمت فنكشن اسمها rand من مكتبة stdlib ما ادري اذا مسموح تستخدمونها او لا أو في طريقة علموكم اياها عشان تدخلون راندوم فاليو
//random values
for(int i = 0; i < 7; i++)
{
value = rand()%101;
file << value << '\n';
}
//store file values in array
int a, count=0;
While (myfile >> a)
{
arr[count]= a;
count++;
}

و والديش ، عفواً:$ واني أحسب انك تاخذ المقرر وتعرف الأسايمنت فأتكلم عن البارتات على أساس عارفهم ومو حاطة كل السؤال فتتوضح البارتات
رحم الله والديك .. تعبناكم ويانا أخي
اني استخدمت هذي الكودات بشكل عام
و السورت وباقي الأشياء مثل الي سويته انت
كود://random values for(int i = 0; i < 7; i++) { value = rand()%101; file << value << '\n'; }
كود://store file values in array int a, count=0; While (myfile >> a) { arr[count]= a; count++; }
بس ما جيكتهم للحين لأن فيه كودات اضافية تعتمد على الـ linux فتحتاج برنامج غير لأن ما تشتغل على الفيجوال
فأحتاج أجيك الفنكشنات كل وحدة بروحها
شكرًا من جديد![]()


void insertEnd( int arr[] , int length , int element ){
arr[length]=element;
length++;
}

كلامك صح ما أنتبهت لهالشي شكراً للتنبيهمداخلة بسيطة
المفروض length يصير باي رفرنس عشان تتغير القيمة مالته

تعرف اراي كركترشلون نحول integer الى arrayofcharacters ???
شلون نحول integer الى arrayofcharacters ???
تعرف اراي كركتر
بعدين تقرأ الارقام من فايل وتخليهم في الاراي

int arr[5]={0,1,2,3,4};
char c[5];
for (int i=0;i<5;i++)
c[i]=arr[i]+'0';

في طريقة أسهل
كود:int arr[5]={0,1,2,3,4}; char c[5]; for (int i=0;i<5;i++) c[i]=arr[i]+'0';
إذا كنتون بتستخدمون هذي الشغلة حق read و write .. ما يحتاج تحولون إلى char ..
الفنكشن تقبل int![]()
تعرف اراي كركتر
بعدين تقرأ الارقام من فايل وتخليهم في الاراي
ما تقبل انتجر يطلع ارقام كبيره لين سوينا run
بس كانها الطريقة ما تنفع لين عندنا ارقام اكثر من 1 digit
شكرا


for (int i=0;i<5;i++)
str+=arr[i]+'0';
write(p[1], arr[], arr.length()+1);
* اذا بنرسل أري عبر البايب
يصير نرسله كامل مرة وحدة أو لازم كل مرة نطرش قيمة ؟
مثلاً
كود:write(p[1], arr[], arr.length()+1);
أو ويش ؟!
* شي ثاني .. عادي نطرش في البايب أري + قيمة مثلا الـ length أو اسم الأري
* و هل اللنث للأري هو نفسه عدد البايت ؟
* في البارت الثالث .. نستخدم مثل البايب الأول أو نسوي كرييت بايب جديد
اذا نستحدم الأول شلون نخلي ان البايب يحمل 3 بروسس
ومسامحة نتعبكم ويانا
write(p[1], arr, sizeof(arr)+1);

