Comprobación de pangrama

Dada una string, compruebe si es Pangram o no. Un pangrama es una oración que contiene todas las letras del alfabeto inglés.
Ejemplos: El rápido zorro marrón salta sobre el perro perezoso” es un Pangrama [Contiene todos los caracteres de la ‘a’ a la ‘z’] 
“El veloz zorro marrón salta sobre el perro” no es un Pangrama [No contiene todos los caracteres caracteres de ‘a’ a ‘z’, ya que faltan ‘l’, ‘z’, ‘y’]

Creamos una array mark[] de tipo booleano. Iteramos a través de todos los caracteres de nuestra string y cada vez que vemos un carácter lo marcamos. Minúsculas y mayúsculas se consideran iguales. Entonces, ‘A’ y ‘a’ están marcados en el índice 0 y, de manera similar, ‘Z’ y ‘z’ están marcados en el índice 25.

C++

// A C++ Program to check if the given
// string is a pangram or not
#include <bits/stdc++.h>
using namespace std;
 
// Returns true if the string is pangram else false
bool checkPangram(string& str)
{
    // Create a hash table to mark the characters
    // present in the string
    vector<bool> mark(26, false);
    // For indexing in mark[]
    int index;
    // Traverse all characters
    for (int i = 0; i < str.length(); i++) {
        // If uppercase character, subtract 'A'
        // to find index.
        if ('A' <= str[i] && str[i] <= 'Z')
            index = str[i] - 'A';
        // If lowercase character, subtract 'a'
        // to find index.
        else if ('a' <= str[i] && str[i] <= 'z')
            index = str[i] - 'a';
        // If this character is other than english
        // lowercase and uppercase characters.
        else
            continue;
        mark[index] = true;
    }
 
    // Return false if any character is unmarked
    for (int i = 0; i <= 25; i++)
        if (mark[i] == false)
            return (false);
    // If all characters were present
    return (true);
}
 
// Driver Program to test above functions
int main()
{
    string str = "The quick brown fox jumps over the"
                 " lazy dog";
    if (checkPangram(str) == true)
        printf(" %s is a pangram", str.c_str());
    else
        printf(" %s is not a pangram", str.c_str());
    return (0);
}
 
// This code is contributed by Aditya kumar (adityakumar129)

C

// A C Program to check if the given
// string is a pangram or not
#include <stdbool.h>
#include <stdio.h>
#include <string.h>
 
// Returns true if the string is pangram else false
bool checkPangram(char str[])
{
    // Create a hash table to mark the characters
    // present in the string
    bool mark[26];
    for (int i = 0; i < 26; i++)
        mark[i] = false;
 
    // For indexing in mark[]
    int index;
 
    // Traverse all characters
    size_t size = strlen(str);
    for (int i = 0; i < size; i++) {
 
        // If uppercase character, subtract 'A'
        // to find index.
        if ('A' <= str[i] && str[i] <= 'Z')
            index = str[i] - 'A';
 
        // If lowercase character, subtract 'a'
        // to find index.
        else if ('a' <= str[i] && str[i] <= 'z')
            index = str[i] - 'a';
 
        // If this character is other than english
        // lowercase and uppercase characters.
        else
            continue;
 
        mark[index] = true;
    }
 
    // Return false if any character is unmarked
    for (int i = 0; i <= 25; i++)
        if (mark[i] == false)
            return (false);
 
    // If all characters were present
    return (true);
}
 
// Driver Program to test above functions
int main()
{
    char str[]
        = "The quick brown fox jumps over the lazy dog";
    if (checkPangram(str) == true)
        printf(" %s is a pangram", str);
    else
        printf(" %s is not a pangram", str);
    return (0);
}
 
// This code is contributed by Aditya kumar (adityakumar129)

Java

// Java Program to illustrate Pangram
class GFG {
 
    // Returns true if the string
    // is pangram else false
    public static boolean checkPangram(String str)
    {
        // Create a hash table to mark the
        // characters present in the string
        // By default all the elements of
        // mark would be false.
        boolean[] mark = new boolean[26];
 
        // For indexing in mark[]
        int index = 0;
 
        // Traverse all characters
        for (int i = 0; i < str.length(); i++) {
            // If uppercase character, subtract 'A'
            // to find index.
            if ('A' <= str.charAt(i) && str.charAt(i) <= 'Z')
                index = str.charAt(i) - 'A';
 
            // If lowercase character, subtract 'a'
            // to find index.
            else if ('a' <= str.charAt(i) && str.charAt(i) <= 'z')
 
                index = str.charAt(i) - 'a';
 
            // If this character is other than english
            // lowercase and uppercase characters.
            else
                continue;
            mark[index] = true;
        }
 
        // Return false if any character is unmarked
        for (int i = 0; i <= 25; i++)
            if (mark[i] == false)
                return (false);
 
        // If all characters were present
        return (true);
    }
 
