Linguagens de Programação

Documentos relacionados
Introdução à Engenharia ENG1000

Gabriel Giorisatto De Angelo Luiz Otávio Gerhardt Fernandes

ao paradigma imperativo

A Linguagem Lua Lua Puc-Rio

Linguagens de Programação Funcional

Algoritmos e Programação

Linguagem Pascal. Prof. Antonio Almeida de Barros Junior

Apostila de Fortran. É uma pseudo-linguagem a qual oferece recursos para que o programador possa codificar e testar os seus algoritmos.

Programação de Computadores:

Capítulo 7. Expressões e Sentenças de Atribuição

Linguagens de Programação Aula 13

Linguagem Haskell. Riocemar S. de Santana

Introdução ao Fortran 90. Aula 3

Linguagens de Programação Conceitos e Técnicas. Amarrações

Questões de Paradigmas de Programação Matéria: Prova 1 4ª EDIÇÃO

JavaScript (Elementos de Programação e Programação Básica)

Paradigmas de Programação

Linguagens de Programação

Paradigmas de Linguagens

Métodos de implementação de linguagens. Kellen Pinagé

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

Assunto 2 - Software. Prof. Miguel Damasco

Primeira Aula de Python

Projeto de Linguagem. Linguagens de Programação

Elementos básicos das linguagens de programação

Carlos Eduardo Batista. Centro de Informática - UFPB

PRIMEIROS PASSOS COM PYTHON. Prof. Msc. Luis Filipe Alves Pereira 2015

Licenciatura em Informática

Paradigmas de Linguagem de. Programação Profª. Roberta B Tôrres de programação referem-se a:

Curso básico de Python para estudantes de Física

Tema da aula Introdução ao paradigma de programação: Orientado a Objetos

Conceitos de Linguagens de Programação

Nomes, Amarração, Verificação de Tipos, e Escopo

Curso básico de JavaScript Aula 2

JAVA. Professor: Bruno Toledo

Exercitando a Programação com PHP

Capítulo 1. Aspectos Preliminares

Anhanguera Educacional S.A. Centro Universitário Ibero-Americano

TÉCNICO DE INFORMÁTICA - SISTEMAS

INFORMÁTICA APLICADA AULA 01 LINGUAGEM DE PROGRAMAÇÃO C++

Prof. Esp. Fabiano Taguchi PHP. Como surgiu o PHP? PHP

1 Da aula teórica ao Java

Notas de Aula 01: Introdução à linguagem de programação Java e ao ambiente de desenvolvimento NetBeans

As fases de um compilador

Curso de PHP. FATEC - Jundiaí TIPOS DE VARIÁVEIS

Introdução à Computação

Linguagens de Programação Classificação

Aula 11 Introdução ao Java Script

Administração de Redes de Computadores

NEANDERWIN. Algumas características do processador Neander são:

INTRODUÇÃO AO SCILAB

As fases de um compilador

Introdução à Linguagem C++

Programação Orientada a Objetos em Java. Introdução

CP Introdução à Informática Prof. Msc. Carlos de Salles

Programação em C e C++ com Lógica. Subtítulo

Revisão C++ - Parte 1

Programação Estruturada Orientada a Objetos

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

Benchmarks. 1. Introdução

Aula 2 - Programação de Computadores - CI208 1/21

Disciplina Programação Prof. Esp. Armando Hage. Programação em Turbo Pascal

OFICINA DA PESQUISA PROGRAMAÇÃO APLICADA À CIÊNCIA DA COMPUTAÇÃO

Arrays em Java. Prof. Renato Pimentel. GGI030 Programação Orientada a Objetos. Universidade Federal de Uberlândia Faculdade de Computação

Introdução à Programação

Mecanismos de Interrupção e de Exceção, Barramento, Redes e Sistemas Distribuídos. Sistemas Operacionais, Sistemas

Como construir um compilador utilizando ferramentas Java

Lógica de Programação I. Gilson de Souza Carvalho

Introdução ao Scilab

Sistema Operacionais II. Aula: Virtualização

Objectivos. Introdução à programação Macros em Microsoft Excel Introdução ao Visual Basic para Aplicações (VBA)

Compiladores. Fabio Mascarenhas

Linguagem Técnica de Programação III Introdução a PHP

Programação Orientada a Objetos

Ruby e JRuby em... Paralelos e Distribuídos. Felipe Barden Lucas Fialho Zawacki

