📜  翻转时检查数字是否有效

📅  最后修改于: 2021-04-29 01:05:32             🧑  作者: Mango

给定一个表示数字的字符串str ,任务是查找该数字是否颠倒(即颠倒),是否有效。
例子:

做法:只有数字1,38时颠倒了,可形成另一个有效数字位数。如果该数字包含除此以外的数字,则打印“否”,然后打印是”
下面是上述方法的实现:

C++
// C++ implementation of the approach
#include 
using namespace std;
 
// Function that returns true if
// str is Topsy Turvy
bool topsyTurvy(string str)
{
 
    // For every character of the string
    for (int i = 0; i < str.length(); i++) {
 
        // If the current digit cannot form a
        // valid digit when turned upside-down
        if (str[i] == '2' || str[i] == '4'
            || str[i] == '5' || str[i] == '6'
            || str[i] == '7' || str[i] == '9') {
            return false;
        }
    }
 
    return true;
}
 
// Driver code
int main()
{
    string str = "1234";
 
    if (topsyTurvy(str))
        cout << "Yes";
    else
        cout << "No";
 
    return 0;
}


Java
// Java implementation of the approach
import java.util.*;
 
class GFG
{
 
// Function that returns true if
// str is Topsy Turvy
static boolean topsyTurvy(char[] str)
{
 
    // For every character of the string
    for (int i = 0; i < str.length; i++)
    {
 
        // If the current digit cannot form a
        // valid digit when turned upside-down
        if (str[i] == '2' || str[i] == '4' ||
            str[i] == '5' || str[i] == '6' ||
            str[i] == '7' || str[i] == '9')
        {
            return false;
        }
    }
    return true;
}
 
// Driver code
public static void main(String[] args)
{
    String str = "1234";
 
    if (topsyTurvy(str.toCharArray()))
        System.out.println("Yes");
    else
        System.out.println("No");
}
}
 
// This code is contributed by Rajput-Ji


Python3
# Python3 implementation of the approach
 
# Function that returns true if
# str is Topsy Turvy
def topsyTurvy(string) :
 
    # For every character of the string
    for i in range(len(string)) :
         
        # If the current digit cannot form a
        # valid digit when turned upside-down
        if (string[i] == '2' or string[i] == '4' or
            string[i] == '5' or string[i] == '6' or
            string[i] == '7' or string[i] == '9') :
            return False;
             
    return True;
 
# Driver code
if __name__ == "__main__" :
 
    string = "1234";
 
    if (topsyTurvy(string)) :
        print("Yes");
    else :
        print("No");
 
# This code is contributed by AnkitRai01


C#
// C# implementation of the approach
using System;
class GFG
{
 
// Function that returns true if
// str is Topsy Turvy
static bool topsyTurvy(char[] str)
{
 
    // For every character of the string
    for (int i = 0; i < str.Length; i++)
    {
 
        // If the current digit cannot form a
        // valid digit when turned upside-down
        if (str[i] == '2' || str[i] == '4' ||
            str[i] == '5' || str[i] == '6' ||
            str[i] == '7' || str[i] == '9')
        {
            return false;
        }
    }
    return true;
}
 
// Driver code
public static void Main(String[] args)
{
    String str = "1234";
 
    if (topsyTurvy(str.ToCharArray()))
        Console.WriteLine("Yes");
    else
        Console.WriteLine("No");
}
}
 
// This code is contributed by 29AjayKumar


Javascript


输出:
No