Aplicações da Robótica no Ensino de Ciência da Computação

Tamanho: px
Começar a partir da página:

Download "Aplicações da Robótica no Ensino de Ciência da Computação"

Transcrição

1 Aplicações da Robótica no Ensino de Ciência da Computação Wesley Attrot, Pedro Paulo da Silva Ayrosa Departamento de Computação Universidade Estadual de Londrina (UEL) Caixa Postal Londrina PR Brasil Resumo. A robótica é uma ciência multidisciplinar que estuda o desenvolvimento e a montagem de robôs. Devido ao seu caráter multidisciplinar, o ensino e o estudo da robótica são excelentes ferramentas para promover o trabalho em equipe, a capacidade de buscar novos conhecimentos e promover a interação com pessoas de diversas áreas de conhecimento. Com o objetivo de mostrar a potencialidade de aplicação da robótica no ensino de Ciência da Computação, desenvolveu-se um nova linguagem de programação para o kit de robótica MindStorms da Lego. O desenvolvimento desta nova linguagem mostrou que é possível unir a computação e a robótica em projetos que tenham propósito educacional. Abstract. The robotics is a science multidisciplinary that studies the development and the assembly of robots. Due to its multidisciplinary character, the education and the study of the robotics are excellent tools to promote the work in team, the ability to search for new knowledge and promote the interaction with people of several areas of knowledge. With the objective of show the potentiality of application of the robotics in the education of Computer Science, a new programming language was developed to robotics kit MindStorms of Lego. The development of this new language showed that is possible to join the computation and the robotics in projects that have educational purpose. 1. Introdução Segundo pesquisadores da Case Western Reserve University [Beer, Chiel e Drushel, 1999], em geral os estudantes encontram dificuldades de adaptação quando saem do mundo acadêmico e entram no mundo profissional. Tal dificuldade é proveniente do fato de que os estudantes não estão habituados a trabalhar em equipe, não estão familiarizados com os problemas encontrados no mundo real e raramente têm a oportunidade de ter um pensamento crítico. Inúmeros problemas científicos ou de engenharia exigem conhecimentos multidisciplinares para a realização de cada uma das partes que compõem um projeto e também grande perspicácia por parte dos pesquisados a fim de solucionar os eventuais problemas que possam surgir durante a realização do mesmo. Com base nisto, o estudo da robótica pode vir a ser um meio de suprimir as deficiências dos alunos de Ciência da Computação na medida em que ela vai lhes

2 proporcionar a visão de como trabalhar em equipe e também os conhecimentos multidisciplinares (eletrônica, mecânica, etc) que envolvem o projeto, construção e programação de um robô, além de lhes proporcionar uma clara visão dos reais problemas que ocorrem em um projeto fora do mundo acadêmico. 2. Robótica Educacional A robótica educacional pode ser definida como a montagem de modelos e sistemas robóticos tendo como finalidade o aprendizado de conceitos científicos (física, matemática, eletrônica, mecânica, etc) entre outros por parte de quem realiza a montagem de tais sistemas. Os sistemas robóticos são sistemas mecânicos e eletrônicos que realizam alguma espécie de atividade física, tal como se locomover, movimentar um braço ou levantar um objeto. O objetivo da montagem de tais sistemas é a visualização de conceitos físicos e matemáticos de maneira concreta. Os sistemas robóticos são em geral montados com motores, sensores e diversas outras peças. São controlados por computador ou podem ser programados para que apresentem um determinado comportamento. Existem empresas que fabricam e comercializam kits para a montagem de robôs, os quais podem ser utilizados tendo-se em vista propósitos educacionais. A possibilidade de se utilizar à robótica como meio de reforço ao ensino tradicional (no qual os alunos ficam sentados em carteiras prestando atenção ao que o professor escreve na lousa) é estudada desde os anos 50, pois além de ser uma forma mais estimulante de aprendizado, ela faz com que o aluno entre em contato com tecnologias novas e também com novos conhecimentos. Os primeiros usos da robótica para fins educacionais ocorreram em 1952 com as tartarugas de solo de Gray Walter e W. Ross Ashby que eram dispositivos que se deslocavam pelo chão e se autocontrolavam através de seus sensores e de um programa. Posteriormente Seymour Papert (fundador do Laboratório de Inteligência Artificial do MIT) criou a linguagem de programação LOGO, com a qual se podia controlar uma tartaruga de solo através de comandos; isto no final dos anos 60 [COLEÇÃO 1987]. 3. Potencial de Aplicação Segundo Beer, Chiel e Drushel (1999), a transição de um estudante para a vida profissional é em geral difícil. Ainda segundo estes autores, tal dificuldade se deve ao fato de que da grande parte do trabalho de programação que muitos estudantes de ciência e de engenharia da computação realizam no setor industrial, após estarem formados, o software, é apenas um componente de um sistema muito maior. Este software deve ser projetado tendo-se os outros componentes em mente e também através da colaboração e da interação com as outras pessoas responsáveis pelas outras partes do sistema. Por exemplo, implementar o software que controla a injeção eletrônica de um automóvel é muito diferente de implementar uma busca em profundidade numa árvore binária em uma aula de estrutura de dados. Geralmente essa dificuldade na transição da condição de estudante para a condição de profissional se deve por quatro razões principais:

3 Os estudantes não são treinados para lidar com problemas que necessitem de uma aproximação integrada; Eles raramente são expostos a problemas do mundo real; Eles raramente são encorajados a resolver problemas em um grupo de trabalho, ou trazer informações de outras áreas de conhecimento; Eles raramente têm a oportunidade de realizar um pensamento crítico. Aproximações integradas são essenciais para a solução de problemas em ciência e engenharia. Uma idéia que muitos estudantes de engenharia têm é que cada peça de um projeto complexo funciona como um sistema isolado, e o sistema completo irá funcionar como um todo unificado. Na prática isto nem sempre é verdade. Problemas inesperados surgem caso não seja feito um exame das propriedades especiais de cada peça que integra o sistema, e de suas interações. Cada vez mais, o software é uma parte embutida em um sistema, tal como um avião, um forno microondas ou uma máquina de fotocópias. Em tais sistemas, é essencial integrar o projeto e a implementação das partes mecânica, eletrônica e de controle (software). Fora da sala de aula, os problemas da ciência e da engenharia compartilham certas características do mundo real. Ao contrário dos problemas presentes nos livros texto, pode não haver uma única resposta correta. Além disso, ao invés de um professor, é o mundo quem decide se um projeto de engenharia ou hipótese científica está correta ou não. Não se podem ignorar recursos limitados de tempo, dinheiro e materiais. Finalmente, os dispositivos do mundo real nunca seguem os modelos ideais. Um exemplo é um programa que assume que um sensor sempre irá retornar valores exatos e válidos e que motores irão funcionar na velocidade ordenada e que o torque não será afetado por ruídos, entradas espúrias, saídas não confiáveis ou quebras. Os estudantes não têm experiência para estimar a importância destas questões. O progresso nos problemas da ciência e da engenharia é feito através da colaboração de grupos interdisciplinares e não por uma pessoa trabalhando de forma isolada. As práticas educacionais correntes enfatizam a solução individual do problema com base em disciplinas bem definidas. Como conseqüência, os estudantes não têm as características interpessoais necessárias para participarem de um grupo de trabalho, desta forma eles não terão a capacidade de transpor a barreira lingüística que torna a comunicação interdisciplinar tão difícil. Os estudantes freqüentemente sentem que a educação é algo que é feito para eles, ao invés de algo que eles fazem por si próprios porque eles não são encorajados a pensar criticamente. Isto não limita somente a maneira como eles aprendem, mas geralmente os afasta de uma preparação para o aprendizado contínuo ao longo da vida, de que eles irão necessitar enquanto profissionais. Os estudantes não estão totalmente errados em tomar esta atitude. A prática educacional corrente encoraja a audição passiva durante as aulas, ao invés de uma participação ativa. Isto leva a procura da única resposta que o professor deseja e também a retenção e repetição mecânica, ao invés de explorar criativamente as múltiplas possibilidades através da análise crítica do material. Segundo, ainda, Beer, Chiel e Drushel, para situar estes problemas educacionais, é essencial identificar o assunto que naturalmente empregue todos estes resultados.

