
Enviado em 14/12/2017 - 08:45h
Olá,L={yxz|y E {a,b,c}+ e z E {1,2,3}+}
abcx123
23ax2b1
bx31
a2x3b
bcax321
#include <stdio.h>
#include <stdlib.h>
FILE *arquivo;
void voltaLeitura()
{
fseek(arquivo, -1, SEEK_CUR);
}
char getSimbolo()
{
char temp;
if(arquivo==NULL)
{
printf("Erro: arquivo n�o aberto!\n");
return EOF;
}
temp = fgetc(arquivo);
return temp;
}
int AFD()
{
int E=0;
char S='i';
while(S!=EOF)
{
S=getSimbolo();
switch(E)
{
case 0:
if(S=='a'||S=='b'||S=='c')
E=1;
else
E=0;
break;
case 1:
if(S=='x')
E=2;
else if(S=='a'||S=='b'||S=='c')
E=1;
else
E=0;
break;
case 2:
if(S=='1'||S=='2'||S=='3')
E=3;
else if(S=='a'||S=='b'||S=='c')
E=1;
else
E=0;
break;
case 3:
if(S=='1'||S=='2'||S=='3')
E=3;
else
E=4;
break;
}
}
if(E==4) return 1;
return -1;
}
int main()
{
int retorno;
arquivo = fopen("entrada2b.txt", "r");
retorno = AFD();
if(retorno == 1)
printf("Valido\n");
else if(retorno == -1)
printf("Invalido\n");
fclose(arquivo);
return 0;
}
A produção de áudio e vídeo no Linux e as distribuições dedicadas a esse fim
Criptografando sua Home com Gocryptfs para tristeza do meliante
A Involução do Linux e as Lambanças Desnecessárias desde o seu Lançamento
O Journal no Linux para a guarda e consulta de logs do sistema
A evolução do Linux e as mudanças que se fazem necessárias desde o seu lançamento
Instalar Ubuntu com Btrfs + LUKS de forma fácil
Habilitando "hotcorner" no Ubuntu
Zen Kernel no Arch Linux (instalar e remover)
Como instalar e remover o kernel Liquorix
Fazendo o controle de Xbox 360 USB funcionar no One Piece Pirate Warriors 4 (Arch Linux/Steam)
Continuando meus tópicos anteriores (9)
Executar um programa em Rust (2)
Não consigo publicar screenshots no Viva o Linux [RESOLVIDO] (5)









