Programação Imperativa

Documentos relacionados
Linguagem de programação: Pascal

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

Linguagem Pascal. Prof. Antonio Almeida de Barros Junior

3. Linguagem de Programação C

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

Introdução à Linguagem C

ao paradigma imperativo

Aula 5 Oficina de Programação Introdução ao C. Profa. Elaine Faria UFU

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

LINGUAGEM C: VARIÁVEIS E EXPRESSÕES

Algoritmos e Introdução à Programação. Lógica e Linguagem de Programação

Introdução à Programação. Introdução a Linguagem C. Prof. José Honorato F. Nunes

Linguagem de Programação e Compiladores

Ambiente de desenvolvimento

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

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?

Estruturas da linguagem C. 1. Identificadores, tipos primitivos, variáveis e constantes, operadores e expressões.

Paradigmas de Programação

11 - Estrutura de um programa em C

Linguagens de Programação Aula 3

Fundamentos de Programação

Métodos Computacionais

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

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

Linguagem C Princípios Básicos (parte 1)

Linguagem de Programação C

Universidade Estadual de Mato Grosso do Sul Ciência da Computação Algoritmos e Estruturas de Dados I (AED-I) Prof. Nilton

Linguagem C. Eliane Pozzebon

Paradigmas de Programação

Introdução as Máquinas de Autômatos

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

PROGRAMAS BÁSICOS EM C++ Disciplina: Introdução à Ciência da Computação Prof. Modesto Antonio Chaves Universidade estadual do Sudoeste da Bahia

Python - Variáveis e expressões

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

Capítulo 1. Aspectos Preliminares

Programação em Sistemas Computacionais

INTRODUÇÃO A LINGUAGEM C

Estrutura de Programas e Tipos de Dados Simples

Programação: Vetores

Linguagem de Programação

Métodos Computacionais. Operadores, Expressões Aritméticas e Entrada/Saída de Dados

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

Paradigmas de Programação

Como construir um compilador utilizando ferramentas Java

DELEGAÇÃO REGIONAL DO ALENTEJO CENTRO DE FORMAÇÃO PROFISSIONAL DE ÉVORA REFLEXÃO 5

Projeto de Compiladores

Introdução ao Fortran 90. Aula 3

Introdução à Programação em C

LINGUAGEM C: FUNÇÕES FUNÇÃO 04/07/2017. Funções são blocos de código que podem ser nomeados e chamados de dentro de um programa.

Variáveis primitivas e Controle de fluxo

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

Linguagem de Programação

Algoritmos e Programação

Linguagem de Programação I. Aula 10 Funções

Introdução à Computação para Engenharia MAC2166 Prof. Dr. Paulo Miranda IME-USP. Aula 1 Introdução à Computação

Legibilidade do código fonte

TÉCNICO DE INFORMÁTICA - SISTEMAS

Algoritmos e Estruturas de Dados I. Universidade Federal de São João del-rei Pedro Mitsuo Shiroma Sala 119 Bloco 3

Programação Básica. Estrutura de um algoritmo

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

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

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

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

Linguagem C: Introdução

Compiladores. Introdução à Compiladores

Conteúdo programático

Computação e Programação

Introdução à Programação em C. Prof. Ricardo Teixeira Tecnologia em Mecatrônica Industrial SENAI

1 Da aula teórica ao Java

Elementos básicos das linguagens de programação

Introdução à Computação MAC0110

Linguagem de Programação Pascal - Introdução

Programação de Computadores:

Paradigmas de Programação

Apresentação da ferramenta de programação. Comandos de entrada e saída. Prof. Alex Camargo

Estrutura do programa

Linguagens de Programação PROGRAMAÇÃO DE COMPUTADORES. Linguagem C. Linguagem C Estrutura Básica. Constante (literais) Linguagem C Primeiro Programa

Lição 4 Fundamentos da programação

Linguagem C. Brian W. Kernighan, Dennis Ritchie (K&R) Slides adaptados, inspirados, muitos copiados dos slides do professor Pedro Pereira