4 Um assunto que engloba todos estes resultados é a robótica. Desta forma o estudo e a montagem de robôs pode ser a chave para solucionar tais problemas educacionais. Beer, Chiel e Drushel em princípio, identificaram quatro metas educacionais na robótica: integração, problemas do mundo real, interdisciplinaridade nas equipes, e pensamento crítico. Construir um robô requer que os estudantes integrem controle (software), eletrônica e mecânica em um dispositivo funcional, desta forma, eles irão se confrontar com as interações entre os diferentes subsistemas e terão a oportunidade de explorar as diferenças existentes entre os mesmos durante a construção de seu robô. Construir um autêntico robô, ao invés de programar uma simulação, imediatamente confronta os estudantes com as imperfeições dos dispositivos do mundo real, bem como proporciona o retorno imediato do sucesso ou falha de suas idéias. Se os estudantes trabalharem em equipe, eles serão encorajados a reunir suas habilidades individuais, permitindo-lhes se especializarem em tarefas específicas, dando-lhes experiência em desenvolver habilidades interpessoais para articular e defender seus pontos de vista, mas principalmente de alcançar um consenso do que é melhor para o grupo. Pelo fato da robótica envolver uma grande e variada gama de áreas de conhecimento, os estudantes aprendem que muitas perspectivas podem ser úteis para solucionar um problema difícil. Eles são motivados a aprender a língua de cada uma dessas áreas de conhecimento para quebrar as barreiras da interdisciplinaridade, desta forma os estudantes estão adquirindo conhecimentos de diversas áreas e começarão a ver um sistema como um todo e não mais como subsistemas isolados e reconhecerão que não há uma única resposta correta para tudo, o que encoraja e motiva a sua criatividade. 4. Desenvolvimento de uma aplicação utilizando robótica Será possível desenvolver um trabalho empregando a robótica, cujo objetivo seja a complementação ou mesmo a própria formação acadêmica de um estudante de Ciência da Computação? Segundo as Diretrizes Curriculares do Ministério da Educação ( um estudante de computação raciocina de forma diferente de outros profissionais porque possui a habilidade de construir algoritmos como soluções de problemas. Desta forma deve-se procurar desenvolver um projeto que seja ao mesmo tempo estimulante e desafiador ao estudante de computação. Ainda segundo as Diretrizes Curriculares do Ministério da Educação, compiladores são ferramentas de tradução entre linguagens, mantendo a semântica original, tais como: ambientes para linguagens de programação (compiladores, interpretadores, debuggers, profilers, etc), ambientes para o processamento de linguagens naturais (verificadores orto-sintáticos e tradutores), ferramentas para a compatibilização entre dispositivos de hardware (device-drivers, emuladores, crosscompilers, etc.), dentre outras. O estudo de Compiladores deve abordar: (i) a estrutura de um compilador; (ii) a análise de programas-fonte, com o estudo dos métodos mais importantes de análise

5 léxica e sintática, semântica, de organização da tabela de símbolos e gerenciamento de erros; (iii) as ferramentas para a geração automática dos componentes de um compilador; (iv) máquinas abstratas e otimização de código intermediário; (v) ambientes de tempo de execução; (vi) síntese de programas-objeto, compreendendo esquemas de tradução dirigida por sintaxe, geração de código de máquina e otimização de código. É fundamental que ao fim da disciplina de Compiladores o aluno seja capaz de justificar a escolha das ferramentas, ambientes, paradigmas e linguagens usados e suas versões no desenvolvimento de qualquer projeto de software in-the-small. Conceitos de modularidade, mantenibilidade, portabilidade e custos de software devem ser analisados durante todo o curso. O ensino de Compiladores deve assegurar aos alunos a oportunidade de aplicação das técnicas estudadas no desenvolvimento de projetos práticos de porte realístico. Compiladores é uma das áreas da Computação mais bem formalizadas, o que enseja implementações de ferramentas de alta correção e eficiência. A matéria Compiladores deve ser precedida do estudo de conceitos teóricos de linguagens e autômatos, sistema operacionais e arquiteturas de computadores. A área de compiladores tem como objetivo final aproximar o computador das linguagens próprias de seus usuários, facilitando assim a comunicação entre ambos. Como anteriormente citado, a disciplina deve fornecer ao aluno uma oportunidade de pôr em prática os conhecimentos adquiridos. A construção de uma nova linguagem de programação se constitui uma ótima oportunidade de aplicação destes conhecimentos apresentados na disciplina de compiladores. Tendo-se em vistas estas afirmações, optou-se por realizar uma aplicação da robótica dentro da área de compiladores. A aplicação desenvolvida foi uma nova linguagem de programação para o Kit MindStorms da LEGO. Deve-se ressaltar que qualquer outra disciplina de Ciência da Computação poderia ter sido escolhida, conforme o tipo de enfoque desejado. A escolha da disciplina de compiladores é interressante pois a construção de compiladores se estende através dos temas de linguagens de programação, arquitetura de máquina, teoria das linguagens, algoritmos e engenharia de software [Aho, Sethi e Ullman, 1995]. Ao longo dos anos 50, os compiladores foram considerados programas notoriamente difíceis de se escrever. Desde então foram descobertas técnicas sistemáticas para o tratamento de muitas das mais importantes tarefas que ocorem durante a compilação. Igualmente, foram desenvolvidas boas linguagens de implementação, ambientes de programação e ferramentas de software. Com estes avanços, até um compilador substancial pode ser escrito por estudantes, num curso semestral [Aho, Sethi e Ullman, 1995]. A construção de um compilador para o Kit de robótica da LEGO exige que os envolvidos tenham conhecimento da arquitetura e do funcionamento do mesmo. Desta forma, os envolvidos terão a oportunidade de estudar o funcionamento de uma arquitetura real e não muito complexa.

6 5. Linguagem WELIX A linguagem desenvolvida recebeu o nome de WELIX. Esta nova linguagem é baseada no Portugol. O Portugol é uma pseudolinguagem de programação (simbiose do Português com o ALGOL e Pascal). A idéia do Portugol é permitir que com um conjunto básico de primitivas, seja possível ao projetista pensar no problema e não na máquina que vai executar o algoritmo e, por outro lado, não fique muito distante desta mesma máquina [GUIMARÃES, 1994]. Embora seja baseado no Portugol, a linguagem WELIX incorpora um pouco da formalidade da linguagem Pascal (elementos semânticos) e alguns elementos da linguagem C (elementos sintáticos). Diferentemente do Portugol, a linguagem WELIX não é uma linguagem de propósito geral, mas sim de aplicação específica, pois gera código específico para o RCX que integra o Kit MindStorms da LEGO e inclui uma API integrada especialmente destinada a realizar o controle do hardware específico que integra um kit de robótica, ou seja, motores e sensores. A API da linguagem WELIX é baseada num conjunto semelhante presente na linguagem NQC desenvolvida por Dave Baum [BAUM, 2000]. A implementação do compilador WELIX foi feito em módulos; assim temos um módulo de análise léxica, um módulo de análise sintática e um terceiro módulo de análise semântica e geração de código. O desenvolvimento da linguagem de programação WELIX para o RCX tem como objetivo mostrar uma aplicação da robótica dentro do campo de estudo da Ciência da Computação. A disciplina de compiladores foi escolhida, visto que o desenvolvimento de um compilador envolve diversos temas da computação como linguagens de programação, linguagens formais, arquitetura de computadores, estruturas de dados, etc. Qualquer disciplina de computação poderia ter sido escolhida, dependendo dos objetivos desejados. O envolvimento da robótica com a computação, pode ser a vir uma maneira de estimular o estudante a estudar e motivá-lo a buscar soluções para os problemas que ele fatalmente irá encontrar durante seu aprendizado, tornando-se assim mais independente do professor. O presente projeto poderia, por exemplo, fazer parte da disciplina de compiladores, onde os alunos teriam que desenvolver o compilador e projetar seus próprios robôs e testar a eficácia do mesmo. O compilador desenvolvido poderia, por exemplo, ser utilizado no ensino de lógica de programação e programação. Os alunos desenvolveriam algoritmos em WELIX e posteriormente os testariam na prática com os robôs. Em sistemas operacionais, os alunos poderiam aplicar os conceitos aprendidos em sala de aula desenvolvendo um novo sistema operacional para o Kit de robótica MindStorms, tal como o LegOS. Além de verificar na prática o funcionamento dos conceitos aprendidos, o conhecimento adquirido em arquitetura de computadores seria extremamente utilizado. Em inteligência artificial, os alunos poderiam criar robôs e tentar simular comportamento inteligente nos mesmos, com base nas teorias estudadas. No campo de comunicação de dados, os alunos poderiam criar um novo protocolo de comunicação para o RCX, possivelmente criando circuitos de interface entre o RCX e o computador, integrando além da comunicação de dados, a disciplina de sistemas digitais. Vale ressaltar que o desenvolvimento de tal tipo de circuito envolveria diversos detalhes que

7 somente serão resolvidos com base nas teorias da física, o que acabaria por trazer mais uma disciplina componente da Ciência da Computação para o âmbito das possíveis aplicações da robótica. O objetivo deste trabalho é apresentar a robótica como ferramenta educacional, mostrar que é possível desenvolver um trabalho inicial envolvendo computação e robótica e, mostrar que as possibilidades da aplicação envolvendo estas duas ciências são inúmeras, porque como disse Matthew L. Ginsberg, as habilidades complementares dos humanos e das máquinas, tornam possível resolver problemas que nenhum dos dois conseguiria sozinho. 6. Conclusão A realização deste trabalho permitiu concluir que é possível desenvolver um trabalho educacional envolvendo robótica e computação. Com a criação da linguagem de programação WELIX e com o desenvolvimento de seu compilador para o RCX, que integra o Kit MindStorms da Lego, foi apresentada uma aplicação dentro da disciplina de compiladores. Deve-se ressaltar que qualquer disciplina pertencente ao âmbito da Ciência da Computação poderia ter sido escolhida, dependendo apenas dos objetivos educacionais a serem alcançados. A disciplina de compiladores foi escolhida, pois a construção de um compilador demanda conhecimento de diversas áreas da computação [KNUDSEN, 1999]. Este trabalho engloba algumas das metas educacionais inicialmente propostas. O desenvolvimento de um compilador para o RCX proporciona uma visão do tipo de problema que está presente em projetos fora do mundo acadêmico. A comunicação e o controle que o RCX mantém com os sensores e os motores exigem a interação com outras ciências, proporcionando uma visão multidisciplinar do projeto. Por último, devese ressaltar que os inúmeros problemas que surgiram neste projeto, bem como outros que poderiam ter surgido, são uma forma de fazer com que o pesquisador tenha de investigar inúmeras possibilidades sob várias óticas a fim de encontrar a solução ou a melhor solução que resolva o problema, o que em geral acaba por resultar em aquisição de conhecimento. Desta forma demonstra-se que a robótica pode ser utilizada como ferramenta educacional no ensino de Ciência da Computação. 7. Referências Bibliográficas AHO, Alfred V.; SETHI, Ravi; ULLMAN, Jeffrey D. Compiladores Princípios, Técnicas e Ferramentas. Rio de Janeiro: LTC Livros Técnicos e Científicos Editora S.A., BAUM, Dave. Dave Baum s Definitive Guide to Lego Mindstorms: Technology in Action Series. United States of America: Apress, BEER, Randall D.; CHIEL, Hillel J.; DRUSHEL, Richard F. Using Autonomous Robotics to Teach Science and Engineering. Communications of the ACM, jun

8 BRASIL. Ministério da Educação: Secretaria de Educação Superior. Diretrizes Curriculares de Cursos da Área de Computação e Informática: COLEÇÃO Microcomputador Curso Prático. Editora Globo, GUIMARÃES, Ângelo de M; LAGES, Newton A. de C. Algoritmos e Estruturas de Dados. Rio de Janeiro: LTC Livros Técnicos e Científicos Editora S.A., KNUDSEN, Jonathan B. The Unofficial Guide to Lego Mindstorms Robots. O'Reilly & Associates, novembro de 1999.

PORTUGOL/PLUS: UMA FERRAMENTA DE APOIO AO ENSINO DE LÓGICA DE PROGRAMAÇÃO BASEADO NO PORTUGOL

PORTUGOL/PLUS: UMA FERRAMENTA DE APOIO AO ENSINO DE LÓGICA DE PROGRAMAÇÃO BASEADO NO PORTUGOL IV Congresso RIBIE, Brasilia 1998 PORTUGOL/PLUS: UMA FERRAMENTA DE APOIO AO ENSINO DE LÓGICA DE PROGRAMAÇÃO BASEADO NO PORTUGOL ahmed ali abdalla esmin esmin@unoescjba.rct-sc.br fax : (049) 566-1422 Introdução

Leia mais

CP Compiladores I Prof. Msc.. Carlos de Salles

CP Compiladores I Prof. Msc.. Carlos de Salles CP 5017.9 Prof. Msc.. Carlos de Salles 1 - EMENTA O Processo de Compilação. Deteção e Recuperação de Erros. Introdução à geração de Código Intermediário. Geração de Código de Máquina. Otimização. Uma visão

Leia mais

Programação de Sistemas (Sistemas de Programação) Semana 10, Aula 17

Programação de Sistemas (Sistemas de Programação) Semana 10, Aula 17 PCS3616 Programação de Sistemas (Sistemas de Programação) Semana 10, Aula 17 Linguagens e Compiladores Programação em linguagem de alto nível Escola Politécnica da Universidade de São Paulo Roteiro 1.

Leia mais

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores

Compiladores. Motivação. Tradutores. Motivação. Tipos de Tradutores. Tipos de Tradutores Motivação Prof. Sérgio Faustino Compiladores Conhecimento das estruturas e algoritmos usados na implementação de linguagens: noções importantes sobre uso de memória, eficiência, etc. Aplicabilidade freqüente

Leia mais

Linguagens e Compiladores

Linguagens e Compiladores Linguagens e Compiladores Aula 1: a) Critérios b) Noções de Compiladores e Interpretadores c) Usos da tecnologia de compilação d) Compiladores, filtros e pré-processadores e) Estruturação lógica de compiladores

