![FLAMES usando C ++: 8 etapas FLAMES usando C ++: 8 etapas](https://i.howwhatproduce.com/images/002/image-3145-26-j.webp)
Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-23 15:03
![FLAMES usando C ++ FLAMES usando C ++](https://i.howwhatproduce.com/images/002/image-3145-27-j.webp)
![FLAMES usando C ++ FLAMES usando C ++](https://i.howwhatproduce.com/images/002/image-3145-28-j.webp)
Olá amigos, Todos nós conhecemos o jogo das chamas. Rsrsrs, É um dos jogos mais engraçados que deixou nossa infância mais feliz. Neste instrutível, veremos como codificar um programa flames usando a linguagem C ++.
Etapa 1: conceitos usados
![Conceitos Usados Conceitos Usados](https://i.howwhatproduce.com/images/002/image-3145-29-j.webp)
Aqui eu usei a lista circular duplamente vinculada.
Etapa 2: Função principal
int main ()
{
string name1, name2;
int n1, n2; cout << "DIGITE O NOME:"; getline (cin, nome1); cout << "INSIRA O SEGUNDO NOME:"; getline (cin, nome2);
}
Primeiro, precisamos obter os dois nomes com espaço, portanto, uso a função getline () para obter a string com espaço.
Etapa 3: como omitir caracteres especiais?
void emit (string & a)
{
para (int i = 0; a ! = '\ 0'; i ++)
{
if (a > = 'a' && a <= 'z') {}
else if (a > = 'A' && a <= 'Z') {}
outro
a = '0';
}
}
Agora, precisamos remover os caracteres especiais como &, $, '' … etc. Ao usar esta função, removemos todos os caracteres, exceto alfabetos. Aqui, em vez de remover, substituo por '0'.
Etapa 4: remover os mesmos caracteres
para (i = 0; nome1 ! = '\ 0'; i ++)
para (j = 0; nome2 [j]! = '\ 0'; j ++)
if ((nome1 == nome2 [j] || nome1 == nome2 [j] +32))
{
nome1 = '0';
nome2 [j] = '0';
pausa;
}
É a primeira etapa do jogo flames, que precisamos remover os mesmos personagens que estão presentes nos dois nomes. Este trecho de código nos ajuda a substituir os mesmos caracteres por '0' e também funciona bem mesmo que contenha maiúsculas e minúsculas. A instrução break nos ajuda a evitar a remoção de caracteres repetidos.
j = 0; para (i = 0; nome1 ! = '\ 0'; i ++)
if (name1 ! = '0')
j ++;
para (i = 0; nome2 ! = '\ 0'; i ++)
if (name2 ! = '0')
j ++;
if (j == 0) cout << "SEM CHAMAS";
Aqui, removemos todos os '0's presentes em ambos os nomes. Portanto, finalmente, todos iguais, os personagens são removidos. Em seguida, o j é incrementado que é a contagem das letras que estão presentes em ambos os nomes após a remoção dos mesmos caracteres. Agora precisamos verificar se ele contém pelo menos um caractere ou não. Para tornar o código eficiente, precisamos dizer que não há possibilidade de jogar o jogo flames se ele não contiver personagens únicos.
Etapa 5: Criação de lista circular duplamente vinculada
string a = "chamas";
Primeiro, crie uma string global que contenha "flames".
typedef struct node {
dados char;
nó * próximo, * anterior;
}nó;
nó * superior = NULL, * temp;
Agora, crie uma estrutura que contém dados de caractere, o próximo ponteiro de endereço e o ponteiro de endereço anterior.
Em seguida, crie um ponteiro que aponta para o topo da lista vinculada.
node * ins (char a) {
nó * novo1;
novo1 = novo nó;
new1-> data = a;
novo1-> próximo = NULL;
novo1-> prev = NULL;
if (top == NULL)
{
top = new1;
temp = topo;
}
outro
{
temp-> próximo = novo1;
novo1-> prev = temp;
temp = novo1;
}
voltar ao topo;
}
Em seguida, insira a string "chamas" na lista duplamente vinculada por caractere.
void check (int j) {
int contagem1, sinalizador = 0;
para (int i = 0; a ! = '\ 0'; i ++)
top = ins (a );
}
Etapa 6: Código para jogar as chamas
![Código para jogar as chamas Código para jogar as chamas](https://i.howwhatproduce.com/images/002/image-3145-30-j.webp)
void check (int j)
{
int contagem1, sinalizador = 0;
para (int i = 0; a ! = '\ 0'; i ++)
topo = ins (a );
nó * cur = topo, * prev1;
temp-> próximo = topo;
topo-> prev = temp;
enquanto (1)
{
contagem1 = 1;
while (contagem1 <j)
{
cur = cur-> próximo;
count1 ++;
}
nó * temp1 = cur;
prev1 = corrente-> prev;
cur-> prev-> next = cur-> next;
cur-> próximo-> prev = cur-> prev;
temp1-> próximo = NULL;
livre (temp1);
cur = prev1-> próximo;
nó * teste = cur;
if (teste-> dados == teste-> próximo-> dados)
pausa;
}
}
precisamos executar a lista circular que é a string "chamas" de acordo com a contagem de caracteres únicos. Em seguida, precisamos remover o personagem em "chamas" que coincidem com a contagem. Devemos perceber o uso de uma lista duplamente vinculada neste trecho de código. Isso ajuda muito a remover um determinado personagem. Ele remove continuamente. Até atingir a condição de que os mesmos personagens venham repetidamente.
if (teste-> dados == teste-> próximo-> dados) quebra;
Etapa 7: diga o resultado
switch (cur-> dados)
{
case 'f': cout << "AMIGOS &&";
pausa;
case 'l': cout << "LOVE <3";
pausa;
case 'a': cout << "AFFECTION $";
pausa;
case 'm': cout << "CASAMENTO:)";
pausa;
case 'e': cout << "INIMIGO:(";
pausa;
case 's': cout << "SIBLING";
pausa; }
Use esta instrução switch para dizer ao resultado final que o último caractere permanece após a remoção de todos os outros caracteres de acordo com a contagem.
Agora você pode jogar chamas facilmente apenas inserindo os nomes, é engraçado certo. Jogue este jogo usando os nomes dos seus amigos e deixe-os com raiva LOL. Obrigada.
Etapa 8: Código para chamas
O código completo para FLAMES está disponível aqui, github.com/naveeen684/Flames-code-using-C-/tree/master