Linguagens de Programação

Documentos relacionados
Programação Imperativa

CONCEITOS DE LINGUAGENS DE PROGRAMAÇÃO

Linguagem Pascal. Prof. Antonio Almeida de Barros Junior

Linguagem de programação: Pascal

Universidade Estadual de Santa Cruz

Visão Geral... e conceitos básicos

Pascal. -Cabeçalho do programa. - label - const - type - var - procedure - function. - integer - real - byte - boolean - char - string

Sintaxe do Pascal Simplificado Estendido de 12 novas construções em Notação EBNF (BNF estendida)

Programação Introdução

Paradigmas de Programação

O AMBIENTE DE PROGRAMAÇÃO VISUAL -PLANO DE ENSINO. Prof. Angelo Augusto Frozza, M.Sc.

Paradigmas de Linguagens

ENGENHARIA DE PRODUÇÃO ICC 1 TÉCNICAS DE PROGRAMAÇÃO

Análise Semântica e Tratamento de Erros Dependentes de Contexto

PROGRAMAÇÃO ORIENTADA A OBJETOS I -CONCEITOS PRELIMINARES. Prof. Angelo Augusto Frozza, M.Sc.

Elementos básicos das linguagens de programação

Conceitos de Linguagens de Programação - Características. Paavo Soeiro

Programação de Computadores II

Resumo 2 - Mapeamento Portugol-Pascal

Linguagens de Programação

Sumário. Ciência da Computação. Prof. Dr. Leandro Alves Neves. Aula 10. Algoritmos e Programação. Enquanto (Teste no início) Repeat (Teste no final)

Introdução. Parte 01. Desenvolvimento de Programação Orientada a Objetos. Prof. Pedro Neto

6) ESTRUTURA DE UM PROGRAMA

Computação I. Prof. Miguel Elias Mitre Campista.

= = = = = = = = = = = = = = = =

Paradigmas de Linguagem de Programação. Paradigma Imperativo

Teoria da Computação e Algoritmos. Introdução à Linguagem Pascal. ALGORITMO <Nome do algoritmo>; <definições>; INÍCIO <Comandos>; FIM.

Resolução De Problemas Em Informática. Docente: Ana Paula Afonso Resolução de Problemas. 1. Analisar o problema

Introdução ao Fortran 90. Aula 3

UNIVERSIDADE ESTADUAL PAULISTA JÚLIO DE MESQUITA FILHO

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

Paradigmas. Fortran, Algol, Algol-68, Pascal, C, Cobol, PL/I

Histórico de Linguagens de Programação

ao paradigma imperativo

Tutorial de Turbo Pascal

Linguagem Pascal. Prof. Sérgio Rodrigues. É a descrição, de forma lógica, dos passos a serem executados no cumprimento de determinada tarefa;

Câmpus de Bauru Plano de Ensino Curso Ênfase Identificação Disciplina Docente(s) Unidade Departamento Créditos Carga Horária Seriação ideal

Informática I. Aula 19. Aula 19-31/10/2007 1

INTRODUÇÃO À LINGUAGEM PASCAL PREFÁCIO

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

FACCAT Sistemas de Informação. Estruturas de Dados

Linguagem Pascal. Definição e Tipos de Dados. Professora Lara Popov Zambiasi Bazzi Oberderder. Linguagem PASCAL 1

Programação Estruturada e Orientada a Objetos

Introdução ao Pascal. Computação I. Níveis de Linguagens de Programação. Níveis de Linguagens de Programação. Como um Programa é Executado?

Linguagens de Programação Conceitos e Técnicas. Expressões e Comandos Prof. Tiago Alves de Oliveira

Nomes, vinculações e escopos

#include <stdio.h> Void main() { printf( Cheguei!\n"); } INTRODUÇÃO A LINGUAGEM C

Modularidade. Objetivos: Introduzir noções básicas de modularidade. Funções e procedimentos

Engenharia Civil e Engenharia Básica Programação de Computadores Wedson Quintanilha da Silva

Linguagens de Programação. Fluxo de Controle. Carlos Bazilio

Linguagem e Técnicas em Programação. Gilson de Souza Carvalho

Linguagem Computacional. Estruturas de Controle: Estruturas de Repetição. Prof. Dr. Adriano Cansian Prof. Dr. Leandro Alves Neves

Paradigmas de Linguagens Computacionais (PLC) (Apresentação da disciplina)

Capítulo 8. Estruturas de Controle no Nível de Sentença

Programação de Computadores

Revisão: linguagens de programação

Algoritmos. Prof. Jonatas Bastos Site:

Capítulo VI : Subprogramas

Paradigmas de Linguagens de Programação. Expressões e Instruções de Atribuição

Informática I. Aula 9. Aula 9-17/05/2006 1

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

Linguagens de Programação. Marco A L Barbosa

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

Ederson Luiz da Silva Ciência da Computação. Algoritmos e Programação

Nomes, vinculações e escopos