Leia mais

Projeto de Compiladores

Projeto de Compiladores Projeto de Compiladores FIR Faculdade Integrada do Recife João Ferreira 12 e 13 de fevereiro de 2007 Questionário 1. Em quais linguagens de programação você já programou? 2. O que você sabe sobre compiladores?

Leia mais

Arquitetura e Organização de computadores

Arquitetura e Organização de computadores Arquitetura e Organização de computadores Aula 1: Organização e evolução de computador, parte 1 Prof. MSc. Pedro Brandão Neto pedroobn@gmail.com Sistemas de Informação - UNDB Introdução Computador Digital

Leia mais

Introdução à Computação: Máquinas Multiníveis

Introdução à Computação: Máquinas Multiníveis Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

Introdução à Programação uma Abordagem Funcional

Introdução à Programação uma Abordagem Funcional Universidade Federal do Espírito Santo Introdução à Programação uma Abordagem Funcional Programação I Prof.ª Claudia Boeres boeres@inf.ufes.br CT VII - Sala 34 Departamento de Informática Centro Tecnológico

Leia mais

Conceitos de Linguagens de Programação

Conceitos de Linguagens de Programação Conceitos de Linguagens de Programação Aula 03 Processo de Compilação Edirlei Soares de Lima Métodos de Implementação Arquitetura de Von Neumann: A linguagem de máquina de um computador

Leia mais

MATRIZ CURRICULAR BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO. 1º Período

MATRIZ CURRICULAR BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO. 1º Período MATRIZ CURRICULAR BACHARELADO EM ENGENHARIA DA COMPUTAÇÃO 1º Período Código Disciplina CHT 1 CHP 2 CH Total Pré-requisitos Dados I 40 40 80 - Cálculo I 80-80 - Fundamentos da Computação 40-40 - Fundamentos

Leia mais

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria

Leia mais

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria

Leia mais

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria

Leia mais

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG Matriz Curricular FGGCOMP - Bacharelado em Ciência da Computação 0. Disciplinas Obrigatórias FGGCOMP.00 Cálculo I FGGELET.00 - Cálculo I / FGGMATE.00 - Cálculo Diferencial e Integral I FGGCOMP.00 Geometria

Leia mais

GRADE CURRICULAR E CORPO DOCENTE. Fase 1 Carga horária total: 360h

GRADE CURRICULAR E CORPO DOCENTE. Fase 1 Carga horária total: 360h Ciência da Computação CÂMPUS LAGES Instrumentos Regulatórios (Resolução CEPE e CONSUP ou Portaria de reconhecimento do curso pelo MEC) RESOLUÇÃO CEPE/IFSC Nº 39, DE 13 DE AGOSTO DE 2014. RESOLUÇÃO CONSUP/IFSC

Leia mais

ESTUDO E DESENVOLVIMENTO DE UM BRAÇO ROBÓTICO VESTÍVEL UTILIZANDO LEGO MINDSTORMS RESUMO

ESTUDO E DESENVOLVIMENTO DE UM BRAÇO ROBÓTICO VESTÍVEL UTILIZANDO LEGO MINDSTORMS RESUMO ESTUDO E DESENVOLVIMENTO DE UM BRAÇO ROBÓTICO VESTÍVEL UTILIZANDO LEGO MINDSTORMS Luiz F. A. RODRIGUES 1 ; Rodolfo F. BECKER 2 ; Heber R. MOREIRA 3 RESUMO Atualmente, a ciência está cada vez mais extinguindo

Leia mais

CIÊNCIA DA COMPUTAÇÃO

CIÊNCIA DA COMPUTAÇÃO CURSO G R A D E C U R R I C U L A R HÍBRIDO + CIÊNCIA DA COMPUTAÇÃO 1 OBJETIVOS DO CURSO Ciência da Computação Você aprende junto a pesquisadores e próximo do mercado de trabalho. As empresas participam

Leia mais

INTELIGÊNCIA COMPUTACIONAL

INTELIGÊNCIA COMPUTACIONAL Rafael D. Ribeiro, M.Sc. rafaeldiasribeiro@gmail.com http://www.rafaeldiasribeiro.com.br A Inteligência Computacional (IC), denominada originalmente de Inteligência Artificial (IA), é uma das ciências

Leia mais

Curso de Tecnologia em Sistemas Eletrônicos MATRIZ CURRICULAR. Módulo I /Semestre 1 Carga horária total: 400h

Curso de Tecnologia em Sistemas Eletrônicos MATRIZ CURRICULAR. Módulo I /Semestre 1 Carga horária total: 400h Curso de Tecnologia em Sistemas Eletrônicos CÂMPUS FLORIANÓPOLIS MATRIZ CURRICULAR Módulo I /Semestre 1 Carga horária total: 400h Circuitos Elétricos 1 80 Lógica Combinacional 80 Física Geral 80 Comunicação

Leia mais

Compiladores. Eduardo Ferreira dos Santos. Fevereiro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 38

Compiladores. Eduardo Ferreira dos Santos. Fevereiro, Ciência da Computação Centro Universitário de Brasília UniCEUB 1 / 38 Compiladores Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Fevereiro, 2017 1 / 38 Sumário 1 Compiladores 2 Linguagens de programação 3 Ciência dos compiladores

Leia mais

Autômatos e Linguagens

Autômatos e Linguagens Autômatos e Linguagens Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Agosto, 2016 1 / 41 Sumário 1 Compiladores 2 Linguagens de programação 3 Ciência dos compiladores

Leia mais

ESTUDO DA LINGUAGEM NXC PARA PROGRAMAÇÃO DE UM ROBÔ MÓVEL NA PLATAFORMA LEGO MINDSTORMS