    // Driver Code
    public static void main(String[] args)
    {
        String str = "The quick brown fox jumps over the lazy dog";
 
        if (checkPangram(str) == true)
            System.out.print(str + " is a pangram.");
        else
            System.out.print(str + " is not a pangram.");
    }
}

Python3

# A Python Program to check if the given
# string is a pangram or not
 
def checkPangram(s):
    List = []
    # create list of 26 characters and set false each entry
    for i in range(26):
        List.append(False)
         
    # converting the sentence to lowercase and iterating
    # over the sentence
    for c in s.lower():
        if not c == " ":
 
            # make the corresponding entry True
            List[ord(c) -ord('a')]= True
             
    # check if any character is missing then return False
    for ch in List:
        if ch == False:
            return False
    return True
 
# Driver Program to test above functions
sentence = "The quick brown fox jumps over the little lazy dog"
 
if (checkPangram(sentence)):
    print ('"'+sentence+'"')
    print ("is a pangram")
else:
    print ('"'+sentence+'"')
    print ("is not a pangram")
 
# This code is contributed by Danish Mushtaq 

C#

// C# Program to illustrate Pangram
using System;
class GFG {
 
    // Returns true if the string
    // is pangram else false
    public static bool checkPangram(string str)
    {
 
        // Create a hash table to mark the
        // characters present in the string
        // By default all the elements of
        // mark would be false.
        bool[] mark = new bool[26];
 
        // For indexing in mark[]
        int index = 0;
 
        // Traverse all characters
        for (int i = 0; i < str.Length; i++) {
            // If uppercase character, subtract 'A'
            // to find index.
            if ('A' <= str[i] && str[i] <= 'Z')
                index = str[i] - 'A';
 
            // If lowercase character,
            // subtract 'a' to find
            // index.
            else if ('a' <= str[i] && str[i] <= 'z')
                index = str[i] - 'a';
 
            // If this character is other than english
            // lowercase and uppercase characters.
            else
                continue;
 
            mark[index] = true;
        }
 
        // Return false if any
        // character is unmarked
        for (int i = 0; i <= 25; i++)
            if (mark[i] == false)
                return (false);
 
        // If all characters
        // were present
        return (true);
    }
 
    // Driver Code
    public static void Main()
    {
        string str = "The quick brown fox jumps over the lazy dog";
 
        if (checkPangram(str) == true)
            Console.WriteLine(str + " is a pangram.");
        else
            Console.WriteLine(str + " is not a pangram.");
    }
}
 
// This code is contributed by nitin mittal.

Javascript

<script>
 
// A JavaScript Program to check if the given
// string is a pangram or not
 
 
// Returns true if the string is pangram else false
function checkPangram(str)
{
    // Create a hash table to mark the characters
    // present in the string
    mark = new Array(26).fill(false);
 
    // For indexing in mark[]
    let index;
 
    // Traverse all characters
    for (let i = 0; i < str.length; i++) {
 
        // If uppercase character, subtract 'A'
        // to find index.
        if ('A' <= str[i] && str[i] <= 'Z')
            index = str.charCodeAt(i) - 'A'.charCodeAt(0);
 
        // If lowercase character, subtract 'a'
        // to find index.
        else if ('a' <= str[i] && str[i] <= 'z')
             index = str.charCodeAt(i) - 'a'.charCodeAt(0);
 
        // If this character is other than english
        // lowercase and uppercase characters.
        else continue;
 
        mark[index] = true;
    }
 
    // Return false if any character is unmarked
    for (let i = 0; i <= 25; i++)
        if (mark[i] == false)
            return false;
 
    // If all characters were present
    return true;
}
 
// Driver Program to test above functions
 
let str = "The quick brown fox jumps over the lazy dog";
 
document.write(str,"</br>")
 
if (checkPangram(str) == true)
    document.write("is a pangram");
else
    document.write("is not a pangram");
 
// This code is contributed by shinjanpatra.
</script>

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *