Responda às questões abaixo: 1 a Questão: Indique todos casos de não determinismo do AFN acima
|
|
- Alexandre Fontes Camilo
- 6 Há anos
- Visualizações:
Transcrição
1 Exercícios 04 CENTRO UNIVERSITÁRIO DE BRASÍLIA - UniCEUB O Autômato Finito Não Determinístico (AFN) abaixo reconhece sentenças da linguagem L, definida sobre o alfabeto Σ = {0, 1, onde as sentenças: possuem um número múltiplo de 3 bits 0 e a primeira primitiva é um bit 1, ou possuem um número múltiplo de 4 bits 0 e a primeira primitiva é um bit 1 ou possuem um número múltiplo de 3 bits 1 e a primeira primitiva é um bit 0 ou possuem um número ímpar de bits 1 e a primeira primitiva é um bit 0.
2 Responda às questões abaixo: 1 a Questão: Indique todos casos de não determinismo do AFN acima Exemplo: o AF, estando no estado q0, ao processar a primitiva 0 pode assumir mais de um estado alternativo a saber: q10 ou q14. Ou seja: q0 x 0 q10 ou q0 x 0 q14 Cite os demais casos de forma semelhante ao acima exemplificado. 2 a Questão: Julgue em V (verdadeiro) ou F (falso) [ ] A linguagem L possui infinitas sentenças [ ] Se w = , então w L [ ] A linguagem L possui finitas sentenças [ ] Se w = , então w L [ ] Se w = 01011, então w L [ ] Se w = 1110, então w L [ ] Se w = 1011, então w L [ ] Se w = 0111, então w L [ ] Se w = , então w L [ ] Se w = 111 então w L [ ] Se w = , então w L [ ] Se w = , então w L [ ] Se w = , então w L [ ] Se w = , então w L 3 a Questão: Codifique no programa JFLAP o AFN acima. Após a codificação do AFN, teste no JFLAP as seguintes sentenças: (1) (2) Para testar no JFLAP, utilize a opção INPUT Step by State... clicando no botão Step. 3.1) a sentença w = pertence à linguagem L? Quantos caminhos o AFN montou após o processamento? Quais os estados após o término do processamento? 3.2) a sentença w = pertence à linguagem L? Quantos caminhos o AFN montou após o processamento? Quais os estados após o término do processamento?
3 4 a Questão: Mostre os caminhos que o AFN contrói para as sentenças (1) (2) ? Exemplo: Veja os caminhos iniciais que o AFN monta para as sentença w = Complete este processamento e faça para a outra sentença.
4 Implementação de AFN/AFD em linguagem de programação Uma maneira de se implementar um AFN/AFD pode ser utilizando-se basicamente três estruturas de dados simples: Estrutura 1: fita de entrada da sentença. Estrutura 2: Lista de transições do AF: uma estrutura de lista encadeada onde cada elemento da lista contém um objeto que por sua vez armazena o estado atual da máquina (estado do AF), a primitiva que está sendo lida na fita e o novo estado da máquina. Ou seja, esta lista encadeada nada mais é do que o grafo contendo as transições da máquina AF. Figura 1 Exemplo de AFN e estrutura para a Lista de transições do AFN
5 Estrutura 3: Lista de processamento do AF: uma estrutura de lista encadeada onde cada elemento da lista armazena um estado decorrente do processamento e um ponteiro para apontar para o estado que o originou (estado pai ). Esta estrutura é criada durante o processo de processamento da sentença que está armazenada na fita de entrada. Para entender a Lista de processamento do AF, considere o AFN acima e a sequência de processamento que o mesmo efetua para validar a sentença w = 11100, apresentada abaixo: Figura 2 Processamento do AFN para a sentença w = O processamento acima pelo AF será registrado na Lista de processamento do AF da seguinte forma: Figura 3 Lista de processamento do AFN para a sentença w = 11100
6 Codificação em JAVA Em ANEXO I, encontra-se um código em Java para processamento de AF (AFN ou AFD). Observe que no código apresentado no ANEXO I, as principais estruturas de dados estão implementadas na forma de variável do tipo ArrayList. //---> Principais Estruturas de Dados para o AFN e seu processamento ArrayList mtransicoesafn = new ArrayList(); ArrayList mestadosfinaisdoafn = new ArrayList(); ArrayList mcaminhos = new ArrayList(); Uma vantagem de uso do tipo ArrayList em Java deve-se ao fato de que este tipo de variável já implementa os ponteiros para os objetos anteriores e posteriores, pois o ArrayList é gerenciado como se fosse um vetor e, por isso, só precisamos referenciar algum elemento do vetor através de seu índice. Por exemplo, observe a Lista de processamento do AFN na Figura 3. No código em Java do ANEXO I, esta lista é o ArrayList mcaminhos. Para exemplificar, Em mcaminhos(0) encontra-se um objeto que tem o estado q0 e o índice de nó pai igual a 1. Em mcaminhos(8) encontra-se um objeto que tem o estado q1 e o índice de nó pai igual a 4. objeto armazenado na Lista de processamento foi implementado na classe denominada CNoProc (classe nó de processamento ) que tem o campo mestadoproc e o campo mindicenopai. //========================================================= // Classe para o objeto-elemento "Nó de processamanto" da lista mcaminhos //========================================================= class CNoProc { String mestadoproc; int mindicenopai; CNoProc() { public void fsetestadoproc(string avalor) { mestadoproc = avalor; public void fsetindicenopai(int avalor) { mindicenopai = avalor; public String fgetestadoproc() { return mestadoproc; public int fgetindicenopai() { return mindicenopai;
7 Para exemplificar (ver Figura 3), Em mcaminhos(0).mestadoproc o valor é q0 Em mcaminhos(0).mindicenopai o valor é 1 Em mcaminhos(8).mestadoproc o valor é q1 Em mcaminhos(8).mindicenopai o valor é 4 Em mcaminhos(1).mestadoproc o valor é q0 Em mcaminhos(1).mindicenopai o valor é 1 Para implementar as transições de estado do AFN (ver Figura 1), foi criado no código o ArrayList mtransicoesafn que deve conter objetos da classe CTransicao que tem o campo mestado (que é o estado em que máquina AF se encontra), o campo mprimitiva (que for lida na fita contendo a sentença processada) e o campo mnovoestado. //=================================== // Classe para o objeto Transição //=================================== class CTransicao { String mestado; String mprimitiva; String mnovoestado; CTransicao() { public void fsetestado(string avalor) { mestado = avalor; public void fsetprmitiva(string avalor) { mprimitiva = avalor; public void fsetnovoestado(string avalor) { mnovoestado = avalor; public String fgetestado() { return mestado; public String fgetprimitiva() { return mprimitiva; public String fgetnovoestado() { return mnovoestado;
8 Por exemplo, o seguinte trecho de código que se encontra na função fdefinirtransicoesdoafn() armazena as transições q0 x 0 q0 e q0 x 1 q0: //--- vtransicao = new CTransicao(); vtransicao.fsetestado("q0"); vtransicao.fsetprmitiva("0"); vtransicao.fsetnovoestado("q0"); mtransicoesafn.add(vtransicao); //--- vtransicao = new CTransicao(); vtransicao.fsetestado("q0"); vtransicao.fsetprmitiva("1"); vtransicao.fsetnovoestado("q0"); mtransicoesafn.add(vtransicao);
9 ANEXO I import java.awt.*; import java.awt.event.actionlistener; import java.awt.event.actionevent; import java.util.arraylist; public class AFN01a extends Frame implements ActionListener { int mlargura = 500; FlowLayout mfl = new FlowLayout(FlowLayout.CENTER); Panel mpainel1; Panel mpainel2; Panel mpainel3; Panel mpainel4; Panel mpainel5; Panel mpainel6; Panel mpainel7; Label mlbsentenca; TextField msentenca; Button mbtexecutar; TextArea mtxtexecucao; TextArea mtxtcaminhos; Label mlbsql; Button mbtfim; //---> Principais Estruturas de dados para o AFN e seu processamento ArrayList mtransicoesafn = new ArrayList(); ArrayList mestadosfinaisdoafn = new ArrayList(); ArrayList mcaminhos = new ArrayList(); //---> Construtor da Classe AFN01a... AFN01a() { super("afn - Processamento de AFN"); //------> Desenhar "lay-out" da tela... mpainel1 = new Panel(); mpainel2 = new Panel(); mpainel3 = new Panel(); mpainel4 = new Panel(); mpainel5 = new Panel(); mpainel6 = new Panel(); mpainel7 = new Panel(); mlbsentenca = new Label("Digite abaixo a senetença desejada");
10 msentenca = new TextField(50); mbtexecutar = new Button("Executar"); mtxtexecucao = new TextArea("Execução"); mtxtcaminhos = new TextArea("Caminhos ao final do processamento"); mlbsql = new Label(">>> A sentença é aceita ou não pelo AF? <<<"); mbtfim = new Button("Fim"); //------> Disposição dos painéis... mpainel1.setlocation(0,0); mpainel1.setbackground(new Color(255,128,128)); mpainel1.setsize(mlargura,50); mpainel1.add(mlbsentenca); add(mpainel1); // mpainel2.setlocation(0,50); mpainel2.setbackground(new Color(255,255,255)); mpainel2.setsize(mlargura,50); mpainel2.add(msentenca); add(mpainel2); // mpainel3.setlocation(0,100); mpainel3.setbackground(new Color(255,128,128)); mpainel3.setsize(mlargura,50); mpainel3.add(mbtexecutar); add(mpainel3); mbtexecutar.addactionlistener(this); // mpainel4.setlocation(0,150); mpainel4.setbackground(new Color(0,255,0)); mpainel4.setsize(mlargura,150); mpainel4.add(mtxtexecucao); add(mpainel4); // mpainel5.setlocation(0,350); mpainel5.setbackground(new Color(255,0,0)); mpainel5.setsize(mlargura,150); mpainel5.add(mtxtcaminhos); add(mpainel5); // mpainel6.setlocation(0,500); mpainel6.setbackground(new Color(255,128,128)); mpainel6.setsize(mlargura,50); mpainel6.add(mlbsql); add(mpainel5); // mpainel7.setlocation(0,550); mpainel7.setbackground(new Color(255,128,255));
11 mpainel7.setsize(mlargura,50); mpainel7.add(mbtfim); add(mpainel7); mbtfim.addactionlistener(this); //------> Mostar janela this.resize(mlargura,600); mfl.sethgap(100); this.setlayout(mfl); this.show(); //------> Definir os estado finais do AFN fdefinirestadosfinaisdoafn(); //------> Definir as transições do AFN ("desenhar" o grafo do autômato) fdefinirtransicoesdoafn(); //---> Implementação do AFN //===> Indicar aqui os estados finais do AFN... private void fdefinirestadosfinaisdoafn() { mestadosfinaisdoafn.add("q4"); //\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ //---> ALUNO: complete aqui os estados finais do AF //\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ //---> Implementação do AFN //===> Criar aqui o AFN propriamente dito... private void fdefinirtransicoesdoafn() { CTransicao vtransicao; vtransicao = new CTransicao(); vtransicao.fsetestado("q0"); vtransicao.fsetprmitiva("0"); vtransicao.fsetnovoestado("q10"); mtransicoesafn.add(vtransicao); //---
12 vtransicao = new CTransicao(); vtransicao.fsetestado("q0"); vtransicao.fsetprmitiva("0"); vtransicao.fsetnovoestado("q14"); mtransicoesafn.add(vtransicao); //--- vtransicao = new CTransicao(); vtransicao.fsetestado("q0"); vtransicao.fsetprmitiva("1"); vtransicao.fsetnovoestado("q1"); mtransicoesafn.add(vtransicao); //--- vtransicao = new CTransicao(); vtransicao.fsetestado("q0"); vtransicao.fsetprmitiva("1"); vtransicao.fsetnovoestado("q1"); mtransicoesafn.add(vtransicao); //--- //\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ //---> ALUNO: complete aqui as transições do AF //\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ //---> Processamento de Sentenca pelo AFN public void fprocessamentopeloafn() { String vfita = msentenca.gettext(); int vtamanhofita = vfita.length(); int icursor; String vprimitivalida; String Q; CNoProc vnoproc; int indnoatual; int indproximono; // é o nó que na lista será processado com a próxima primitiva lida... int indiniciodosresultados; // a partir deste nó, os estados são os estados dos // caminhos ao final do processamento das primitivas String vestadoproc; CTransicao vtransicao; int k; String vestado; String vprimitiva; String vnovoestado; String venter = String.valueOf((char)13) + String.valueOf((char)10); String vaux;
13 String vehqerro; mtxtexecucao.settext("inicio DO PROCESSAMENTO" + venter + "=========================" + venter); mcaminhos.clear(); // "limpar" para iniciar um novo processamento... //---> Estado inicial da máquina AFN Q = "q0"; vnoproc = new CNoProc(); vnoproc.fsetestadoproc(q); // estado atual de processamento vnoproc.fsetindicenopai(-1); // Nó-raiz não tem nó pai... mcaminhos.add(vnoproc); indnoatual = 0; // é o nó que atualmente está em processamento... indproximono = indnoatual + 1; // Próximo nó a ser processado com a próxima primitiva lida indiniciodosresultados = indnoatual; //---> loop para processar a fita... for (icursor = 0; icursor < vtamanhofita; icursor++) { vprimitivalida = vfita.substring(icursor,icursor+1); vaux = String.valueOf(iCursor+1); vaux = "Primitiva " + vaux + " = " + vprimitivalida; mtxtexecucao.append(" " + venter); mtxtexecucao.append(vaux + venter + venter); //------> Processamento de todos os estados disponíveis para a primitiva em questão... while (indnoatual < indproximono) { vnoproc = (CNoProc)mCaminhos.get(indNoAtual); vestadoproc = vnoproc.fgetestadoproc(); // é o estado atual de processamento... vaux = vestadoproc + " x " + vprimitivalida + " -> "; vehqerro = "S"; // em princípio supõe-se que não tem transição (ou seja, qe).. // > Avalia toda a lista de transições do AFN... for (k = 0; k < mtransicoesafn.size(); k++) { vtransicao = (CTransicao)mTransicoesAFN.get(k); vestado = vtransicao.fgetestado(); vprimitiva = vtransicao.fgetprimitiva(); if ( (vestadoproc.equalsignorecase(vestado)) && (vprimitivalida.equalsignorecase(vprimitiva)) ) { vnovoestado = vtransicao.fgetnovoestado(); vnoproc = new CNoProc(); vnoproc.fsetestadoproc(vnovoestado); vnoproc.fsetindicenopai(indnoatual); mcaminhos.add(vnoproc);
14 vaux += " " + vnovoestado + " ou "; vehqerro = "N"; // próxima transição da lista de transições do AFN if (vehqerro.equalsignorecase("n")) { vaux = vaux.substring(0,vaux.length()-4); else { vaux += " qe"; mtxtexecucao.append(vaux + venter); indnoatual++; // Próximo estado a ser avaliada com a primitiva lida indiniciodosresultados = indnoatual; indproximono = mcaminhos.size(); // próxima primitiva a ser lida... mtxtexecucao.append(venter + "====================" + venter + " FIM " + venter); //---> A variavel indiniciodosresultados marca os nós (até o final da lista mcaminhos) //---> que são os estados dos caminhos ao término da leitura da fita de entrada.. fmostrarcaminhos(indiniciodosresultados); //---> Mostrar os caminhos processados pelo AFN private void fmostrarcaminhos(int aindiniciodosestados) { String vfita = msentenca.gettext(); String venter = String.valueOf((char)13) + String.valueOf((char)10); mtxtcaminhos.settext("caminhos CONSTRUÍDOS PELO AFN" + venter + "=================================" + venter); //\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/ //---> ALUNO: implemente aqui a rotina de apresentação dos caminhos gerados pelo AF //\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
15 //---> Verificar se é estado final private String fverificaseehestadofinal(string aestadoproc) { String vehestadofinal = "N"; int k; String vestadofinal; for(k = 0; k < mestadosfinaisdoafn.size(); k++) { vestadofinal = (String)mEstadosFinaisDoAFN.get(k); if (vestadofinal.equalsignorecase(aestadoproc)) { vehestadofinal = "S"; return vehestadofinal; // //---> Listener // public void actionperformed(actionevent e) { if (e.getactioncommand() == "Fim") { System.exit(0); if (e.getactioncommand() == "Executar") { fprocessamentopeloafn(); // //---> Programa principal // public static void main(string[] args) { new AFN01a();
16 //=================================== // Classe para o objeto Transição //=================================== class CTransicao { String mestado; String mprimitiva; String mnovoestado; CTransicao() { public void fsetestado(string avalor) { mestado = avalor; public void fsetprmitiva(string avalor) { mprimitiva = avalor; public void fsetnovoestado(string avalor) { mnovoestado = avalor; public String fgetestado() { return mestado; public String fgetprimitiva() { return mprimitiva; public String fgetnovoestado() { return mnovoestado; //======================================================================= // Classe para o objeto-elemento "Nó de processamento" da lista mcaminhos //======================================================================= class CNoProc { String mestadoproc; int mindicenopai; CNoProc() { public void fsetestadoproc(string avalor) { mestadoproc = avalor; public void fsetindicenopai(int avalor) { mindicenopai = avalor; public String fgetestadoproc() { return mestadoproc; public int fgetindicenopai() { return mindicenopai;
17 1 a Questão Codifique no JFLAP e codifique em linguagem Java (ou outra linguagem de sua preferência) um AFN para os seguintes problemas abaixo apresentados: Obs. 1: O código de programação DEVE receber como informação de entrada uma sentença e informar se a mesma pertence ou não à linguagem em questão. E todas as sequências de processamento do AFN devem ser impressas. Obs. 2: Você DEVE indicar onde ocorrem os não determinismos do AFN (1) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo cca ou cba, e possuam ao menos uma subpalavra (um substring) aaa ou bac e sufixo cba ou sufixo ca. (2) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo cca ou cba, e não possuam subpalavra (substring) aaa nem bac e possuam sufixo cba ou sufixo ca. (3) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo bcb ou bab, e possuam ao menos uma subpalavra (um substring) abc ou acc, e sufixo aaa ou sufixo ab. (4) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo bcb ou bab, e não possuam subpalavra (substring) abc nem acc, e possuam sufixo aaa ou sufixo ab.
18 (5) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo abc ou acc, e possuam ao menos uma subpalavra (um substring) bcb ou bab, e sufixo ccc ou sufixo cb. (6) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo abc ou acc, e não possuam subpalavra (substring) bcb nem bab, e possuasufixo ccc ou cb. (7) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo aaa ou bac, e possuam ao menos uma subpalavra (um substring) cca ou cbb, e sufixo cba ou sufixo ca. (8) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo aaa ou bac, e não possuam subpalavra (substring) cca nem cbb, e possuam sufixo cba ou sufixo ca. (9) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo cba ou aba, e possuam ao menos uma subpalavra (um substring) cab ou caa, e sufixo bbb ou sufixo ba. (10) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo bbb ou aba, e possuam ao menos uma subpalavra (um substring) cab ou caa, e sufixo acb ou sufixo bb. (11) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo bbb ou aba, e não possuam subpalavra (um substring) cab nem caa, e possuam sufixo acb ou sufixo bb. (12) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo aaa ou aac, e possuam ao menos uma subpalavra (um substring) aab ou aca, e sufixo cca ou sufixo cc.
19 (13) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo aaa ou aac, e não possuam subpalavra (um substring) aab nem aca, e possuam sufixo cca ou sufixo cc. (14) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo ccb ou cac, e possuam ao menos uma subpalavra (um substring) abc ou cba, e sufixo bbb ou sufixo bc. (15) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo ccb ou cac, e não possuam (substring) abc nem cba, e possuam sufixo bbb ou sufixo bc. (16) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo aca ou bca, e não possuam subpalavra (um substring) bba nem cbc, e possuam sufixo ccc ou sufixo ca. (17) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo aca ou bca, e possuam ao menos uma subpalavra (um substring) bba ou cbc, e sufixo ccc ou sufixo ca. (18) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo bcc ou acb, e possuam ao menos uma subpalavra (um substring) cba ou ccb, e sufixo aab ou sufixo ac. (19) Construa um Autômato Finito Não Determinístico (AFN) sobre o alfabeto Σ = {a, b, c, que reconheça a linguagem L onde as sentenças possuem prefixo bcc ou acb, e não possuam subpalavra (substring) cba nem ccb, e possuem sufixo aab ou sufixo ac. ** FIM ***
Exercícios 03. Questão 1.5) Qual o estado do AFD após processar a sentença w = abbbbaaaaab? A sentença w L?
Exercícios 03 CENTRO UNIVERSITÁRIO DE BRASÍLIA - UniCEUB 1 a Questão: Codifique no programa JFLAP o AFD definido sobre o alfabeto Σ={a,b, que reconhece sentenças de determinada linguagem L, conforme apresentado
Leia maisLista de exercícios 1
UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO CENTRO DE CIÊNCIAS AGRÁRIAS CCA/ UFES Departamento de Engenharia Rural Lista de exercícios 1 Disciplina: Linguagens Formais e Autômatos Professora: Juliana Pinheiro
Leia maisAutómatos Finitos Determinísticos (AFD)
Folha Prática Autómatos Finitos 1 Autómatos Finitos Determinísticos (AFD) 1. Determine e implemente computacionalmente um AFD que aceita todas as cadeias de cada uma das seguintes linguagens sobre o alfabeto
Leia maisAlfabeto, Cadeias, Operações e Linguagens
Linguagens de Programação e Compiladores - Aula 3 1 Alfabeto, Cadeias, Operações e Linguagens 1.Conjuntos Para representar um determinado conjunto é necessário buscar uma notação para representá-lo e ter
Leia mais1) Responda de acordo com os conceitos de orientação a objetos (0,5).
Avalição II (Teórica) 22/06/2017 Disciplina Linguagem de Programação II Prof. Wagner, dos Santos C. de Jesus Curso Engenharia da Computação Questões Solução da Avaliação 1) Responda de acordo com os conceitos
Leia maisLicenciatura em Engenharia Informática DEI/ISEP Linguagens de Programação 2006/07
Licenciatura em Engenharia Informática DEI/ISEP Linguagens de Programação 2006/07 Ficha 3 Autómatos Finitos Objectivos: Introdução ao conceito de Autómato Finito e notações utilizadas na sua representação;
Leia maisFundamentos da Teoria da Computação
Fundamentos da Teoria da Computação Segunda Lista de Exercícios - Aula sobre dúvidas Sérgio Mariano Dias 1 1 Mestrando em Ciência da Computação Departamento de Ciência da Computação Universidade Federal
Leia maisLinguagens Formais e Autômatos 02/2015. LFA Aula 02. introdução 28/09/2015. Celso Olivete Júnior.
LFA Aula 02 Linguagens regulares - introdução 28/09/2015 Celso Olivete Júnior olivete@fct.unesp.br 1 Na aula passada... Visão geral Linguagens regulares expressões regulares autômatos finitos gramáticas
Leia maisExercícios 02. A gramática acima gera sentenças que tenham os N primeiros bits 0 e o último bit é sempre 1.
Exercícios 02 CENTRO UNIVERSITÁRIO DE BRASÍLIA - UniCEUB 1 a Questão Considere a gramática abaixo que gera sentenças da linguagem L onde L = { w w = 0 m 1, m 1. A gramática acima gera sentenças que tenham
Leia maisLinguagens Regulares. Prof. Daniel Oliveira
Linguagens Regulares Prof. Daniel Oliveira Linguagens Regulares Linguagens Regulares ou Tipo 3 Hierarquia de Chomsky Linguagens Regulares Aborda-se os seguintes formalismos: Autômatos Finitos Expressões
Leia maisConceitos Básicos. Vocabulário Cadeias Linguagens Expressões Regulares Problema X Linguagem
Conceitos Básicos Vocabulário Cadeias Linguagens Expressões Regulares Problema X Linguagem Alfabeto ou Vocabulário: Conjunto finito não vazio de símbolos. Símbolo é um elemento qualquer de um alfabeto.
Leia maisLinguagens e Programação Automátos Finitos. Paulo Proença
Linguagens e Programação Automátos Finitos Autómatos finitos Formalismo, que permite representar de uma forma clara, um qualquer processo composto por um conjunto de estados e transições entre esses estados.
Leia maisINE5317 Linguagens Formais e Compiladores AULA 5: Autômatos Finitos
INE5317 Linguagens Formais e Compiladores AULA 5: Autômatos Finitos Ricardo Azambuja Silveira INE-CTC-UFSC E-Mail: silveira@inf.ufsc.br URL: www.inf.ufsc.br/~silveira As Linguagens e os formalismos representacionais
Leia maisTerceira Lista de Exercícios 2004/2...
UFLA Universidade Federal de Lavras Departamento de Ciência da Computação COM162 Linguagens Formais e Autômatos Prof. Rudini Sampaio Monitor: Rodrigo Pereira dos Santos Terceira Lista de Exercícios 2004/2
Leia maisLinguagens Formais. Aula 01 - Conceitos Básicos. Prof. Othon Batista Mestre em Informática
Linguagens Formais Aula 01 - Conceitos Básicos Prof. Othon Batista Mestre em Informática Sumário Introdução à Linguagem Alfabeto Cadeias de Símbolos, Palavras Tamanho de Palavra Prefixo, Sufixo ou Subpalavra
Leia maisLinguagens Formais e Autômatos P. Blauth Menezes
Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Ciência da Computação - P. Blauth Menezes
Leia maisprivate void btapresentanomeactionperformed(java.awt.event.actionevent evt) {
Jorge Ferreira 1 NOTAS DE AULA JAVA 5 E NETBEANS 5 Seguindo as configurações iniciais do formulário, devemos definir o comportamento de apresentação da janela quando executarmos o programa. Para tanto,
Leia maisCapítulo 1: Alfabetos, cadeias, linguagens
Capítulo 1: Alfabetos, cadeias, linguagens Símbolos e alfabetos. Um alfabeto é, para os nossos fins, um conjunto finito não vazio cujos elementos são chamados de símbolos. Dessa maneira, os conceitos de
Leia maisMÓDULO 4 SWING Parte 3
Aplicações de Linguagem de Programação Orientada a Objetos 2ºsem/2011 (Professores: Tiago e Daniele) // Exemplo11 Ação do Mouse import javax.swing.*; import java.awt.*; import java.awt.event.actionevent;
Leia maisTeoria de Linguagens 2 o semestre de 2015 Professor: Newton José Vieira Primeira Lista de Exercícios Entrega: até 16:40h de 15/9.
Pós-Graduação em Ciência da Computação DCC/ICEx/UFMG Teoria de Linguagens 2 o semestre de 2015 Professor: Newton José Vieira Primeira Lista de Exercícios Entrega: até 16:40h de 15/9. Observações: Pontos
Leia maisModelos de Computação Folha de trabalho n. 8
Modelos de Computação Folha de trabalho n. 8 Nota: Os exercícios obrigatórios marcados de A a D constituem os problemas que devem ser resolvidos individualmente. A resolução em papel deverá ser depositada
Leia maisFundamentos da Teoria da Computação
Fundamentos da Teoria da Computação Primeira Lista de Exercícios - Aula sobre dúvidas da lista Sérgio Mariano Dias 1 1 UFMG/ICEx/DCC Entrega da 1 a lista: 31/03/2009 Sérgio Mariano Dias (UFMG) Fundamentos
Leia maisMODEL-VIEW-CONTROLER. Prof. Fellipe Aleixo
MODEL-VIEW-CONTROLER Prof. Fellipe Aleixo (fellipe.aleixo@ifrn.edu.br) O Que é MVC? Modelo de arquitetura de software Separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo
Leia maisApostila 03 - Linguagens Livres de Contexto Exercícios
Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e
Leia maisLógica de Programação e Algoritmos
Lógica de Programação e Algoritmos com exemplos na linguagem JAVA Cap. 4 Estruturas de Dados Homogêneas Vetores e Matrizes Conteúdo: 4.1 Variáveis compostas homogêneas... 55 4.2 Vetores... 56 Exercícios
Leia maisPara entender o conceito de objetos em programação devemos fazer uma analogia com o mundo real:
Introdução a Orientação a Objetos com Java Autor: Professor Victor Augusto Zago Menegusso. Orientação a Objetos É um paradigma de programação que define a estrutura de um programa baseado nos conceitos
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra
Leia maisCurso: Ciência da Computação Turma: 6ª Série. Teoria da Computação. Aula 3. Autômatos Finitos
Curso: Ciência da Computação Turma: 6ª Série Aula 3 Autômatos Finitos Alfabeto Alfabeto Conjunto finito de símbolos; Normalmente descrito por ; Exemplos: ={a, b} ={1, 2, 3} ={00, 11} Ø Alfabeto romano
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador)
Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça Problema: Definir uma dependência um-para-muitos entre objetos, de forma quando o estado
Leia maisUNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 6 Filas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA 6 Filas Estrutura de Dados A Estrutura de Dados Fila Fila é uma estrutura de dados usada em programação, que tem regras para
Leia maisComputação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz /05/13. Questão: Total Pontos: Gráu:
Computação II - Java - Prova 1 Prof. Adriano Joaquim de Oliveira Cruz - 2015/05/13 Questão: 1 2 3 4 5 6 Total Pontos: 20 15 15 10 10 30 100 Gráu: 1. Defina os termos listados a seguir: (a) (10 Pontos)
Leia maisOrientação a Objetos AULA 09
Orientação a Objetos AULA 09 Prof. Fabrício Martins Mendonça Conteúdo da Aula ü Coleções ü Coleções lista de objetos ü Coleções conjuntos 2 Coleções Podemos armazenar vários objetos em um array e este
Leia maisLinguagens Formais e Autômatos (LFA)
Linguagens Formais e Autômatos (LFA) Aula de 09/09/2013 Panorama do Restante da Disciplina 1 Próximo Tópicos da Matéria Linguagens Autômatos Regulares Autômatos Finitos Máquinas de Moore e Mealy Livres
Leia maisComo construir um compilador utilizando ferramentas Java
Como construir um compilador utilizando ferramentas Java p. 1/2 Como construir um compilador utilizando ferramentas Java Aula 4 Análise Léxica Prof. Márcio Delamaro delamaro@icmc.usp.br Como construir
Leia maisLinguagens Formais e Autômatos
Linguagens Formais e Autômatos Conversão de Expressões Regulares (ER) para Autômatos Finitos Determinísticos (AFD) Cristiano Lehrer, M.Sc. Introdução A construção sistemática de um Autômato Finito para
Leia maisPontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação
Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação LP: Laboratório de Programação Apontamento 13 Prof. ISVega Maio de 2004 Arrays CONTEÚDO 13.1Arrays e Seqüências de Variáveis.........
Leia maisIntrodução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 em PDF via Moodle: Escolha apenas 5 exercícios para entrega Exercício 01 (Pilhas)
Introdução à Computação II (Noturno) BCC Unesp Rio Claro/SP 2015 Lista Obrigatória 02 - Prof. Rafael Oliveira (Deve ser entregue em PDF via Moodle: Escolha apenas 5 exercícios para entrega) Exercício 01
Leia maisLinguagem de programação métodos/funções
Instituto Federal de Minas Gerais Campus Ponte Nova Linguagem de programação métodos/funções Professor: Saulo Henrique Cabral Silva MÉTODOS / MODULARIZANDO Modularizando... 2 Métodos Funções Sub-rotinas
Leia maisJavaScript (ou JScript)
1. Introdução JavaScript (ou JScript) Uma linguagem como o JavaScript permite criar interfaces interativas na web (permite a interação do usuário). Para desenvolver web sites interativos precisamos de
Leia maisLINGUAGENS FORMAIS Definições. Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam
Linguagens Naturais LINGUAGENS FORMAIS Definições Desenvolveram-se na História em função da necessidade dos grupos humanos que as empregavam São muito ricas, mas também ambíguas e imprecisas. Ex.: João
Leia maisPropriedades de Fecho de Linguagens Regulares.
Propriedades de Fecho de Linguagens Regulares. Gerando Linguagens Regulares Recorde a seguinte teorema: THM: Linguagens regulares são aquelas que podem ser geradas a partir de linguagens finitas pela aplicação
Leia maisArquitetura Von Neumann Dados e instruções são obtidos da mesma forma, simplificando o desenho do microprocessador;
1 Microprocessador Um microprocessador é um circuito eletrônico capaz de realizar diversas tarefas conforme os comandos específicos. Para isso ele deve ler esses comandos da memória de programa (ROM) e
Leia maisAula 7: Autômatos com Pilha
Teoria da Computação Segundo Semestre, 2014 Aula 7: Autômatos com Pilha DAINF-UTFPR Prof. Ricardo Dutra da Silva Vamos adicionar um memória do tipo pilha ao nossos autômatos para que seja possível aceitar
Leia maisSimulado de Linguagem de Programação Java
Simulado de Linguagem de Programação Java 1. Descreva o processo de criação de programas em Java, desde a criação do código-fonte até a obtenção do resultado esperado, por meio de sua execução. Cite as
Leia maisLista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos
Lista de Exercícios da disciplina Aplicações de Linguagem de Programação Orientada a objetos 1. Para a construção de uma aplicação gráfica se faz necessário conceber a interface de aplicação, identificando-se
Leia maisSobrecarga. Algoritmos e Programação II. Aula 3 Sobrecarga
Algoritmos e Programação II Aula 3 Sobrecarga *Adaptado do material do Prof. Júlio Machado Sobrecarga Em várias linguagens é comum encontrarmos rotinas que fazem basicamente a mesma coisa, porém, com nomes
Leia maisIntrodução à Programação Gráfica em Java
Introdução à Programação Gráfica em Java U N I V E R S I D A D E T E C N O L Ó G I C A F E D E R A L D O P A R A N Á D E P A R T A M E N T O A C A D Ê M I C O D E E L E T R Ô N I C A P R O F. V I T O R
Leia maisSintaxe da linguagem Java
Sintaxe da linguagem Java (PG) Centro de Cálculo Instituto Superior de Engenharia de Lisboa Pedro Alexandre Pereira (palex@cc.isel.ipl.pt) Classe pública com método main Uma classe pública com nome A tem
Leia maisLinguagens Formais e Autômatos
Linguagens Formais e Autômatos (notas da primeira aula 1 Definições básicas 1.1 Conjuntos Definição 1. Um conjunto é uma coleção de objetos, denominados elementos. Notação 1. Para indicar que um elemento
Leia maisDados armazenados em um objeto podem ser tanto primitivos, tais como inteiros ou caracteres, ou referências para outros objetos.
2. Classes e Objetos Uma classe é um modelo que define os atributos e métodos comuns a um conjunto de objetos de forma encapsulada. Atributos são informações ou dados que descrevem, categorizam ou quantificam
Leia maisVariáveis primitivas e Controle de fluxo
Variáveis primitivas e Controle de fluxo Material baseado na apostila FJ-11: Java e Orientação a Objetos do curso Caelum, Ensino e Inovação, disponível para download em http://www.caelum.com.br/apostilas/
Leia maisLista 05 Herança. public class PessoaFisica extends Pessoa { private String RG; public PessoaFisica(){ super(); } public String getrg(){ return RG; }
Lista 05 Herança 1. Analisando a classe Java abaixo podemos observar que a mesma possui apenas um atributo, um construtor e dois métodos. Perceba que dentro do método main estão sendo invocados métodos
Leia maisLinguagens e Autômatos
167657 - Controle para Automação Curso de Graduação em Engenharia de Controle e Automação Departamento de Engenharia Elétrica Universidade de Brasília Linguagens e Autômatos Geovany A. Borges gaborges@ene.unb.br
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO Prof.ª Danielle Casillo Diferencia-se das máquinas de Turing e Post principalmente pelo fato de possuir a memória de entrada separada
Leia maisExpressões Regulares e Gramáticas Regulares
Universidade Católica de Pelotas Escola de informática 053212 Linguagens Formais e Autômatos TEXTO 2 Expressões Regulares e Gramáticas Regulares Prof. Luiz A M Palazzo Março de 2007 Definição de Expressão
Leia maisComando de Seleção em Java
Universidade Federal do ABC (UFABC) Disciplina: Processamento da Informação (BC-0505) Assunto: Comando de Seleção Comando de Seleção em Java Conteúdo 1. Introdução... 1 2. Comando de seleção... 2 3. Comandos
Leia maisApostila 01 Fundamentação da Teoria da Computação e Linguagens Formais
Cursos: Bacharelado em Ciência da Computação e Bacharelado em Sistemas de Informação Disciplinas: (1493A) Teoria da Computação e Linguagens Formais, (4623A) Teoria da Computação e Linguagens Formais e
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisTipos, Literais, Operadores
Tipos, Literais, Operadores Identificadores São palavras utilizadas para nomear variáveis, métodos e classes Na linguagem Java, o identificador sempre começa por letra, sublinhado(_) ou cifrão ($) Não
Leia maisHerança. Universidade Católica de Pernambuco Ciência da Computação. Prof. Márcio Bueno.
Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Possibilita o reuso de classes (código-fonte) Usar quando:
Leia maisEstruturas de Controle em c#
Estruturas de Controle em c# Fábio Moura Governo de Pernambuco Agenda Tipos de estruturas de controle; if; if-else; if-else-if; switch-case; while; do-while; for; foreach; Exercício. Tipos de Estruturas
Leia maisJAVA. Professor: Bruno Toledo
JAVA Professor: Bruno Toledo Funcionamento de uma LP Em uma Linguagem de Programação (LP) como C e Pascal, temos o seguinte quadro quando vamos compilar um programa. Código fonte em c Teste.c Gera código
Leia maisUNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO TEORIA DA COMPUTAÇÃO Aula 02 Introdução à Teoria da Computação Prof.ª Danielle Casillo Linguagem: é uma forma precisa de expressar
Leia maisLinguagem C Princípios Básicos (parte 1)
Linguagem C Princípios Básicos (parte 1) Objetivos O principal objetivo deste artigo é explicar alguns conceitos fundamentais de programação em C. No final será implementado um programa envolvendo todos
Leia maisLinguagem de Programação II Implementação
Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Implementação em Java Variáveis Palavras reservadas Pacotes Identificador this Acessando membros de outros objetos API Java Nossa
Leia maisEx: carro_desportivo poderá ser uma subclasse de automóvel (carro_desportivo é_um automóvel)
Herança capacidade de uma classe (subclasse) herdar, adquirir atributos e funcionalidades de outra classe (superclasse), podendo juntar algumas especificidades e/ou alterar outras. Existe uma relação tipo
Leia maisTRABALHO DE RECUPERAÇÃO Menção máxima = MM
Nome Completo TRABALHO DE RECUPERAÇÃO Menção máxima = MM Rubrica INSTRUÇÕES 1) ATENÇÃO!!! Entregar o trabalho com a resolução das questões totalmente escrita à mão!!! Não será aceita em hipótese alguma
Leia maisDEP. INFORMÁTICA - UNIVERSIDADE DA BEIRA INTERIOR
DEP. INFORMÁTICA - UNIVERSIDADE DA BEIRA INTERIOR Eng. Informática Linguagens Formais e Compilação 2º Semestre Resolução da Frequência 1 20/Abril/2010 Pergunta A.1 A.2 A.3 A.4 B C.1 C.2 Total Cotação 0,75
Leia mais5COP088. Aula 2 Linguagem Estruturada Prof. Dr. Sylvio Barbon Junior. Laboratório de Programação. Aula 2 Linguagem Estruturada
5COP088 Laboratório de Programação Aula 2 Linguagem Estruturada Prof. Dr. Sylvio Barbon Junior 1 Sumário 1) Exercícios - Laços 2) Ponteiros 3) Funções 4) Procedimentos 5) Recursividade 2 Exercícios sobre
Leia maisConceitos básicos de programação
Constantes class Exemplo { static void Main() { float fahr, celsius; int lower, upper, step; lower = 0; /* limite inferior da tabela de temperaturas */ upper = 300; /* limite superior */ step = 20; /*
Leia maisAFNs, Operações Regulares e Expressões Regulares
AFNs, Operações Regulares e Expressões Regulares AFNs. OperaçõesRegulares. Esquematicamente. O circulo vermelho representa o estado inicial q 0, a porção verde representa o conjunto de estados de aceitação
Leia maisNatureza do Software e dos Sistemas
Natureza do Software e dos Sistemas Jorge H C Fernandes Diferença Fundamental entre Engenharia de Software e outras Engenharias! Os materiais são diferentes As teorias fundamentais são diferentes Dificuldades
Leia maisAula 3: Autômatos Finitos
Teoria da Computação Segundo Semestre, 24 Aula 3: Autômatos Finitos DAINF-UTFPR Prof. Ricardo Dutra da Silva Um procedimento ue determina se uma string de entrada pertence à uma linguagem é um reconhecedor
Leia maisAula 08 Estruturas de Condição. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes
Aula 08 Estruturas de Condição Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Entrada de Dados; Estruturas de Controle: Estrutura de Sequência;
Leia maisDada a linguagem, números romanos, construir uma representação para a gramática dela junto com um interpretador para essa gramática.
Resumo Interpreter Amanda e Nikson Problema Dada uma linguagem, definir uma representação para a sua gramática e um interpretador que usa esta representação para interpretar sentenças da linguagem. Exemplo
Leia maisPOO29004 Programação Orientada a Objetos
POO29004 Programação Orientada a Objetos Herança Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/poo 11 de setembro
Leia maisAula 3: Autômatos Finitos
Teoria da Computação Primeiro Semestre, 25 Aula 3: Autômatos Finitos DAINF-UTFPR Prof. Ricardo Dutra da Silva Um procedimento ue determina se uma string de entrada pertence à uma linguagem é um reconhecedor
Leia maisA classe JTextField
8.1.4. A classe JTextField É uma caixa para digitação do usuário que permite a inclusão de um texto de apenas uma única linha. Principais métodos setbounds(int x, int y, int Width, int Height) define as
Leia maisTeoria da Computação. Unidade 1 Conceitos Básicos. Referência Teoria da Computação (Divério, 2000)
Unidade 1 Conceitos Básicos Referência (Divério, 2000) Conceitos Básicos Linguagem Conceito fundamental Forma precisa de expressar problemas Permite um desenvolvimento formal adequado ao estudo da computabilidade
Leia maisAula de PG Novembro de 2013, LT14D e LT11D - Sobre o Tipo String do Java
Aula de PG Novembro de 2013, LT14D e LT11D - Sobre o Tipo String do Java O tipo String é uma classe da linguagem Java onde se definem muitos métodos que podemos e devemos usar para manipular cadeiras de
Leia maisVetores Unimensionais
Vetores Unimensionais Objetivos Entender a importância e a necessidade do uso de Vetores Definição de Manipulação de Vetores Inserir elementos em um vetor (usando laços ou não) Imprimir elementos de um
Leia maisPersistência. Prof. Alberto Costa Neto Linguagens de Programação. Departamento de Computação Universidade Federal de Sergipe
Persistência alberto@ufs.br de Programação Departamento de Computação Universidade Federal de Sergipe Retrospectiva Quanto ao Tempo de Vida Variáveis Estáticas Variáveis Stack-Dinâmicas Variáveis Heap-Dinâmicas
Leia maisPalavras Reservadas da Linguagem Java
Palavras Reservadas da Linguagem Java Palavras Reservadas da Linguagem Java: Categorias Tipos de dados primitivos Literais Pseudo-variáveis Desvio e controle de fluxo Pacotes Exceções Modificadores de
Leia maisPROGRAMAÇÃO ORIENTADA A OBJETOS. Aula de Revisão para AV1
Aula de Revisão para AV1 Conteúdo Programático desta aula Rever os principais conceitos apresentados Resolução de Exercícios para a prova Quantas bibliotecas de GUI existem em Java: a) Uma: Swing b) Duas:
Leia maisOutras Máquinas de Turing
Capítulo 10 Outras Máquinas de Turing 10.1. Pequenas variações da TM padrão 10.2. MT s com dispositivos de armazenamento mais complexos 10.3. MT s não-determinísticas 10.4. A Máquina de Turing Universal
Leia maisTCC 00308: Programação de Computadores I Introdução
TCC 00308: Programação de Computadores I 2017.1 Introdução Processo de resolução de problemas Definição dos requisitos do problema (fazer o programa certo) Entradas Cálculos Casos especiais Saídas Desenvolvimento
Leia maisRoteiro. Introdução. Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans. Objetos. Princípios da Orientação a Objetos
Uma Introdução à Programação Orientada a Objetos e JAVA usando NetBeans Roteiro Introdução Conceitos de Oientação a Objetos A Linguagem Java NetBeans (www.netbeans.org) Fernando Vieira Paulovich paulovic@icmc.usp.br
Leia maisProcessamento da Informação Teoria. Exercícios sobre strings
Processamento da Informação Teoria Exercícios sobre strings Semana 04 Prof. Jesús P. Mena-Chalco 18/05/2013 Uma string é uma sequência Uma string (cadeia) é uma sequência de caracteres. Podemos acessar
Leia maisTeoria da Computação. 2006/2007 Trabalho prático nº 1. Trabalho realizado por: Pedro Oliveira ( ) Rui Costa ( ) Turma: TP1
2006/2007 Trabalho prático nº 1 Trabalho realizado por: Pedro Oliveira (501062444) Rui Costa (501062452) Turma: TP1 1 - Introdução O objectivo deste trabalho era implementar um simulador de Autómatos Finitos
Leia maisMatemática Discreta para Computação e Informática
Matemática Discreta para Computação e Informática P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Matemática Discreta para Computação e Informática
Leia maisAula 4 Estruturas de Controle
UNIP Universidade Paulista Ciência da Computação Aula 4 Estruturas de Controle Prof. Célio Ricardo Castelano 1 Tópicos Abordados 1) Instruções de seleção em Java: 2) Instruções de repetição em Java: 2
Leia maisAlgoritmos I Aula 13 Linguagem de Programação Java
Algoritmos I Aula 13 Linguagem de Programação Java Professor: Max Pereira http://paginas.unisul.br/max.pereira Ciência da Computação IDE Eclipse IDE (Integrated development environment) Criar um projeto
Leia maisLinguagens Regulares, Operações Regulares
Linguagens Regulares, Operações Regulares 1 Definição de Linguagem Regular Relembre a definição de linguagem regular: DEF: A linguagem aceita por um AF M é o conjunto de todos os strings que são aceitos
Leia maisString. Demonstrar a utilização e manipulação com os métodos da classe String.
String 1. Objetivos Demonstrar a utilização e manipulação com os métodos da classe String. 2. Strings 2.1. O que são Strings? Em Java, String é uma seqüência de caracteres utilizada para representação
Leia maisLinguagens Formais e Autômatos 02/2017. LFA Aula 03. Gramáticas regulares /09/2017 Celso OliveteJúnior.
Linguagens Formais e Autômatos 02/2017 LFA Aula 03 Linguagens regulares Gramáticas regulares 25-27/09/2017 Celso OliveteJúnior olivete@fct.unesp.br 1 Linguagens Formais e Autômatos 02/2017 Classificação
Leia maisLinguagens Formais e Autômatos P. Blauth Menezes
Linguagens Formais e Autômatos P. Blauth Menezes blauth@inf.ufrgs.br Departamento de Informática Teórica Instituto de Informática / UFRGS Linguagens Formais e Autômatos - P. Blauth Menezes 1 Linguagens
Leia maisProgramação Java. Marco Fagundes. - Herança, Classes Abstratas e Interfaces Marco Fagundes -
Programação Java - Herança, Classes Abstratas e Interfaces - Marco Fagundes mfagundes@tre-pa.gov.br 1 Tópicos Herança Ligação Dinâmica Polimorfismo 2 Herança Herança é um conceito que mapeia as classes
Leia maisPontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação
Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação LP: Laboratório de Programação Apontamento 9 Prof. ISVega Março de 2004 Controle de Execução: Seleção Múltipla CONTEÚDO
Leia maisHerança e Polimorfismo
Herança e Polimorfismo 2013 O que veremos hoje? Herança e polimorfismo Transparências baseadas no material do Prof. Gilbert Azevedo e Prof. Jailton Carlos Objetivos Conceito de Polimorfismo em POO Mais
Leia maisTECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008/1 2 PERÍODO MÓDULO 3 AVALIAÇÃO MP2 DATA 2/10/2008 ESTRUTURAS DE DADOS 2008/2
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS TURMA 2008/1 2 PERÍODO MÓDULO 3 AVALIAÇÃO MP2 DATA 2/10/2008 ESTRUTURAS DE DADOS 2008/2 Dados de identificação do Acadêmico: Nome: Login: CA: Cidade:
Leia mais