Curso de C. Introdução by Arnaldo V. Moura e Daniel F. Ferber 3/10/ :43 AM

Transcrição:

Programação Imperativa

Linguagem de Programação Linguagem de Programação é um sistema de notações para descrição de computação sob forma legível tanto para o ser humano quanto para as máquinas. É um método padronizado para comunicar instruções para um computador, respeitando regras semânticas e sintáticas. Linguagens de programação propõe diferentes paradigmas de programação.

Um Paradigma de Programação fornece e determina a visão que o programador possui sobre a estruturação e execução do programa. Paradigma Imperativo (C, C++, Pascal) Paradigma Funcional (ML, LISP, Haskell) Paradigma Orientado a Objeto (C++, Java) Paradigma Concorrente (ADA, Java) Paradigma Orientado a Aspecto (AspectJ) Paradigma de Programação Lógica(PROLOG)

As linguagens imperativas são orientadas a acções, onde a computação é vista como uma sequência de instruções que manipulam valores de variáveis O fundamento da Programação Imperativa é o conceito de Máquina de Turing, que nada mais é que uma abstração matemática que corresponde ao conjunto de funções computáveis Sua criação foi influenciada pela arquitetura de computadores Von Neuman, onde programas e dados são armazenados na mesma memória.

MODELO COMPUTACIONAL VON NEUMANN Os operando das expressões são passados da memória para a CPU e o resultado da expressão é passado de volta para uma célula da memória.

Linguagens imperativas são caracterizadas por três conceitos: variáveis, atribuições e sequências. O estado de um programa imperativo é mantido em variáveis de programa que são associados com localizações de memória que correspondem a um endereço e um valor de armazenamento. O valor da variável pode ser acessado directa e indirectamente, e pode ser alterado através de um comando de atribuição. O comando de atribuição introduz uma dependência de ordem no programa: O valor de uma variável é diferente antes e depois de um comando de atribuição.

As funções de linguagem de programação imperativas são descritas como algoritmos que especificam como processar um intervalo de valores, a partir de um valor de domínio, com uma série de passos prescritos. A repetição, ou laço, é usada extensivamente para processar os valores desejados. Laços são usados para varrer uma sequência de localizações de memória tal como vetores, ou para acumular um valor em uma variável específica.

CARACTERÍSTICAS PRINCIPAIS As características principais das linguagens imperativas são: As variáveis, que modelam as células de memória; Comandos de atribuição, que são baseados nas operações de transferência dos dados e instruções; A execução sequencial de instruções; E a forma iteractiva de repetição, que é o método mais eficiente desta arquitetura.

O repetição (laços) é utilizada extensivamente para computar valores desejados. Laços são usados para varrer um vetor ou acumular valores numa variável. Por causa dessas características, as linguagens imperativas têm sido chamadas de orientadas a estado ou orientadas à atribuição.

VANTAGENS Eficiência (embute o modelo de Von Neumann) Mais fácil de traduzir para a linguagem de máquina Paradigma dominante e bem estabelecido Modelagem Natural de aplicações do mundo real Muito flexível DESVANTAGENS Descrições demasiadamente operacionais Focaliza o como e não o quê Relacionamento indireto com a E/S (indução a erros/estados)

EXEMPLOS DE LINGUAGENS DE PROGRAMAÇÃO BASEIADAS NO MODELO IMPERATIVO: Cobol Fortran Pascal Python Lua Mathematica Ada Algol Basic C PHP Java

Fortran A família de linguagens de programação conhecida globalmente como Fortran foi desenvolvida a partir da década de 1950 e continua a ser usada hoje em dia. O nome é um acrônimo da expressão "IBM Mathematical FORmula TRANslation System" É principalmente usada em Ciência da computação e Análise numérica. Apesar de ter sido inicialmente uma linguagem de programação procedural, versões recentes de Fortran possuem características que permitem suportar programação orientada por objetos.