ESTUDO DA LINGUAGEM NXC PARA PROGRAMAÇÃO DE UM ROBÔ MÓVEL NA PLATAFORMA LEGO MINDSTORMS ESTUDO DA LINGUAGEM NXC PARA PROGRAMAÇÃO DE UM ROBÔ MÓVEL NA PLATAFORMA LEGO MINDSTORMS OBJETIVOS Rachel Lima Tuma 1 José Pinheiro de Queiroz Neto 2 Diante da pouca acessibilidade quanto ao idioma, dos

Leia mais

GRADUAÇÃO EM ENGENHARIA DE COMPUTAÇÃO - EAD

GRADUAÇÃO EM ENGENHARIA DE COMPUTAÇÃO - EAD GRADUAÇÃO EM ENGENHARIA DE COMPUTAÇÃO - EAD Com o advento da indústria 4.0, há uma crescente demanda de profisisonais com habilidades de desenvolver dispositivos e softwares para as mais variadas áreas

Leia mais

CÓD CURSO DE ENGENHARIA DE COMPUTAÇÃO MATRIZ CURRICULAR Currículo nº1

CÓD CURSO DE ENGENHARIA DE COMPUTAÇÃO MATRIZ CURRICULAR Currículo nº1 Aprovado no CONGRAD de: 29.08.2017 Vigência: ingressos a partir de 2018/1 CÓD. 6570- CURSO DE ENGENHARIA DE COMPUTAÇÃO MATRIZ CURRICULAR Currículo nº1 ÁREAS DE FORMAÇÃO Créditos Acadêmicos Carga Horária

Leia mais

Descritivo Combo 4 (Conjunto de 4 kits Modelix Marte Plus)

Descritivo Combo 4 (Conjunto de 4 kits Modelix Marte Plus) Aspectos Gerais do Produto: Descritivo Combo 4 (Conjunto de 4 kits Modelix Marte Plus) A Modelix Robotics oferece neste kit a maneira mais fácil e econômica para que a escola implante robótica. Ele permite

Leia mais

Bruno Ribeiro da Silva. A adaptação de um sistema operacional para a execução em uma diferente arquitetura

Bruno Ribeiro da Silva. A adaptação de um sistema operacional para a execução em uma diferente arquitetura Bruno Ribeiro da Silva A adaptação de um sistema operacional para a execução em uma diferente arquitetura Universidade Federal de Santa Catarina Florianópolis, Fevereiro de 2007 1 Bruno Ribeiro da Silva

Leia mais

Compilador Educativo VERTO: ambiente para aprendizagem de compiladores

Compilador Educativo VERTO: ambiente para aprendizagem de compiladores Compilador Educativo VERTO: ambiente para aprendizagem de compiladores Carlos Sérgio Schneider Liliana Maria Passerino Ricardo Ferreira de Oliveira Centro Universitário Feevale / PGIE-UFRGS Novo Hamburgo

Leia mais

Construção de Compiladores. Capítulo 1. Introdução. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2014.

Construção de Compiladores. Capítulo 1. Introdução. José Romildo Malaquias. Departamento de Computação Universidade Federal de Ouro Preto 2014. Construção de Compiladores Capítulo 1 Introdução José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2014.2 1/22 1 Linguagens de programação 2 Compilação 2/22 Tópicos 1

Leia mais

Autores: Roberto Krieck, presidente e Márcio Belli, gerente comercial da Operacional Solution, fornecedora de software ERP e MES

Autores: Roberto Krieck, presidente e Márcio Belli, gerente comercial da Operacional Solution, fornecedora de software ERP e MES Autores: Roberto Krieck, presidente e Márcio Belli, gerente comercial da Operacional Solution, fornecedora de software ERP e MES Atualmente, muito se fala sobre indústria 4.0 e como a informatização e

Leia mais

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG LEI Nº.9, DE 9//00, PUBLICADA NO DOU DE 0//00, SEÇÃO I, PAGS. I - Rua São Luiz Gonzaga, s/n - São Luiz - Formiga - MG - CEP: 0-000 Tel: ()-09 - Site: www.formiga.ifmg.edu.br Matriz Curricular FGGCOMP -

Leia mais

CURRÍCULO ACADÊMICO. _ Ciência da Computação BACHARELADO

CURRÍCULO ACADÊMICO. _ Ciência da Computação BACHARELADO CURRÍCULO ACADÊMICO _ Ciência da Computação BACHARELADO 1 Graduação em _ Ciência da Computação A experiência de aprendizagem no curso de Ciência da Computação da Unisinos é marcada pelo incentivo a utilização

Leia mais

O Robô Educador Introdução

O Robô Educador Introdução O Robô Educador Introdução A LEGO Education tem o prazer de lhe trazer o Robô Educador uma seleção de atividades tutoriais que apresenta de maneira estruturada e divertida como começar com o seu LEGO MINDSTORMS

Leia mais

Programação Estruturada Aula - Introdução a Linguagem C

Programação Estruturada Aula - Introdução a Linguagem C Programação Estruturada Aula - Introdução a Linguagem C Prof. Flávio Barros flavioifma@gmail.com www.flaviobarros.com.br 2 HISTÓRICO DA LINGUAGEM C HISTÓRICO DA LINGUAGEM C Como tudo iniciou... C iniciou

Leia mais

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG LEI Nº.9, DE 9//00, PUBLICADA NO DOU DE 0//00, SEÇÃO I, PAGS. I - Rua São Luiz Gonzaga, s/n - São Luiz - Formiga - MG - CEP: 70-000 Tel: (7)-09 - Site: www.formiga.ifmg.edu.br Matriz Curricular FGGCOMP

Leia mais

Linguagens de Programação Aula 3

Linguagens de Programação Aula 3 Aula 3 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada... Classificação das LPs (nível, geração e paradigma) Paradigmas Imperativo, OO, funcional, lógico e concorrente 2/33 Na aula de hoje...

Leia mais

COMPILADORES PROGRAMA E BIBLIOGRAFIA

COMPILADORES PROGRAMA E BIBLIOGRAFIA COMPILADORES PROGRAMA E BIBLIOGRAFIA Mariza A. S. Bigonha e Roberto S. Bigonha UFMG 27 de maio de 2008 Todos os direitos reservados Proibida cópia sem autorização dos autores OBJETIVOS DO CURSO Ensinar

Leia mais

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG

SERVIÇO PÚBLICO FEDERAL MINISTÉRIO DA EDUCAÇÃO INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE MINAS GERAIS IFMG LEI Nº.9, DE 9//00, PUBLICADA NO DOU DE 0//00, SEÇÃO I, PAGS. I - Rua São Luiz Gonzaga, s/n - São Luiz - Formiga - MG - CEP: 0-000 Tel: ()-09 - Site: www.formiga.ifmg.edu.br Matriz Curricular FGGCOMP -

Leia mais

Estimulando o Ensino da Robótica e Programação Através de Simuladores