FIC-POO. Aula 1.1 Apresentação do Curso e Introdução aos Paradigmas de Programação. Prof. Dr. Bruno Moreno

Programação de Computadores

UNISINOS - UNIVERSIDADE DO VALE DO RIO DOS SINOS CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS (C6/6) Curso: Informática

Informática I. Aula Aula 18-29/10/2007 1

1 Da aula teórica ao Java

Linguagem Pascal. Prof. Jonatas Bastos Site:

APÊNDICE A - FUNDAMENTOS DA LINGUAGEM DE PROGRAMAÇÃO PASCAL.

Informática I. Aula 9. Aula 9-27/09/2006 1

ALGORITMOS VARIÁVEIS E OPERADORES. Prof. Angelo Augusto Frozza, M.Sc.

Capítulo 6: Linguagens de Programação

Um algoritmo deve conter passos não ambíguos, executáveis e que sejam terminados quando seguidos.

VARIÁVEIS NUMÉRICAS : integer - Números inteiros entre e real - Números reais de 11 algarismos significativos.

Linguagens de Programação Aula 3

Organização de Computadores

Compiladores Prof. a Mariella Berger. Trabalho 2 Analisador Léxico

Linguagem de Programação

Representação de Algoritmos - Linguagens de Programação

Linguagem Algorítmica OO. Linguagem Algorítmica

Introdução à Computação

Aula Anterior. Decomposição algorítmica (continuação)

PROGRAMAÇÃO I AULA 08

Variáveis Compostas Heterogêneas. Variável Composta Heterogênea. Variável Composta Heterogênea

4. Constantes. Constantes pré-definidas

Programação de Computadores:

Fundamentos Programação

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

I1, I2 e In são instruções simples ou estruturadas da linguagem Pascal.

Refinamentos sucessivos

Introdução ao Fortran 90-3

Programação de Computadores IV. Introdução a Linguagens de Programação Simone Martins SLIDES CEDIDOS POR BRUNO MARQUES 1

Linguagens de Programação Conceitos e Técnicas. Amarrações Prof. Tiago Alves de Oliveira

Programação de Computadores

Expressões e sentença de atribuição

Transcrição:

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

Sumário 1 Introdução 2 Paradigma imperativo Modelo computacional Características centrais 3 Características das linguagens 4 Linguagens imperativas não estruturadas 5 Linguagens imperativas estruturadas 6 Aula prática Linguagem de programação Lua Linguagem de programação FORTRAN 7 Referências

Paradigmas de programação Conceito Modelo padrão ou estilo de programação suportado por linguagens que agrupam certas características em comum.

Paradigmas de programação Conceito Modelo padrão ou estilo de programação suportado por linguagens que agrupam certas características em comum. Gramática e significado bem definidos

Paradigmas de programação Conceito Modelo padrão ou estilo de programação suportado por linguagens que agrupam certas características em comum. Gramática e significado bem definidos Implementável com eficiência aceitável

Paradigmas de programação Conceito Modelo padrão ou estilo de programação suportado por linguagens que agrupam certas características em comum. Gramática e significado bem definidos Implementável com eficiência aceitável Universal

Paradigmas de programação Exemplos Imperativo

Paradigmas de programação Exemplos Imperativo Orientado a objetos

Paradigmas de programação Exemplos Imperativo Orientado a objetos Funcional

Paradigmas de programação Exemplos Imperativo Orientado a objetos Funcional Lógico

Paradigma imperativo Programas são centrados no conceito de um estado e ações que manipulam o estado

Paradigma imperativo Programas são centrados no conceito de um estado e ações que manipulam o estado Denominado procedural por incluir sub-rotinas ou procedimentos como mecanismo de estruturação

Paradigma imperativo Primeiro paradigma a surgir

Paradigma imperativo Primeiro paradigma a surgir Linguagens baseadas em comandos ou orientada a atribuições

Modelo computacional Modelo computacional A arquitetura dos computadores sempre influenciaram o projeto das linguagens de programação

Modelo computacional Modelo computacional A arquitetura dos computadores sempre influenciaram o projeto das linguagens de programação A maioria das linguagens de programação foram projetadas em torno da arquitetura do computador

Modelo computacional Modelo computacional A arquitetura dos computadores sempre influenciaram o projeto das linguagens de programação A maioria das linguagens de programação foram projetadas em torno da arquitetura do computador Arquitetura de Von Neumann

Modelo computacional Arquitetura de Von Neumann Dados e programas são armazenados na mesma memória

Modelo computacional Arquitetura de Von Neumann Dados e programas são armazenados na mesma memória CPU é quem executa as intruções

Modelo computacional Arquitetura de Von Neumann Dados e programas são armazenados na mesma memória CPU é quem executa as intruções Instruções ou dados são transmitidos da memória para CPU

Modelo computacional Arquitetura de Von Neumann Dados e programas são armazenados na mesma memória CPU é quem executa as intruções Instruções ou dados são transmitidos da memória para CPU O resultado das operações na CPU são devolvidos para memória

Características centrais Características centrais Variáveis, modelam as células de memória

