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

C ++주어진 숫자가 매우 행운이 좋은지 확인하는 프로그램

주어진 숫자를 입력받아 행운의 숫자인지 확인하고 결과를 표시하는 작업입니다.

행운의 숫자는 무엇인가요

행운의 숫자란 각 숫자가 다른 숫자인 숫자를 말합니다. 최소한 한 자리가 중복되면 그 숫자는 행운의 숫자로 간주되지 않습니다.

示例

입력-: n = 1234
출력-: 행운의 숫자입니다
설명-: 숫자 n에 중복된 숫자가 없기 때문에 행운의 숫자입니다
입력-: n = 3434
출력-: 행운의 숫자가 아닙니다
설명-: 주어진 숫자 n에서 3 그리고 4 이중으로 반복되기 때문에 행운의 숫자가 아닙니다

주어진 프로그램에서 사용하는 방법은 다음과 같습니다-

  • 사용자가 입력한 숫자 n을 통해 행운의 숫자인지 확인합니다

  • 한 번호의 크기까지 전체 숫자를 탐색합니다

  • 각 번호의 방문을 표시하고 이미 찾았는지 확인합니다

  • 지정된 번호가 행운의 번호인지 표시합니다

算法

Start
Step1-> declare function to check whether a given number is lucky or not
   bool check_lucky(int size)
   declare bool arr[10]
   Loop For int i=0 and i<10 and i++
      Set arr[i] = false
   End
   Loop While(size > 0)
      declare int digit = size % 10
      IF (arr[digit])
         return false
      End
      set arr[digit] = true
      Set size = size/10
   End
   return true
Step 2-> In main() Declare int arr[] = {0,34,2345,1249,1232{}
   calculate int size = sizeof(arr)/sizeof(arr[0])
   Loop For int i=0 and i<size and i++
      check_lucky(arr[i])?
      print is Lucky : print is not Lucky
   End
Stop

示例

#include<iostream>
using namespace std;
//如果有数字,则返回true。
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] << " is Lucky \n": cout << arr[i] << " is not Lucky \n";
    return 0;
{}

출력 결과

19 is Lucky
34 is Lucky
2345 is Lucky
1249 is Lucky
1232 is not Lucky