Online Compiler C

#include <stdbool.h> bool isSimpleNumber(int n) { if (n <= 1) return false; // 1 и все большие числа не просты for (int i = 2; i * i <= n; i++) { if (n % i == 0) return false; // Если число делится на любое число от 2 до n/2, не простое } return true; // Число простое } int main() { int number; printf("Enter a number: "); scanf("%d", &number); if (isSimpleNumber(number)) { printf("%d is a simple number.\n", number); } else { printf("%d is not a simple number.\n", number); } return 0; }
1) This code checks if a given integer is a prime number by testing divisibility from 2 up to the square root of the number.

2) Hint: The loop condition `i * i <= n` is more efficient than checking up to `n/2` because it reduces the number of iterations needed.
Hint: Remember that 2 is the smallest prime number, which is why the function returns false for numbers ≤ 1.