Check a Prime Number
Cet exercice pour débutants travaille la syntaxe essentielle et la résolution de problèmes avec Check a Prime Number.
Qu’est-ce que Check a Prime Number ?
Cet exercice pour débutants travaille la syntaxe essentielle et la résolution de problèmes avec Check a Prime Number.
Résolvez Check a Prime Number en C et C++ avec du code exécutable.
Points importants
- Activez les avertissements du compilateur et corrigez-les.
- Connaissez le type et la durée de vie de chaque valeur.
- Validez les entrées et les limites des tableaux.
Exemples de code C et C++
main.c
#include <stdio.h>
int main(void) {
int number = 29, prime = number > 1;
// A composite number has a factor no larger than its square root.
for (int divisor = 2; divisor * divisor <= number; ++divisor)
if (number % divisor == 0) { prime = 0; break; }
printf("%d is %sprime\n", number, prime ? "" : "not ");
}
29 is prime
C++
main.cpp
#include <iostream>
int main() {
int number = 29;
bool prime = number > 1;
// Stop after the square root and on the first divisor.
for (int divisor = 2; divisor * divisor <= number && prime; ++divisor)
prime = number % divisor != 0;
std::cout << number << " is " << (prime ? "" : "not ") << "prime\n";
}
29 is prime
Comparaison entre C et C++
Comparez les implémentations C et C++, modifiez les entrées et testez d’autres cas limites.
C
C expose de petites API procédurales et les détails de représentation.
C++
C++ conserve le modèle bas niveau et ajoute des types et abstractions plus sûrs.
Exercices pratiques
Exécutez les deux versions puis modifiez-les pour observer leurs garanties.
- Ajoutez des entrées invalides et limites.
- Compilez avec -Wall -Wextra -Wpedantic.
- Séparez déclarations et implémentations.