// Questo programma determina se un valore è multiplo di X
// L'esercizio proposto in un libro di informatica
// mi chiede di modificare il programma in C per determinare X
#include <stdio.h>
int multiple(int num); // prototipo
int main(void)
{
int y;
puts("Enter an integer between 1 and 32000: ");
scanf("%d", &y);
// se y è un multiplo X
if (multiple(y)) {
printf("%d is a multiple of X\n", y);
}
else {
printf("%d is not a multiple of X\n", y);
}
}
// determina se num è multiplo di X
int multiple(int num)
{
int x;
int mask = 1; // initializza mask
int mult = 1; // initializza mult
int i;
for ( i = 1; i <= 10; ++i, mask <<= 1) {
if ((num & mask) != 0) {
mult = 0;
break;
}
}
return mult;
}