Valores e tipos: interger, real, double precision, complex, logical; vector: dimension<nome>(dim1, dim2, dim3), real, interger constantes lógicas:.true.,.false. Expressões: operadores: **, *, /, +, -,.ge.,.gt.,.le.,.lt.,.eq.,.ne.,.not.,.and.,.or.

Comandos e Sequências: if(<exp>)then... end if if(<exp>)... else if ( ) then... else... end if comandos I/O: open, close, read, write,print, rewind, endfile comandos: goto, continue, pause, stop

Declarações: declaração var.: <tipo> <id> Procedimentos e Funções: funções: function <id> (<parâm.>) proc.: procedure <id> (<parâm.>)

PASCAL É uma linguagem de programação estruturada, que recebeu este nome em homenagem ao matemático e físico Blaise Pascal. Foi criada em 1970 pelo suíço Niklaus Wirth, tendo em mente encorajar o uso de código estruturado. Criada simultaneamente para ensinar programação estruturada e para ser utilizada na fábrica de software.

Valores e tipo: boolen, interger, char, real; estruturados: array, file, record, set Expressões: boolean: and, or, not, xor interger: +, -, *, div, mod, =, >=, <>. abs, sqr, trunc, round string: var a: string; a = 'abc'; file: type arq = file of interger;

Comandos e Sequências: 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;

Declarações: var.: var <id>: <tipo>; Procedimentos e Funções: procedure <id> (<parâm.>); function <id> (<parâm.>): <tipo>;

ADA Ada é uma Linguagem de programação estruturada, de tipagem estática, é uma linguagem imperativa, orientada a objetos e é uma linguagem de alto nível, originada de Pascal, Simula e outras linguagens. Foi originalmente produzida por uma equipe liderada por Jean Ichbiah da CII Honeywell Bull, contratados pelo Departamento de Defesa dos Estados Unidos durante a década de 70, com o intuito de substituir as centenas de linguagem de programação usadas pelo DoD.

Ada é uma aplicação com compiladores validados para uso confiável em missões criticas, tais como softwares de aviação. Normatizada internacionalmente pela ISO, sua versão mais atual é de 2005. O nome Ada vem de Ada Lovelace, a mulher conhecida por ter escrito o primeiro algoritmo para ser processado por uma máquina na história da computação.

Expressões: operadores: =, /=, >, >=, +, -, abs, **, and, or, xor, not Comandos e sequências: if <cond> then case <exp> is elsif <cont> then <alt. 1> else <alt. 2> end if; end case; when <lista escolha> => <com.> when <others> => <comandos> while <cond.> loop <comandos> end loop; for <id> in <interv> loop <comandos> end loop

Declarações: var.: <id>: <tipo>; Procedimentos e Funções: procedure <id> (parâm.>) is function <id> (<p.>) return <tipo>

LINGUAGEM DE PROGRAMAÇÃO C Linguagem de programação em C foi desenhado e desenvolvido por Dennis Ritchie em 1970 nos laboratórios AT & T s Bell USA. Originalmente C foi escrito sobre Sistema Operativo UNIX o qual mas tarde foi desenhado usando a mesma linguagem de programação. C tornou-se rapidamente popular por causa da confiabilidade, simplicidade no uso e portabilidade.

A linguagem de programação C está entre: 1. As linguagens do alto nível ou Linguagens Orientadas a Problemas; 2. Linguagens do baixo nível ou Linguagens Orientadas a Maquina. C é uma linguagem intermédiaria. C é uma linguagem do propósito geral; C é uma linguagem de Programação Estruturada C é uma linguagem Padronizada; C é eficiente e tem tipos de dados limitados; Possue métodos modernos de codificação de laços; Desenhado para permitir ao utilizador adicionar funções na linguagem; Possue cerca de 145 funções de biblioteca; É cross-plataform.

