Verifique se há c ++ palindroma

Verifique se há c ++ palindroma
Geralmente usamos strings em nossos programas aplicando diferentes operações a eles. Às vezes, essa situação ocorre quando é necessário obter o valor resultante na ordem inversa. As mesmas letras na corda com a ordem reversa são conhecidas como um 'palíndromo'. Em C ++, existem várias maneiras de verificar se a string ou valores numéricos são palíndromos. Neste guia, usamos três abordagens diferentes para verificar o status da string.

Exemplo de amostra:

String de entrada: Godog

Reverter: Godog

Saída: É um palíndromo porque o inverso é equivalente à sequência de entrada.

Implementação

Exemplo 1

Neste exemplo, tomaremos uma string como uma entrada e verificaremos se o inverso dessa string é o mesmo ou não. Faremos uma abordagem simples na qual usaremos uma função interna da função C ++ 'reversa' diretamente para criar o inverso da string. Mas no início, precisamos incluir uma biblioteca que tornará o usuário capaz de herdar alguns módulos e recursos incluídos no arquivo de cabeçalho.

#incluir

Depois de apresentar a biblioteca, uma função chamada 'ispalindrome' é criada para verificar se a string especificada é um palíndromo. Ele tomará a string como um parâmetro porque o reverso da função será aplicado a esta string. Uma variável do tipo string armazenará o argumento aprovado e, posteriormente, essa variável será usada. Chamaremos essa função interna, que conterá dois parâmetros. Esses dois parâmetros são recursos internos em C++. A função BEGIN () lida com o retorno do primeiro personagem da string. Ao mesmo tempo, a função final () é a que retorna o iterador que aponta para o caráter final da string. Ambas as funções serão acessadas através da variável string. Essas funções são os recursos das funções de string.

Reverso (p.BEGIN (), P.fim());

Como resultado, os caracteres iniciais e finais são trocados. Então usamos uma instrução if-else para verificar a sequência invertida se for semelhante à sequência inserida ou não. Se corresponder, a mensagem 'Sim' será exibida; Caso contrário, é 'não'.

Fora do corpo da função, o programa principal é declarado aqui. Uma string é apresentada aqui. A sequência 'ABCDCBA' contém 7 letras; Os 3 primeiros e as últimas 3 letras são iguais. Assim, ao revertê -los, o valor resultante será o mesmo.

Ispalindrome (s);

Salve o código -fonte no arquivo com qualquer extensão de nome de 'C'. E então compilá -lo usando um compilador. O compilador usado para a compilação da linguagem de programação C ++ é g++.

$ g ++ -o amostra de amostra.c
$ ./amostra

Na execução do arquivo, você verá que 'sim' é o valor resultante.

Exemplo 2

Neste exemplo, envolvemos o usuário. Pediremos ao usuário que insira o valor desejado, para que o sistema possa verificar e exibir o resultado. A biblioteca usada para o programa é 'iostream'; Por causa dessa biblioteca, podemos executar recursos de CIN e Cout; Em outras palavras, o usuário pode interagir com o programa usando este arquivo de cabeçalho.

#incluir

Nesta função, não precisamos usar a função reversa interna, 'reversa' no programa. Outra abordagem é usada aqui que usa o envolvimento do loop do dado-while. Aqui toda a lógica é aplicada no programa principal em vez de usar uma função separada. Declaramos quatro variáveis ​​do tipo inteiro. Um armazenará o valor que é inserido pelo usuário. Portanto, o primeiro passo é pedir ao usuário que insira o valor. A variável que armazena o valor.

Depois disso, será usado o loop de fazer-while, no qual o número que o usuário entrar será submetido a ter um módulo de 10. Então, o valor do reverso que foi inicialmente inicializado como zero é multiplicado por 10. Isso será zero novamente, mas seguindo as regras, temos que fazê -lo para que o valor seja agregado ao valor armazenado na variável de dígitos. E no final, o número é dividido por 10. A condição inserida no while loop é que o loop continuará iteração até que a variável número tenha que valorizar.

Exibir o inverso da string. E então use uma declaração if-else para verificar a natureza palíndroma da corda dada. Se o valor inverso for igual ao inserido, a mensagem será exibida de que o número é um palíndromo.

Na execução, você verá que, quando o usuário for solicitado a inserir o valor, ele entrou '1221'. Isso contém 4 letras, e os números iniciais são equivalentes aos finais. Portanto, o inverso será o mesmo e, portanto, é um palíndromo.

Se entrarmos '56756'. Desta vez, os valores na partida e nas extremidades não são iguais; portanto, o inverso não será o mesmo; Portanto, esse número não será um palíndromo.

Exemplo 3

Neste exemplo, usamos três bibliotecas para apoiar nosso código -fonte. Dois deles são descritos anteriormente. O terceiro é que ele assume o valor da string para que usemos a função String separadamente.

#incluir

No programa principal, a variável String será declarada como uma string em uma matriz de caracteres, para que a matriz de personagens de 100 tamanhos seja inicializada aqui.

Char S1 [100].

Este exemplo também inclui o envolvimento do usuário. Então o usuário entrará no valor de seu desejo. Novamente, não usaremos o sistema para definir o método, a função interna, 'reverso'. Um loop de um tempo é usado, que itera até que o personagem terminante esteja dentro da matriz do personagem até o fim. Dentro do loop while, o caractere da string é inserido na variável. Uma variável do tipo inteiro conterá o valor obtido subtraindo um do valor no índice especificado.

N1 = i - 1;

O personagem levará o adição de valor em um índice especificado e 1. O 'n' é usado para exibir o tamanho da string.

A lógica de computação também conterá um loop de tempo, pois é a string, para acessar cada caractere; Precisamos de um loop.

S2 [i] = s1 [n - i -1];
i ++;

Isso calculará o valor reverso e será exibido então. Da mesma forma, se o inverso for o mesmo, será exibido como um palíndromo. Caso contrário, não é. Agora vamos executar o arquivo para ver os resultados. O usuário será solicitado a inserir o valor, os números totais serão calculados e o resultado será exibido, o que significa que a string é um palíndromo.

Um valor numérico é inserido; Seu inverso não é igual, então não é um palíndromo.

Conclusão

O artigo 'Verifique o palíndromo c ++' é sobre o processo de corrente da declaração de entrada se for um palíndromo ou não. Isso é feito com o reverso e comparando -o com o valor de entrada. Nós passamos por três metodologias diferentes. Esperamos que este artigo seja favorável para os usuários.