Programação Orientada a Objetos. Manipulação de Exceções

Variáveis primitivas e Controle de fluxo

Inteligência Computacional Aula 2 - Introdução ao MatLab Graduação /2

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE DEPARTAMENTO DE INFORMÁTICA E MATEMÁTICA APLICADA. DIM0320 Algoritmos e Programação de Computadores

Introdução à Linguagem C

Introdução à Linguagem Lua Variáveis e Expressões

Trabalho de Desenho de Linguagens de Programação e de Compiladores. Mini Pascal

DESENVOLVIMENTO DE SOFTWARE

Transcrição:

Linguagens de Programação Paradigma Imperativo Matheus Hafner Tiago Xavier CET 087 - Conceitos de Linguagens de Programação (CLP) 17 de novembro de 2011

Aula Prática

Instalação Fortran sudo apt-get install gfortran Lua sudo apt-get install lua5.1

Introdução Introdução Lua é uma linguagem de programação interpretada, imperativa, de script, procedural, poderosa, rápida e leve, projetada para estender aplicações.

Introdução Introdução Lua combina sintaxe simples para programação procedural com poderosas construções para descrição de dados baseadas em tabelas associativas e semântica extensível. Lua é tipada dinamicamente, é interpretada a partir de bytecodes para uma máquina virtual baseada em registradores, e tem gerenciamento automático de memória com coleta de lixo incremental.

Introdução Introdução Lua foi criada por um time de desenvolvedores do Tecgraf da PUC-Rio, a princípio, para ser usada em um projeto da Petrobras. Devido à sua eficiência, clareza e facilidade de aprendizado, passou a ser usada em diversos ramos da programação, como no desenvolvimento de jogos, controle de robôs, processamento de texto, etc. Também é freqüentemente usada como uma linguagem de propósito geral.

Lua é uma linguagem estabelecida e robusta Mais usada em jogos.

Lua é uma linguagem estabelecida e robusta Mais usada em jogos. Sólido manual de referência

Lua é uma linguagem estabelecida e robusta Mais usada em jogos. Sólido manual de referência Vários livros.

Lua é uma linguagem estabelecida e robusta Mais usada em jogos. Sólido manual de referência Vários livros. Várias versões.

Lua é uma linguagem estabelecida e robusta Mais usada em jogos. Sólido manual de referência Vários livros. Várias versões. Aplicações reais.

Lua é rápida Reputação de ótimo desempenho.

Lua é rápida Reputação de ótimo desempenho. Outras aspiram: tão rápidas quanto Lua.

Lua é rápida Reputação de ótimo desempenho. Outras aspiram: tão rápidas quanto Lua. Aplicações grandes são escritas em Lua.

Lua é portátil Pequeno pacote.

Lua é portátil Pequeno pacote. Sem modificações em todas as plataformas(ansi/iso C).

Lua é portátil Pequeno pacote. Sem modificações em todas as plataformas(ansi/iso C). Unix, Windows, dispositivos móveis, Lego MindStorms.

Lua é embutível Engine rápida e pequena.

Lua é embutível Engine rápida e pequena. API simples e bem documentada.

Lua é embutível Engine rápida e pequena. API simples e bem documentada. Estender com bibliotecas escritas em outras linguagens.

Lua é embutível Engine rápida e pequena. API simples e bem documentada. Estender com bibliotecas escritas em outras linguagens. Estender programas escritos em outras linguagens com Lua.

Lua é embutível Engine rápida e pequena. API simples e bem documentada. Estender com bibliotecas escritas em outras linguagens. Estender programas escritos em outras linguagens com Lua. Possível Estender: C, C++, Java, C#, Smalltalk, Fortran, Ada, Erlang, Perl, Ruby, etc.

Lua é pequena O pacote de Lua 5.1.4: 212K comprimido e 860K descompactado.

Lua é pequena O pacote de Lua 5.1.4: 212K comprimido e 860K descompactado. Fonte: +/- 17000 linhas de C.

Lua é pequena O pacote de Lua 5.1.4: 212K comprimido e 860K descompactado. Fonte: +/- 17000 linhas de C. No Linux, interpretador 153K e biblioteca 203K.

Lua é livre Software livre de código aberto (MIT).

Lua é livre Software livre de código aberto (MIT). Lua pode ser usada para quaisquer propósitos, incluindo propósitos comerciais, sem qualquer custo ou burocracia. Basta fazer um download e usá-la.