Estimulando o Ensino da Robótica e Programação Através de Simuladores Estimulando o Ensino da Robótica e Programação Através de Simuladores Carlos Pena - Graduando em Engenharia da Computação - vhssa@cin.ufpe.br Victor Sabino - Mestrando em Ciência da Computação - chcp@cin.ufpe.br

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Paradigmas para linguagens de Programação

Leia mais

Robótica Pedagógica: Percurso e Perspectivas

Robótica Pedagógica: Percurso e Perspectivas Robótica Pedagógica: Percurso e Perspectivas João Vilhete Viegas d Abreu Universidade Estadual de Campinas - Unicamp Núcleo de Informática Aplicada à Educação - NIED jvilhete@unicamp.br Roteiro Contextualização

Leia mais

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02

Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02 Tópicos Avançados em Sistemas Computacionais: Infraestrutura de Hardware Aula 02 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação POR QUE APRENDER CONCEITOS

Leia mais

Algoritmo de Programação. Aula1

Algoritmo de Programação. Aula1 Algoritmo de Programação Aula1 Conceituação Muitas definições podem ser dadas à palavra algoritmo. Atualmente, tem-se associado algoritmo à computação, mas este não é um termo restrito à computação ou

Leia mais

Arquiteturas RISC e CISC. Adão de Melo Neto

Arquiteturas RISC e CISC. Adão de Melo Neto Arquiteturas RISC e CISC Adão de Melo Neto 1 Arquitetura RISC Arquitetura RISC. É um das inovações mais importantes e interessantes. RISC significa uma arquitetura com um conjunto reduzido de instruções

Leia mais

Algoritmos e Programação

Algoritmos e Programação Universidade Federal do Vale do São Francisco Curso de Engenharia da Produção / Elétrica Parte 04 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti www.twitter.com/jorgecav

Leia mais

SISTEMA DE NAVEGAÇÃO PARA UM ROBÔ BASEADO EM SENSOR MAGNÉTICO

SISTEMA DE NAVEGAÇÃO PARA UM ROBÔ BASEADO EM SENSOR MAGNÉTICO SISTEMA DE NAVEGAÇÃO PARA UM ROBÔ BASEADO EM SENSOR MAGNÉTICO Alessandra Mayara Buso de Souza (PIBIC/CNPq-UTFPR), e-mail: alessandrabuso@hotmail.com, Marcos Vallim (Orientador), e-mail: mvallim@utfpr.edu.br.

Leia mais

Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1

Processos de Software by Pearson Education Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Processos de Software Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 4 Slide 1 Objetivos Apresentar modelos de processos de software Descrever três modelos genéricos de processo e quando

Leia mais

As Construções Microgenéticas e o Design em Robótica Educacional*

As Construções Microgenéticas e o Design em Robótica Educacional* As Construções Microgenéticas e o Design em Robótica Educacional* Daniel de Queiroz Lopes, Ms. Léa da Cruz Fagundes, Dra. Programa de Pós-Graduação em Informática na Educação Universidade Federal do Rio

Leia mais

AMBIENTE DIDÁTICO GRÁFICO PARA A COMPREENSÃO DE LÓGICA DE PROGRAMAÇÃO. Rodrigo Ferreira da Silva

AMBIENTE DIDÁTICO GRÁFICO PARA A COMPREENSÃO DE LÓGICA DE PROGRAMAÇÃO. Rodrigo Ferreira da Silva AMBIENTE DIDÁTICO GRÁFICO PARA A COMPREENSÃO DE LÓGICA DE PROGRAMAÇÃO Rodrigo Ferreira da Silva rodrigoferreira2002@hotmail.com Klaus Schlünzen Junior klaus@prudente.unesp.br Universidade Estadual Paulista

Leia mais

COMPARATIVOS DE AMBIENTES DE PROGRAMAÇÃO GRÁFICOS PARA O KIT DE ROBÓTICA LEGO MINDSTORMS NXT

COMPARATIVOS DE AMBIENTES DE PROGRAMAÇÃO GRÁFICOS PARA O KIT DE ROBÓTICA LEGO MINDSTORMS NXT COMPARATIVOS DE AMBIENTES DE PROGRAMAÇÃO GRÁFICOS PARA O KIT DE ROBÓTICA LEGO MINDSTORMS NXT Brenda Kieling Balbinotti 1 ; Marcelo Massoco Cendron 2 ; Nicole Dalmolin Kochan 3 INTRODUÇÃO A programação

Leia mais

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO Data: 23/09/2015 Currículo de Cursos Hora: 07:48:26

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO Data: 23/09/2015 Currículo de Cursos Hora: 07:48:26 UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO Data: 23/09/2015 Currículo de Cursos Hora: 07:48:26 Curso: Engenharia da Computação Nível: Ensino Superior Grau Conferido: Engenheiro de Computação Turno: Integral

Leia mais

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO Data: 05/07/2017 Currículo de Cursos Hora: 17:30:22

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO Data: 05/07/2017 Currículo de Cursos Hora: 17:30:22 UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO Data: 05/07/2017 Currículo de Cursos Hora: 17:30:22 Curso: Nível: Grau Conferido: Turno: Tipo: Modalidade: Funcionamento: Documento de Autorização: Engenharia da

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Conceito de Algoritmo Pseudocódigo Tipos de

Leia mais

Introdução à Computação: Máquinas Multiníveis

Introdução à Computação: Máquinas Multiníveis Introdução à Computação: Máquinas Multiníveis Beatriz F. M. Souza (bfmartins@inf.ufes.br) http://inf.ufes.br/~bfmartins/ Computer Science Department Federal University of Espírito Santo (Ufes), Vitória,

Leia mais

Pró-Reitoria Acadêmica Diretoria Acadêmica Assessoria Pedagógica da Diretoria Acadêmica

Pró-Reitoria Acadêmica Diretoria Acadêmica Assessoria Pedagógica da Diretoria Acadêmica FACULDADE: CENTRO UNIVERSITÁRIO DE BRASÍLIA UniCEUB CURSO: CIÊNCIA DA COMPUTAÇÃO DISCIPLINA: CONSTRUÇÃO DE COMPILADORES CARGA HORÁRIA: 75 H. A. ANO/SEMESTRE: 2016/02 PROFESSOR: EDUARDO FERREIRA DOS SANTOS

Leia mais

Paradigmas de Linguagens

Paradigmas de Linguagens Paradigmas de Linguagens Aula 1: Introdução e Conceitos Básicos Professora Sheila Cáceres O que é um paradigma??? Paradigmas de Linguagens - Sheila Cáceres 2 O que é um paradigma??? Paradigmas de Linguagens

Leia mais

ORGANIZAÇÃO DE COMPUTADORES

ORGANIZAÇÃO DE COMPUTADORES ORGANIZAÇÃO DE COMPUTADORES AULA 03 PROFº RITIELLE SOUZA DISTRIBUIÇÃO LÓGICA DISTRIBUIÇÃO LÓGICA Arquitetura de Von Neumann Uma unidade central de processamento recebe informações através de uma unidade

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores Instituto de Computação UFF Departamento de Ciência da Computação Otton Teixeira da Silveira Filho Conteúdo Alguns Conceitos sobre Linguagens Conceito de Algoritmo Pseudocódigo

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE 1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE CAMPUS JOÃO CÂMARA ENGENHARIA DE SOFTWARE Nickerson Fonseca Ferreira nickerson.ferreira@ifrn.edu.br Introdução 2 Antes de qualquer

