English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C ++Programm überprüft, ob die angegebene Zahl glücklich ist (alle Ziffern sind unterschiedlich)

Die Aufgabe ist es, zu überprüfen, ob die gegebene Zahl eine glückliche Nummer ist, und das Ergebnis anzuzeigen.

Was ist eine glückliche Nummer

Eine glückliche Nummer ist eine Nummer, bei der alle Ziffern unterschiedlich sind. Wenn mindestens eine Ziffer doppelt vorkommt, wird die Nummer nicht als glückliche Nummer betrachtet.

Beispiel

Eingabe-: n = 1234
Ausgabe-: Es ist eine glückliche Nummer
Erklärung-: Da in der Nummer n keine wiederholte Ziffer vorhanden ist, ist es eine glückliche Nummer
Eingabe-: n = 3434
Ausgabe-: Es ist keine glückliche Nummer
Erklärung-: In der gegebenen Nummer n, 3 und 4 wiederholen sich zweimal, daher ist es keine glückliche Nummer

Die von uns im gegebenen Programm verwendeten Methoden sind wie folgt-

  • Überprüfen Sie die von Benutzer angegebene Zahl n, um zu prüfen, ob es sich um eine glückliche Zahl handelt

  • Durchsuchen Sie das gesamte Zahlenfeld, bis eine Zahl eine bestimmte Größe erreicht

  • Markieren Sie die每次访问过的数字,并检查是否已找到

  • Anzeigen, ob die angegebene Nummer eine glückliche Nummer ist

Algorithmus

Start
Schritt1-> Erkläre Funktion, um zu überprüfen, ob eine gegebene Zahl glücklich ist oder nicht
   bool check_lucky(int size)
   erkläre bool arr[10]
   Schleife For int i=0 und i<10 und i++
      Setze arr[i] = false
   End
   Schleife While(size > 0)
      erkläre int digit = size % 10
      Wenn (arr[digit])
         return false
      End
      setze arr[digit] = true
      Setze size = size/10
   End
   return true
Schritt 2-> In main() Erkläre int arr[] = {0,34,2345,1249,1232{}
   berechne int size = sizeof(arr)/sizeof(arr[0])
   Schleife For int i=0 und i<size und i++
      check_lucky(arr[i])?
      print is Lucky : print is not Lucky
   End
Stop

Beispiel

#include<iostream>
using namespace std;
//Wenn es eine Zahl gibt, wird true zurückgegeben.
bool check_lucky(int size) {
    bool arr[10];
    for (int i = 0; i <10; i++)
        arr[i] = false;
    while (size > 0) {
    int digit = size % 10;
      if (arr[digit])
           return false;
        arr[digit] = true;
        size = size/10;
    {}
    return true;
{}
int main() {
    int arr[] = {0,34,2345,1249,1232};
    int size = sizeof(arr);/sizeof(arr[0]);
    for (int i = 0; i < size;++)
        check_lucky(arr[i]) ? cout << arr[i] << " ist Lucky \n" : cout << arr[i] << " ist nicht Lucky \n"
    return 0;
{}

Ausgabenergebnis

19 ist glücklich
34 ist glücklich
2345 ist glücklich
1249 ist glücklich
1232 ist nicht glücklich