Ir para conteúdo
Fórum Script Brasil
  • 0

Ajude Me


Guest geekoisk

Pergunta

Guest geekoisk

um programa que implemente um automato finito deterministico para reconhecer se uma determinada palavra pertence a uma gramatica.

1 - um programa ler arquivo contendo um conjunto de palavras.

2 - ser gerado um arquivo como saida , informando quais palavras são aceitas e quais não são aceitas.

(letra) (letra|digito)*

consegui fazer em alfabeto , mas não consego implementar

#include "iostream.h"

#define AUTOMATO {'c','a','s','a'}

#define TAM_AFD 4

void main(){

char AFD[] = AUTOMATO, string[255];

cin >> string;

for( int i=0; AFD==string; i++ );

cout << ( (i>TAM_AFD) ? "Aceito" : "não Aceito" );

}

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Aí, vou tentar ajudar: pra descomplicar um pouco, você poderia retirar a linha "#define AUTOMATO ..." e inicializar a variável AFD da seguinte forma:

char AFD[] = "casa", string[ 255 ];

Ao invés de fazer aquele loop de comparação caractere-a-caractere você pode usar a função strcmp() da biblioteca cstring. A comparação ficaria assim:

cout << ( strcmp( AFD, string ) == 0 ? "Aceito" : "não aceito" );

Lembrando que você deverá incluir a biblioteca cstring para usar a função strcmp.

Qualquer coisa, poste aí.

Até mais! biggrin.gif

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...