Leia mais

INTRODUÇÃO. Prof. Msc. Luis Filipe Alves Pereira 2015

INTRODUÇÃO. Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO 02/21 QUAIS AS OPERAÇÕES BÁSICAS REALIZADAS EM UM COMPUTADOR DIGITAL? INTRODUÇÃO 03/21 QUAIS AS OPERAÇÕES BÁSICAS REALIZADAS EM UM COMPUTADOR

Leia mais

Introdução à Computação

Introdução à Computação Introdução à Computação Jordana Sarmenghi Salamon jssalamon@inf.ufes.br jordanasalamon@gmail.com http://inf.ufes.br/~jssalamon Departamento de Informática Universidade Federal do Espírito Santo Agenda

Leia mais

Projetos Curriculares LEGO Education WeDo 2.0

Projetos Curriculares LEGO Education WeDo 2.0 Projetos Curriculares LEGO Education WeDo 2.0 LEGO Education WeDo 2.0 foi desenvolvido para envolver e motivar os estudantes do Ensino Fundamental I a aprender conteúdos relacionados às áreas de Ciências

Leia mais

Processos de software

Processos de software Processos de software 1 Processos de software Conjunto coerente de atividades para especificação, projeto, implementação e teste de sistemas de software. 2 Objetivos Introduzir modelos de processos de

Leia mais

ORGANIZAÇÃO CURRICULAR TÉCNICO NA ÁREA DE INFORMÁTICA: HABILITAÇÃO TÉCNICO EM INFORMÁTICA NA MODALIDADE A DISTÂNCIA /1

ORGANIZAÇÃO CURRICULAR TÉCNICO NA ÁREA DE INFORMÁTICA: HABILITAÇÃO TÉCNICO EM INFORMÁTICA NA MODALIDADE A DISTÂNCIA /1 ORGANIZAÇÃO CURRICULAR TÉCNICO NA ÁREA DE INFORMÁTICA: HABILITAÇÃO TÉCNICO EM INFORMÁTICA NA MODALIDADE A DISTÂNCIA - 2008/1 DC 9481 03/10/07 Rev. 00 1. Dados Legais Autorizado pelo Parecer 278 do Conselho

Leia mais

Introdução à Programação. Conceitos Básicos de Programação

Introdução à Programação. Conceitos Básicos de Programação Introdução à Programação Conceitos Básicos de Programação Tópicos da Aula Antes de aprender a programar, precisamos saber o que é um algoritmo Definição de algoritmo Usando algoritmos para resolver problemas

Leia mais

Programação de Computadores:

Programação de Computadores: Instituto de C Programação de Computadores: Introdução a Linguagens de Programação Luis Martí Instituto de Computação Universidade Federal Fluminense lmarti@ic.uff.br - http://lmarti.com Seis Camadas Problema

Leia mais

Figura 4.2: Matriz Curricular

Figura 4.2: Matriz Curricular Figura 4.2: Matriz Curricular 3660 Fundamentos de Matemática e Estatística Física Eletrônica Algoritmos e Programação Arquitetura de Computadores Metodologias e Técnicas de Computação Engenharia e Sistemas

Leia mais

Linguagens de Programação

Linguagens de Programação O estudante estuda muito. Regras: 7 9 12 14. . Regras: 2 4 . Regras: 1 Representar através de uma árvore de derivação. 77 O estudante estuda muito.

Leia mais

Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang

Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES. Introdução. Geovane Griesang Universidade de Santa Cruz do Sul UNISC Departamento de informática COMPILADORES Introdução geovanegriesang@unisc.br Processadores de linguagem Linguagens de programação são notações para se descrever

Leia mais

Curso de Bacharelado em Ciência da Computação

Curso de Bacharelado em Ciência da Computação Curso de Bacharelado em Ciência da Computação Há um século, riqueza e sucesso vinham para aqueles que produziam e distribuíam mercadorias manufaturadas. Hoje, riqueza e sucesso vêm para aqueles que utilizam

Leia mais

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto

COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES. Adão de Melo Neto COMPUTADORES COM UM CONJUNTO REDUZIDO DE INSTRUÇÕES Adão de Melo Neto 1 INTRODUÇÃO Desde 1950, houveram poucas inovações significativas nas áreas de arquitetura e organização de computadores. As principais

Leia mais

A Informática Na Educação: Como, Para Que e Por Que

A Informática Na Educação: Como, Para Que e Por Que RBEBBM -01/2001 A Informática Na Educação: Como, Para Que e Por Que Autores:José A. Valente Afiliação:Departamento de Multimeios e Nied - Universidade Estadual de Campinas - Unicamp, Campinas - SP javalente@unicamp.br

Leia mais

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO Data: 29/08/2011 Currículo de Cursos Hora: 16:19:21

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO Data: 29/08/2011 Currículo de Cursos Hora: 16:19:21 UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO Data: 29/08/2011 Currículo de Cursos Hora: 16:19:21 Curso: Engenharia de Computacao Nível: Ensino Superior Grau Conferido: Engenheiro de Computação Turno: Diurno

Leia mais

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2)

Tecnólogo em Análise e Desenvolvimento de Sistemas. Sistemas Operacionais (SOP A2) Tecnólogo em Análise e Desenvolvimento de Sistemas Sistemas Operacionais (SOP A2) Conceitos de Hardware e Software Referências: Arquitetura de Sistemas Operacionais. F. B. Machado, L. P. Maia. Editora

Leia mais

Quadro de Organização Curricular

Quadro de Organização Curricular Lei Federal n o 9394/96 Resoluções CNE/CEB nº 6/12 e 3/08, alterada pela Resolução CNE/CEB nº4/12 LEGISLAÇÃO Quadro de Organização Curricular UNIDADES CURRICULARES SEMESTRES CARGA HORÁRIA TOTAL 1 º 2 º

Leia mais

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan

Introdução aos computadores, à Internet e à World Wide Web. Prof. Marcelo Roberto Zorzan Introdução aos computadores, à Internet e à World Wide Web Prof. Marcelo Roberto Zorzan História do Java Origem Linguagem desenvolvida pela Sun Microsystems Sintaxe similar ao C++ Inicialmente chamada

Leia mais

AULA 03: FUNCIONAMENTO DE UM COMPUTADOR

AULA 03: FUNCIONAMENTO DE UM COMPUTADOR ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES I AULA 03: FUNCIONAMENTO DE UM COMPUTADOR Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação O QUE É UM COMPUTADOR?

Leia mais

CURSO DE GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO MATRIZ CURRICULAR MATUTINO Fase N.

