/* Πρόγραμμα: Έλεγχος Αριθμών Armstrong */ #include // Συνάρτηση που ελέγχει αν ένας αριθμός είναι Armstrong int isArmstrong(int num) { int original = num; // Κρατάμε τον αρχικό αριθμό int digit, sum = 0; // digit: κάθε ψηφίο, sum: άθροισμα κύβων while (num > 0) { digit = num % 10; // Παίρνουμε το τελευταίο ψηφίο sum += digit * digit * digit; // Προσθέτουμε τον κύβο του num /= 10; // Αφαιρούμε το τελευταίο ψηφίο } if (sum == original) return 1; // Είναι Armstrong else return 0; // Δεν είναι Armstrong } int main() { int number; do { printf("Δώσε έναν αριθμό (0 για τερματισμό): "); scanf("%d", &number); if (number != 0) { if (isArmstrong(number)) printf("Ο αριθμός %d είναι αριθμός Armstrong.\n", number); else printf("Ο αριθμός %d ΔΕΝ είναι αριθμός Armstrong.\n", number); } } while (number != 0); printf("Τέλος προγράμματος.\n"); return 0; }