C++ ermittelt die Ausführungszeit von Cheng Xuns Code

Nehmen wir als Beispiel, wie man den größten gemeinsamen Teiler zweier Zahlen findet.

eine Funktion definieren,

 int greatestCommonDivisor(int a, int b) {
	const int minNum = (a < b) ? a : b;
	for (int i = minNum; i >= 1; i--) {
		if (a%i ==0 && b%i ==0 ){
			return i;
		}
	}
	return 1;
}

Importieren Sie die Header-Datei Window.h, bevor Sie die Funktion aufrufen

DWORD startTime = GetTickCount();//计时开始

nach dem Aufruf der Funktion

DWORD endTime = GetTickCount();//计时开始

Die letzten beiden Zeiten werden subtrahiert, um die Laufzeit des Programms zu erhalten.

Der vollständige Code lautet wie folgt:

#include<iostream>
#include<Windows.h>
using namespace std;

int greatestCommonDivisor(int a, int b);
//暴力枚举
     int greatestCommonDivisor(int a, int b) {
	const int minNum = (a < b) ? a : b;
	for (int i = minNum; i >= 1; i--) {
		if (a%i ==0 && b%i ==0 ){
			return i;
		}
	}
	return 1;
    }
}

int main() {

	int a;
	int b;
	cout << "请输入a的值" << endl;
	cin >> a;
	cout << "请输入b的值" << endl;
	cin >> b;
        //计时开始
	DWORD startTime = GetTickCount();
	int x = greatestCommonDivisor(a, b);
        //计时结束
	DWORD endTime = GetTickCount();
	cout << "The run time is:" << endTime - startTime << "ms" << endl;
	cout << "最大公约数为:" << x << endl;
	return 0;

}

おすすめ

転載: blog.csdn.net/Yajyaj123/article/details/126976255