Wie zur Verwendung einer C programmieren Armstrong Zahlen überprüfen

February 22

Wie zur Verwendung einer C programmieren Armstrong Zahlen überprüfen

Eine Armstrong-Nummer ist eine ganze Zahl, die die Summe der n-ten Befugnisse der seine Ziffern identisch ist, wobei n die Anzahl der Ziffern ist. Ein einfaches Beispiel ist 5. Es ist eine Ziffer. 5 hoch 1 ist 5. Ein etwas komplexeres Beispiel ist 407. Es hat 3 Ziffern. 4 hoch 3 (64) plus 0 hoch 3 (0) plus 7 hoch 3 (343) entspricht 407. Solche Berechnungen sind leicht zu berechnen, mit einem C-Programm. Ein einfaches Microsoft Visual C++-Programm veranschaulicht dies mit nur wenigen Zeilen Code.

Anweisungen

1 Klicken Sie auf das Windows-Symbol "Start" wählen Sie "Alle Programme", dann "Microsoft Visual Studio 2010 Express." Klicken Sie auf "Microsoft Visual C++ 2010 Express."

2 Klicken Sie im Menü "Datei", und navigieren Sie zu "Neu." Klicken Sie auf "Projekt", um das Dialogfeld Neues Projekt öffnen.

3 Klicken Sie in der Strukturansicht installierte Vorlagen auf der linken Seite des Dialogfelds "Win32". Klicken Sie auf "Win32-Konsolenanwendung." Geben Sie einen Namen für das Projekt (z. B. "Armstrong") in der "Name:" Feld im unteren Bereich des Dialogfensters. Klicken Sie auf "OK", um das Dialogfeld "Win32-Anwendungs-Assistent" öffnen. Klicken Sie auf "Fertigstellen". Obwohl dies ein C++-Projekt handelt, ist der Code im nächsten Schritt reine C.

4 Ersetzen Sie den Standardcode, der angezeigt im Editor mit dem folgenden Code wird:

gehören "stdafx.h"include < stdio.h > gehören < string.h > < math.h > gehören Int main)

{

int x=0,y=0,sum=0;

int n,l;

char num[64];

/* Ask for a number */

printf("Please enter a number: ");

scanf_s("%d", &n);

/* Calculate the number of digits by making

/* it into a string

*/

sprintf_s(num, "%d", n);

l = strlen(num);

/* Calculate sum of the l-th powers of its digits */

y = n;

while (y > 0)

{

x=y%10;

sum=sum+(int) pow((float) x, l);

y=y/10;

}

/* Is the sum of the powers the same as the original number? */

if(sum==n)

printf("%d is an Armstrong number.\n", n);

else

printf("%d is not an Armstrong number.\n", n);

return 0;

}

5 Drücken Sie "F7", oder klicken Sie auf das Menü "Debug" und "Projektmappe" zu kompilieren Sie das Programm und zeigen das Ergebnis im Fenster "Ausgabe" im unteren Bereich von Visual C++:

=== Build: 1 erfolgreich war, 0 schlug, aktuell, 0 0 übersprungen ===

Wenn das Ergebnis "0 gelang es" und dann eine Reihe von Fehlern ist, überprüfen Sie den Code, den Sie eingegeben haben, und stellen Sie sicher, dass es ist identisch mit dem Code in Schritt 4.

6 Drücken Sie "STRG + F5" um das Programm auszuführen. Geben Sie eine ganze Zahl, wenn ein schwarzes Konsolenfenster wird angezeigt und fordert Sie auf. Das Ergebnis der Berechnung wird angezeigt.

Tipps & Warnungen

  • Derselbe Code funktioniert unter Linux und Mac OS X mit der GNU Compiler Collection (GCC). Erstellen Sie armstrong.c in Ihrem bevorzugten Editor und fügen Sie den Code aus Schritt 4 die Zeile weglassen: #include "stdafx.h" und ersetzen Sie Sprintf_s und Scanf_s mit Sprintf und Scanf.
  • Um den Code zu kompilieren, verwenden Sie den Befehl "Gcc armstrong.c."
  • Um den Code auszuführen, verwenden Sie ". / a.out."