Características centrais Características centrais Variáveis, modelam as células de memória Comandos de atribuição, baseado nas operações de transferência dos dados e instruções

Características centrais Características centrais Execução sequencial de instruções

Características centrais Características centrais Execução sequencial de instruções Forma iterativa de repetição

Características centrais Vantagens Eficiência

Características centrais Vantagens Eficiência Mais fácil de traduzir para linguagem de máquina

Características centrais Vantagens Eficiência Mais fácil de traduzir para linguagem de máquina Modelagem natural de aplicações do mundo real

Características centrais Vantagens Eficiência Mais fácil de traduzir para linguagem de máquina Modelagem natural de aplicações do mundo real Paradigma dominante e bem estabelecido

Características centrais Desvantagens Descrições demasiadamente operacionais

Características centrais Desvantagens Descrições demasiadamente operacionais Geralmente erros são introduzidos durante a manutenção

Características centrais Exemplos de linguagens imperativas BASIC ADA Python ALGOL Modula

Características centrais Exemplos de linguagens imperativas BASIC ADA C Python ALGOL Modula

Características centrais Exemplos de linguagens imperativas BASIC COBOL ADA C Python ALGOL Modula

Características centrais Exemplos de linguagens imperativas BASIC COBOL ADA Pascal C Python ALGOL Modula

Características centrais Exemplos de linguagens imperativas FORTRAN BASIC COBOL ADA Pascal C Python ALGOL Modula Lua

FORTRAN Valores e tipo: integer, real, double precision, complex, logical; vetor: dimension -nome- (dim1, dim2, dim3), real, integer; constantes lógicas:.true.,.false.

FORTRAN Expressões: **, *, /, +, -,.ge.,.gt.,.le.,.lt.,.eq.,.ne.,.not.,.and.,.or.

Estruturas de controle: if (-exp-) then... end if if (-exp-)... else if (-exp-) then... else... end if... end if Comandos I/O: open, close, read, write, print, rewind, endfile Comandos: goto, continue, pause, stop FORTRAN

FORTRAN Declarações: declaração var.: -tipo- -id-

FORTRAN Procedimenntos e funções: function -id- (-parâm.-) procedure -id- (-p.-)

Pascal Valores e tipo: boolean, integer, char, real; array, file, record, set

Pascal Expressões: boolean: and, or, not, xor integer: +, -, *, div, mod, =, =,. abs, sqr, trunc, round string: var a: string; a = abc ; file: type arq = file of integer;

Pascal Estruturas de controle: comandos simples: write, writeln, read, clrscr, gotoxy, delay, readkey, upcase if-then, if-then-else case -exp- of case -op1-: case -op2-: else end for x := -inic- to downto -fim- do while -cond- do begin... end;

Pascal Declarações: var -id-: -tipo-;

Pascal Procedimentos e funções: procedure -id- (-parâm.-); function -id- (-parâm.-): -tipo-;

ADA Valores e tipo: array: -id- array(x..y) of -tipo- integer, natural, positive, character, boolean, string: type string is array(x..y) of character; float

ADA Expressões: =, /=,, =, +,, abs, **, and, or, xor, not

Estruturas de controle: if -cond- then case -exp- is elsif -cont- then -alt. 1- else -alt. 2- end if; end case; when -lista escolha- = -com.- when -others- = -comandoswhile -cond.- loop -comandosend loop; for -id- in -interv- loop ADA

ADA Declarações: -id-: -tipo-;

ADA Procedimentos e funções: procedure -id- (-parâm-) is function -id- (-p.-) return -tipo-

Linguagens imperativas não estruturadas Caracterizadas pela utilização da instrução goto

Linguagens imperativas não estruturadas Caracterizadas pela utilização da instrução goto goto usado para determinar repetição e seleção

Linguagens imperativas não estruturadas Caracterizadas pela utilização da instrução goto goto usado para determinar repetição e seleção Leva ao indesejado goto código spaguetti

Linguagens imperativas não estruturadas Caracterizadas pela utilização da instrução goto goto usado para determinar repetição e seleção Leva ao indesejado goto código spaguetti Exemplos FORTRAN Assembly BASIC

Linguagens imperativas estruturadas Surgiu com o objetivo de facilitar a leitura e o acompanhamento da execução de algoritmos

Linguagens imperativas estruturadas Surgiu com o objetivo de facilitar a leitura e o acompanhamento da execução de algoritmos goto foi demitido

Linguagens imperativas estruturadas Surgiu com o objetivo de facilitar a leitura e o acompanhamento da execução de algoritmos goto foi demitido Instruções agrupadas em blocos

Linguagens imperativas estruturadas Blocos de instruções podem ser selecionados usando if...else ou repetidamente executados usando while ou for

Linguagens imperativas estruturadas Blocos de instruções podem ser selecionados usando if...else ou repetidamente executados usando while ou for Procedurais e modulares

Linguagem de programação Lua Lua

Linguagem de programação FORTRAN FORTRAN

Referências 1