1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| const long long valid_checksum = 10101010L; // Valeur renvoyée par le programme lorsqu'il tourne sur une machine qui fonctionne
long long next_prime() { /* ... */ }
long long checksum_incr(long long checksum, long long value) {
// Ajoute value à la checksum. Exemple :
return checksum ^ value;
}
#include <iostream>
int main() {
long long checksum = 0L; // Valeur initiale de la checksum (valeur arbitraire ou définie par l'algorithme de checksum). DOIT ETRE UNE CONSTANTE !
START_TIMER();
for (int i = 0 ; i < 13374242 ; ++i) {
long long prime = next_prime();
checksum = checksum_incr(checksum, prime);
}
END_TIMER();
std::cout << "Time : " << GET_TIMER() << std::endl;
std::cout << (checksum == valid_checksum ? "Le calcul est valide" : "ATTENTION ! LE CALCUL EST INVALIDE !") << std::endl;
} |
Partager