C E OUTRAS LINGUAGENS DO MESMO PARADIGMA COBOL Processamento de Registos PASCAL Ensino das Técnicas de Programação FROTRAN Cálculo Científico LISP e PROLOG Vocacionadas para áreas de Inteligéncia Artificial C General purpose EVOLUÇÃO DO C C é uma linguagem particulamente estável; Deu origem a uma linguagem OOP que é o C++ C e C++ deram origem ao Java que também é totalmente OOP

ETAPAS DE COMPLAÇÃO E EXECUÇÃO DE UM PROGRAMA EM C Editor do Texto Código fonte Ficheiros Cabeçalhos C Pre-Processor Código Fonte Expandido Compilador de C Sim Caso sem erro não Código objecto Linker Bibliotecas Executaveel Carregador

ESTRUTURA BÁSICA DE UM PROGRAMA EM C Comentários Directivas pré-processadores Declaração de variáveis globais Definição da função { Variáveis locais e declaração de funções instruções executáveis } Função1() {... } Função2() { }... 1. Comentários: Usado para descrever o programa; 2. Pre-processor: Usados para incluir macros ou definí-los, assim como cabeçalhos atraves da directiva #include. 3. Declaração de variáveis globais: Usado para definir variaveis que tem vida durante toda a execução do programa; 4. Definição da função: Geralmente é o método main que é definido. Que é o ponto de execução do programa. 5. Variáveis locais: Geralmente tem sido declaradas as variaveis que so tem vida no meio de um módulo; 6. Executáveis: São instruções que são convertidos a linguagem máquina; 7. Funções: Usada para implementação de funções definidas pelo utilizador.

PRIMEIRO PROGRAMA EM C Programa é um conjunto de instruções escritos passo a passo numa linguagem para realizar tarefa específica. Cada Instrução em um programa em C é escrito como uma instrução separaada/isolada. Estas instruções devem ser escritas na ordem em que pretendemos que elas sejam executadas.

REGRAS PARA ESCREVER UM PROGRAMA EM C 1. Uma vez que C é Case Sensitive todas as instruções são escritas em letras minúsculas; 2. Numa expressão duas palavras devem estar separadas por um espaço branco de modo a aumentar a confiabilidade; 3. Todas as instruções em C terminam com ponto e vírgula (;)

Exemplo: Programa que calcula a soma e produto de dois números. /* Programa que calcula a soma e produto de dois numeros */ #include <stdio.h> #include<conio.h> main() { int n1, n2, soma, prud; printf( introduza os dois numeros ); scanf( %d%d,&n1,&n2); soma = n1 + n2; prud = n1 * n2; printf( a soma dos dois numeros é: %d, soma); printf( o produtodos dois numeros é: %d, prud); } RESULTADO Introduza os dois numeros: 3 7 A soma dos dois numeros: 10 O produtodos dois numeros e: 21

NOTAS: Em C, um programa começa com a funçào main() O código a executar é colocado entre { } Um Bloco é formado por qualquer conjunto de instruções entre { }. Cada instrução deve ser seguida por ponto-e-vírgula (;). A disposição do código é arbitrária e depende das preferências de cada programados. C faz distinção entre maiúsculas e minúsculas case Sensitive As Strings em C são delimitadas pelo character aspas.

Para escrever uma mensagem na tela usa-se a função printf(). A função printf não faz parte da linguagem C. Pertece à sua extensa biblioteca de funções. Para acesso a esta e outras funções de entrada e saida devemos incluir nos nossos programas o arquivo stdio.h através da directive ao préprocessador #include<stdio.h> As linhas começadas por #(#include, #define, etc) não são C, mas sim directivas ao pré-processador. Por isso não devem ser seguidas por ponto e vírgula.

A representação de caracteres especiais ou de caracteres que, de outra forma, seriam difícies de representar faz-se através de um conjunto de dois ou mais caracteres, sendo em geral o primeiro character a barra invertida ( \ - Backslash) Os Comentários são escritos entre /* e */ e são simplesmente ignorados pelo compilador(a menos que se encontrem dentro de uma string). Não pode existir comentário dentro de comenário.