الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الي مبرمجي ++c

بدأه hwardy2010 في 3 يونيو 2010 · 1 رد · 530 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

البرنامج يقوم ياستقبال البرامترات من شاشة الدوس ، ثم يقوم بقراءة بيانات من ملف يحتوي علي بيانات ( 500، 1000، 1500 ،2000 ، 2500 ،3000) ،واختيار خوارزمية معينة لترتيب هذه بيانات .

طبعا راح تكون عندي مصفوفة واحدة من النوع الصحيح نخزن فيها هذه البيانات بعدين نرسلها الي خوارزمية الترتيب .

وصلت الي نقطة اني لا اعرف كيف ارسل مصفوفة تم حجزها دناميكيا.فقمت بحجز 6مصفوفات في البرنامج كل واحدة بحجم البيانات اللي عندي

،لكن في هذه الحالة البرنامج مش جنرال ،راح يكون خاص بحجم محدود من البيانات .

سؤال اخر كيف أحسب الزمن المستغرق لترتيب كل خوارزمية؟

فارجو مساعدتي في هذه الحلقة الضائعة مني .

data.cpp

write.cpp

sample15.txt

sample10.txt

sample20.txt

sample25.txt

sample30.txt

sample50.txt

سبحان الله وبحمده سبحان الله العظيم

#2

مثال عام على كيفية حجز مصفوفه متغيرة + معرفة الوقت المستغرق في العملية ، سوف يفيدك ان شاء الله:

#include <iostream>
#include <ctime>
using namespace std ;

void setValues (int* ptr, int size);
void printValues (int* ptr, int size);

// run: name.exe [size]
// ex: name.exe 6

int main(int argc, char* argv[]) {
	int size = 0 ;	// size of array

	if ( argc > 1 )	// if there is an argument convert it to number
		size = atoi( argv[1] );
	else {
		cerr << "you must pass size of array in argument" << endl;
		return -1 ;
	}

	clock_t start = clock();

	// your time consuming operation
	int* ptr = new int[size];	// allocate space	
	setValues(ptr,size);		// send ptr to function
	printValues(ptr,size);		// send ptr to function

	clock_t end = clock();
	double executionTime = (double) ((end - start) / CLOCKS_PER_SEC );

	cout << "Execution Time: " << executionTime << endl;

	return (0);
}

void setValues (int* ptr, int size) {
	for (int i=0 ; i<size; i++)
		ptr = i*i ;
}

void printValues (int* ptr, int size) {
	for (int i=0 ; i<size; i++)
		cout << ptr << " " ;
	cout << endl;
}

بالتوفيق،

http://informatic-ar.com منصة تعليمية عربية في علوم الحاسب والبرمجة

https://moalfat.com  للكتب الالكترونية والكورسات التعليمية

Everything we see now is just an engineering solution based on old science

مواضيع مشابهة