Académique Documents
Professionnel Documents
Culture Documents
PROGRAMAÇÃO
Adriano Avelar
eam.avelar@gmail.com
O que caracteriza uma Linguagem
de Programação?
• Gramática e significado bem definidos
• Implementável (executável) com eficiência
‘‘aceitável’’
• Universal: deve ser possível expressar todo
problema computável
• Natural para expressar problemas (em um certo
domínio de aplicação)
Aspectos do estudo de linguagens
• Sintaxe: gramática (forma)
• Semântica: significado
• Pragmática (ex.: metodologias)
• Processadores:
compiladores, interpretadores, editores,
ambientes visuais ...
Por que tantas linguagens?
•Propósitos diferentes
•Avanços tecnológicos
•Interesses comercias
•Cultura e background científico
O que é um paradigma de
programação?
• Modelo, padrão ou estilo de programação
suportado por linguagens que agrupam certas
características comuns
• A classificação de linguagens em paradigmas é uma
consequência de decisões de projeto que impactam
radicalmente a forma na qual uma aplicação real é
modelada do ponto de vista computacional
Imperativo
Orientado a Objetos
Funcional
Lógico
O Paradigma Imperativo
• Programas centrados no conceito de um estado
(modelado por variáveis) e ações (comandos) que
manipulam o estado
• Paradigma também denominado de procedural, por
incluir sub-rotinas ou procedimentos como
mecanismo de estruturação
• Primeiro paradigma a surgir e ainda é o dominante
em aplicações “legadas”
Modelo Computacional do
Paradigma Imperativo
Estado
Definição
Programação imperativa é um paradigma
de programação que descreve a
computação como ações ou comandos
que mudam o estado (variáveis) de um
programa
•Eficiência (embute modelo de Von
Neumann)
•Atribuição como elemento central
•Modelagem “natural” de aplicações do
mundo real
•Paradigma dominante e bem
estabelecido
Linguagens de Programação
Imperativas
•Ada •Cobol
•ALGOL •Fortran
•Basic •Pascal
•C •Python
•PHP •Lua
•Java •Mathematica
Características Comuns
• Estruturas de controle
• Entrada/Saída
• Manipulação de Exceções e Erros
• Abstração Procedural (Interface/Funções)
• Expressões e Atribuições
• Suporte a Bibliotecas.
Execução Sequencial e o
Problema do GOTO
•Saltos
incondicionais na
linguagem C.
Mãos na Massa!
Linguagem C
http://bit.ly/ufra_lp_c
Trabalho 1.
Crie um programa que peça 3 valores positivos ao usuário e calcula o
maior valor dentre os números. O programa deve seguir os passos de
implementação abaixo.
Passos de Execução:
1 – Pedir 3 números aos usuário
2 – Verificar se algum valor é negativo
3 – Chamar a função de calculo
4 – Apresentar o resultado ao usuário.