Exemplos Alô mundo! $ lua - print Hello World!

Exemplos Maneiras de Execução Mostrar (Raiz Quadrada) de 2: print (2 ˆ. (1/2)) = 1.4142135623731 * Linha de Comando -e : $ lua -e print(2 ˆ. 0.5) * Programa em modo interativo: $ lua - print(2 ˆ. 0.5) * Arquivo via linha de comando $ lua nome-do-arquivo * Arquivo via modo interativo $ lua - dofile( nome-do-arquivo )

Exemplos Operadores Aritméticos + * / % ˆ. - Relacionais == (diferente) (menor que) (maior que) (menor igual) (maior igual) Lógicos and or not Obs: (nil false true)

Exemplos Variáveis $ lua a = 1 + 2 + 1 b = 2 c = d d = a+b print (a,b,c,d) a,b = b,a print (a,b)

Exemplos Utilizando Vetores $ lua - array = { a, b, c } - print (array[3]) Tamanho do Vetor - print (#array)

Exemplos Trabalhando com Strings $ lua a = Andre b = Junior print( Nome: ) print(a) print(- ) print( Ultimo nome: ) print(b)

Exemplos Fatorial de n $ lua function fact(n) if n == 0 then return 1 else return n * fact(n - 1) end end print(fact(120))

Exemplos Soma de Elementos de um Vetor function add (a) local sum = 0 for i = 1, #a do sum = sum + a[i] end return sum end vector = {1,2,3,4} print(add(vector))

Exemplos Tabelas (Estruturas de Dados) ponto = {x=10, y=20} print(ponto[ x ]) print(ponto.x) function Point(x,y) return {x=x, y=y} Retorna uma tabela end array = {Point(10,20), Point(30,40), Point(50,60)} Vetor de pontos print(array[2].y)

Exemplos Modificando Funções do local oldprint = print print = function(s) if s == yes then oldprint( no ) else if s == no then oldprint( yes ) else oldprint(s) end end end end

Linguagem de Programação FORTRAN Introdução Introdução Desenvolvida a partir da década de 1950

Linguagem de Programação FORTRAN Introdução Introdução Desenvolvida a partir da década de 1950 O nome é um acrônimo da expressão IBM Mathematical FORmula TRANslation System

Linguagem de Programação FORTRAN Introdução Introdução Família de linguagens de programação

Linguagem de Programação FORTRAN Introdução Introdução Família de linguagens de programação Uso em aplicações científicas computacionalmente intensivas meteorologia, oceanografia, física, astronomia, geofísica, engenharia, economia etc.

Linguagem de Programação FORTRAN Introdução Introdução Família de linguagens de programação Uso em aplicações científicas computacionalmente intensivas meteorologia, oceanografia, física, astronomia, geofísica, engenharia, economia etc. Ciência da Computação e Análise Numérica

Linguagem de Programação FORTRAN Permite a criação de programas que primam pela velocidade de execução

Linguagem de Programação FORTRAN Permite a criação de programas que primam pela velocidade de execução Linguagem de programação procedural

Linguagem de Programação FORTRAN Permite a criação de programas que primam pela velocidade de execução Linguagem de programação procedural Versões recentes possuem características que permitem suportar programação orientada a objetos

Linguagem de Programação FORTRAN Exemplos Alô mundo! program alomundo implicit none print*, Alô mundo! end program alomundo

Linguagem de Programação FORTRAN Exemplos Tempo de vida program tempo de vida implicit none integer:: ano nascimento, anos vida read*, ano nascimento anos vida = 2011 - ano nascimento print*, Esta exclamação! não é interpretada como um comentário print*, Em 2006 você tem, anos vida, anos de vida end program tempo de vida

Linguagem de Programação FORTRAN Exemplos Soma program soma integer k,n,m n=1 m=3 if(m.ne. 0)then K=m+n else k=n endif print*,k stop end

Linguagem de Programação FORTRAN Exemplos Teste go to program testegoto implicit none integer n n = 1 10 if (n.le. 100) then n = 2*n write (*,*) n goto 10 endif end

Linguagem de Programação FORTRAN Exemplos Fatorial program fat implicit none integer fatorial, n, i fatorial = 1 print*, entre com o número read(*,*) n do i = 1, n fatorial = fatorial * i end do print *, Fatorial do número dado, y end