CURSO DE GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO MATRIZ CURRICULAR MATUTINO Fase N. CURSO DE GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO MATRIZ CURRICULAR MATUTINO Fase N. Ordem Código COMPONENTE CURRICULAR Créditos Horas Prérequisitos 01 Introdução à informática 04 60 02 Matemática instrumental

Leia mais

Gerenciamento de Comunicação em Projetos de Software - Um estudo de caso no Laboratório Gaia da UEL

Gerenciamento de Comunicação em Projetos de Software - Um estudo de caso no Laboratório Gaia da UEL Gerenciamento de Comunicação em Projetos de Software - Um estudo de caso no Laboratório Gaia da UEL Vinicius Marques Chioratto 1, Rodolfo Miranda de Barros 1 1 Departamento de Computação Universidade Estadual

Leia mais

A única diferença entre o difícil e o impossível é que o último demora um pouco mais de tempo para ser alcançado..

A única diferença entre o difícil e o impossível é que o último demora um pouco mais de tempo para ser alcançado.. Técnicas de Programação em Engenharia Elétrica I - Engenharia de Sistemas Embarcados - Introdução aos Algoritmos A única diferença entre o difícil e o impossível é que o último demora um pouco mais de

Leia mais

Universidade Federal do ABC Rua Santa Adélia, Bairro Bangu - Santo André - SP - Brasil CEP Telefone/Fax:

Universidade Federal do ABC Rua Santa Adélia, Bairro Bangu - Santo André - SP - Brasil CEP Telefone/Fax: Universidade Federal do ABC Rua Santa Adélia, 166 - Bairro Bangu - Santo André - SP - Brasil CEP 09.210-170 - Telefone/Fax: +55 11 4996-3166 1. CÓDIGO E NOME DA DISCIPLINA MC3201 - COMPILADORES 2. DISCIPLINA

Leia mais

Introdução à Programação Aula 04. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Introdução à Programação Aula 04. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação Introdução à Programação Aula 04 Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação QUAL LINGUAGEM IREMOS ESTUDAR? 2 Introdução à Programação Linguagens

Leia mais

Prof. Luiz A. Nascimento

Prof. Luiz A. Nascimento Prof. Luiz A. Nascimento Qual a importância da Engenharia de Software? O desenvolvimento de um software envolve processos muitos complexos. A engenharia de software estabelece um modelo para se construir

Leia mais

SISTEMAS OPERACIONAIS

SISTEMAS OPERACIONAIS SISTEMAS OPERACIONAIS Introdução a Sistemas Operacionais Andreza Leite andreza.leite@univasf.edu.br Plano de Aula Introdução aos Sistemas Operacionais Fundamentação Teórica Evolução Histórica Características

Leia mais

PROGRAMAÇÃO I. Introdução

PROGRAMAÇÃO I. Introdução PROGRAMAÇÃO I Introdução Introdução 2 Princípios da Solução de Problemas Problema 1 Fase de Resolução do Problema Solução na forma de Algoritmo Solução como um programa de computador 2 Fase de Implementação

Leia mais

PLANO DE APRENDIZAGEM

PLANO DE APRENDIZAGEM PLANO DE APRENDIZAGEM 1. DADOS DE IDENTIFICAÇÃO Curso: Bacharelado em Sistemas de Informação Disciplina: Linguagens Formais e Compiladores Código: SIF5N191 Professor: Jamilson Ramalho Dantas e-mail: jamilson.dantas@fasete.edu.br

Leia mais

EA876 - Introdução a Software de Sistema

EA876 - Introdução a Software de Sistema A876 - Introdução a Software de Sistema Software de Sistema: conjunto de programas utilizados para tornar o hardware transparente para o desenvolvedor ou usuário. Preenche um gap de abstração. algoritmos

Leia mais

Introdução à Ciência da Computação ICC0001 Prof. Diego Buchinger

Introdução à Ciência da Computação ICC0001 Prof. Diego Buchinger Algoritmos e Linguagens de Programação Introdução à Ciência da Computação ICC0001 Prof. Diego Buchinger Conceitos Básicos Para dizer o que um computador deve fazer devemos programá-lo através de instruções

Leia mais

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli

IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli Programa de computador sequência de comandos ou instruções executados por um computador com a finalidade de produzir um resultado e resolver um problema; Linguagem de programação método para a criação

Leia mais

Introdução à Ciência da Computação

Introdução à Ciência da Computação 1 Universidade Federal Fluminense Campus de Rio das Ostras Curso de Ciência da Computação Introdução à Ciência da Computação Professor: Leandro Soares de Sousa e-mail: leandro.uff.puro@gmail.com site:

Leia mais

EDUCAÇÃO 4.0: conheça quais são as mudanças da nova educação

EDUCAÇÃO 4.0: conheça quais são as mudanças da nova educação EDUCAÇÃO 4.0: conheça quais são as mudanças da nova educação Estamos presenciando as inovações tecnológicas da Indústria 4.0 em diversas situações no modo como vivemos. Nesse novo modelo, a tecnologia

Leia mais

II.1 Conceitos Fundamentais. Uma delas é programar o =>

II.1 Conceitos Fundamentais. Uma delas é programar o => II.1 Conceitos Fundamentais II.2 Gerações das Linguagens de Programação II.3 Linguagem de Programação II.4 Sistema Operacional II.5 Tradutores II.5.1 Estrutura de um tradutor II.5.1.1 Análise Léxica II.5.1.3

Leia mais

Compiladores. Introdução à Compiladores

Compiladores. Introdução à Compiladores Compiladores Introdução à Compiladores Cristiano Lehrer, M.Sc. Introdução (1/2) O meio mais eficaz de comunicação entre pessoas é a linguagem (língua ou idioma). Na programação de computadores, uma linguagem

Leia mais

Capítulo 1. Aspectos Preliminares

Capítulo 1. Aspectos Preliminares Capítulo 1 Aspectos Preliminares Tópicos do Capítulo 1 Razões para estudar conceitos de linguagens de programação Domínios de programação Critérios de avaliação de linguagens Influências no projeto de

Leia mais

Conceitos Básicos INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES

Conceitos Básicos INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES FACULDADE DOS GUARARAPES INTRODUÇÃO À COMPUTAÇÃO E SUAS APLICAÇÕES Conceitos Básicos Prof. Rômulo César romulodandrade@gmail.com romulocesar@faculdadeguararapes.edu.br www.romulocesar.com.br INTRODUÇÃO

Leia mais

Aula 1: A Evolução dos Sistemas Computacionais

Aula 1: A Evolução dos Sistemas Computacionais Aula 1: A Evolução dos Sistemas Computacionais O primeiro computador digital foi projetado pelo matemático Charles Babbage (1792-1871). Embora Babbage tenha dispendido muito de sua vida e de sua fortuna

Leia mais

MC-102 Aula 01. Instituto de Computação Unicamp

MC-102 Aula 01. Instituto de Computação Unicamp MC-102 Aula 01 Introdução à Programação de Computadores Instituto de Computação Unicamp 2016 Roteiro 1 Por que aprender a programar? 2 Hardware e Software 3 Organização de um ambiente computacional 4 Algoritmos

Leia mais