Linguagem de Programação

Documentos relacionados
Laboratório de Programação (DPADF 0063)

Linguagem de programação: Pascal

Laboratório de Programação 1 Algoritmos e a Lógica de Programação

Linguagem Pascal. Prof. Jonatas Bastos Site:

Ferramentas Programação. UDESC - Prof. Juliano Maia 1

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

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

Introdução à Programação de Computadores Parte I

Curso: Análise e Desenvolvimento de Sistemas. (Introdução a disciplina Algoritmos e Programação)

Linguagens de Programação Classificação

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

Introdução a lógica e a Linguagem de Programação

Algoritmos e Programação

Algoritmos e Programação

Programação Estruturada e OO Aula 1.2 Introdução a Paradigmas de Programação. Prof. Bruno Moreno

PROGRAMAÇÃO I. Introdução

Organização de programas em Pascal

PROGRAMAÇÃO de COMPUTADORES: LINGUAGEM FORTRAN 90/95

Aula 11: Desvios e Laços

Desenvolvimento de Aplicações Desktop

Linguagem de Programação C

O AMBIENTE DE DESENVOLVIMENTO

Linguagens de Programação

Linguagem de Programação II Programação Orientada a Objetos. Ambientes de Programação

Algoritmos. Prof. Jonatas Bastos Site:

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

Linguagem de Programação

Linguagens de Programação Aula 3

Linguagem Pascal. Prof. Antonio Almeida de Barros Junior

Aula 23: Noções de Compilação, Montagem, Link-edição, e Interpretação

IDES E PROGRAMAÇÃO. Prof. Dr. Cláudio Fabiano Motta Toledo PAE: Maurício A Dias

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)

Algoritmos e Técnicas de Programação Introdução Givanaldo Rocha de Souza

Programação de Computadores I

INTRODUÇÃO À LINGUAGEM PASCAL PREFÁCIO

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

Linguagem de Programação I Prof. Tiago Eugenio de Melo.

PROGRAMAÇÃO EM JOGOS DIGITAIS

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

6) ESTRUTURA DE UM PROGRAMA

Técnico em Informática. Web JavaScript. Profª Ana Paula Mandelli

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

Olá pessoal, Hoje vamos entender os conceitos sobre linguagem de programação. Definição, tipos de linguagens e as linguagens mais utilizadas

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.

Noções de compilação

Aula teórica 7. Preparado por eng.tatiana Kovalenko

Noções de compilação

Programação I A Linguagem C. Prof. Carlos Alberto

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

Introdução à Computação

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

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

Linguagens de Programação. Roberto Willrich INE- CTC-UFSC URL:

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

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

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

Elementos básicos das linguagens de programação

Conteúdo programático

Projeto de Compiladores

Programação de Computadores:

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

3. Linguagem de Programação C

Introdução à Programação

Introdução à programação em PASCAL. Aula de 22/10/2001. Nota: Conjunto de slides baseados nas transparências utilizadas em PEDA em anos anteriores

Introdução a Programação Web com PHP

IFSC Chapecó Algoritmos II (Linguagem Pascal)

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

Instalação JDK 10/03/2017

Fundamentos de Lógica e Algoritmos. Aula 3.1 Introdução a Python. Prof. Dr. Bruno Moreno

Máquinas. Visão geral O que você precisa Fatores de sucesso O futuro. realizar algo, precisa que alguém m lhe indique o que fazer V.V.

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

LISTA DE EXERCÍCIOS 15 ( Matrizes (7Cs))

Programação de Computadores III

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

Conceitos de Linguagens de Programação

Organização de programas em Python. Vanessa Braganholo

Programação Introdução

TCC 00308: Programação de Computadores I Organização de programas em Python

Programação de Computadores II

Algoritmos e Programação

MANIPULAÇÃO DE STRINGS

Fundamentos de Lógica e Algoritmos. Aula 3.2 IDLE, Variáveis e Tipos. Prof. Dr. Bruno Moreno

Instalação JDK. Joyce França. Professora de Ciência da Computação - IFNMG

Linguagens de Programação

Paradigmas de Linguagem de Programação. Aspectos Básicos

Programação Imperativa

Compilador de LP3 para C3E e P3

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

Introdução à Programação de Computadores Fabricação Mecânica

Linguagem de Programação

Linguagem de Programação

Existem três categorias principais de linguagem de programação: linguagem de máquina, linguagens assembly e linguagens de alto nível.

Estrutura de Dados Básica

UNIVERSIDADE ESTADUAL PAULISTA. Apostila Pascal Ed Prof. Dr. Galeno José de Sena DMA/FEG CAPÍTULO 8

Transcrição:

Linguagem de Programação Aula 2 Introdução Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Técnico em Informática Prof. Bruno B. Boniati www.cafw.ufsm.br/~bruno

O que é uma linguagem de programação?

Linguagem de Programação Método padronizado utilizado para expressar instruções a um computador; Não é um software e sim um conjunto de regras sintáticas e semânticas que irão definir um programa de computador.

Sintaxe = Forma A sintaxe são as regras que definem o formato de uma linguagem, estabelecendo com são compostas e combinadas suas palavras. Compõe-se de: Regras léxicas que descrevem combinações de caracteres válidas para formar os tokens (palavras reservadas, operadores, comandos); E regras sintáticas que descrevem como as palavras podem ser combinadas para formar instruções válidas.

Semântica = Significado A semântica diz respeito ao significado das construções sintáticas; Um programa pode estar sintaticamente correto mesmo com erros semânticos. Erros semânticos comuns... Utilizar uma variável que não foi declarada; Acessar uma posição inválida em uma lista (vetor); Atribuir um conteúdo inválido em uma variável;

Nível de uma LP Linguagem de baixo nível Suas construções aproximam mais da linguagem de máquina; Ex. Assembly WRITE_CHAR PROC push AX ;coloca na pilha o valor do registrador AX mov AH,2 ;coloca o valor hexadecimal 2 no registrador AH int 21h ;interrupção 21h pop AX ;extrai da pilha o valor de AX ret ;retorna o controle ao procedimento que chamou WRITE_CHAR ENDP

Nível de uma LP (cont.) Linguagem de alto nível Linguagens que fornecem abstrações e adoção de tipos de dados, palavras reservadas, funções e comandos de uso comum e mais próximos da linguagem natural. Ex. C, Pascal, Java, PHP, Python program Exemplo begin write("sejam bem vindos"); end;

Compilação x Interpretação

Linguagens Interpretadas Em uma linguagem de programação interpretada um programa é executado instrução a instrução; O comando precisa ser primeiramente traduzido para linguagem de máquina para só então executado; Sua execução é necessariamente mais lenta que linguagens que são executadas diretamente em código de máquina (em função da etapa de tradução); O código-fonte precisa ficar disponível para ser interpretado;

Linguagens Compiladas Em uma linguagem compilada o programa é executado somente após toda sua tradução ter sido completada; Somente o programa executável precisa ser disponibilizado (o código-fonte não é necessário para a execução); A compilação de um programa fonte (texto escrito diretamente na linguagem de alto nível) prevê que o mesmo seja traduzido para a linguagem da máquina correspondente antes da execução (processo conhecido por compilação).

Etapas da compilação 1. Depuração sintática Avalia se o código produzido no programa-fonte está codificado corretamente; 2. Geração do código de máquina Transforma o código-fonte linguagem de montagem; 3. Ligação ou Linkagem Empacota o código produzido com o conjunto de bibliotecas utilizadas e gera um programa executável independente;

Etapas da compilação Programa Fonte Compilador Ligador (Linker) Programa Executável Código de Bibliotecas

Linguagem de Programação Pascal

Breve histórico Linguagem de programação estruturada; Niklaus Wirth Criada em 1970 pelo suíço Niklaus Wirth; Surgiu com o intuito de ser uma linguagem de programação simples para ser utilizada academicamente no ensino de programação. Seu nome é uma homenagem ao matemático Blaise Pascal (inventor das primeiras máquinas lógicas);

Características Imperativa (baseada em um programa principal que eventualmente executa sub-rotinas); Compilada (produz um executável independente); Fortemente tipada (as variáveis precisam ser declaradas com seus tipos de dados associados); Não é case sensitive (não há diferenciação entre letras maiúsculas e minúsculas);

Pascal na atualidade Evoluiu para a linguagem Object Pascal, utilizada em ambientes desenvolvimento como Delphi, Kylix e Lazarus; Continua sendo uma excelente linguagem para aprendizado de programação; Ranking de Popularidade das Linguagens de Programação (Agosto/2013) Fonte: http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

Estrutura básica de um programa PASCAL program nome_programa; uses crt; //bibliotecas var //Declaração de variáveis instituicao : string; begin //Início do programa instituicao := 'UFSM'; write(instituicao); end.

Compilador PASCAL Existe uma extensa lista de compiladores de linguagem Pascal... http://pascaland.org/pascall.htm Dois em especial nos interessam... Borland Turbo Pascal Lançado comercialmente em 1983 para atingir o mercado de micro computadores (em plena expansão na época). É o grande responsável pela popularização do Pascal; Free Pascal Iniciativa da comunidade de software livre, disponível para download no endereço www.freepascal.org.

Compilador Free Pascal Etapas de compilação 1. Edite o código em um editor de textos ou ambiente de desenvolvimento; 2. Salve o arquivo em uma pasta de sua preferência com extensão.pas program OlaMundo; begin write('olá, Mundo!'); end. OlaMundo.pas 3. Abra uma janela de interpretador de comandos do sistema operacional (prompt de comandos, no Windows ou tela de terminal no Linux); 4. Execute o comando para compilação: fpc OlaMundo.pas <enter> 5. O resultado da compilação será um arquivo OlaMundo.o (código objeto) e o arquivo executável: OlaMundo.exe

IDE Ambiente de Desenvolvimento (Integrated Development Environment) Oferece recursos de produtividade ao desenvolvedor: Indicação de sintaxe (syntax highlighting); Código automático (code completion); Integração das etapas de compilação; Geany IDE Editor de código gratuito e multi-plataforma; Oferece recursos para diferentes linguagens de programação; Disponível em: http://www.geany.org/

Geany IDE

Exercícios para fixação

Compilar e Executar Compile e execute o código abaixo e verifique o que está irá aparecer na tela; program DeQuePaisEhEssaBandeira ; uses crt; var i: integer; begin for i:=1 to 640 do begin textcolor (9); write (#178); end; for i:=1 to 720 do begin textcolor (15); write (#178); end; for i:=1 to 640 do begin textcolor (4); write (#178); end; end.

Comentários Reescreva o código ao lado indicando para cada linha, o que é esperado que ela faça. program Test; uses crt; var a, b: integer; begin textbackground(2); textcolor(1); clrscr; gotoxy(15,10); write('type a number for A...: '); read(a); gotoxy(15,12); write('type a number for B...: '); read(b); gotoxy(15,14); if (a > b) then writeln('a is greater than B') else if (a < b) then writeln('b is greater than A') else writeln('b is equals A'); readkey; end.

Jogo dos 7 erros Identifique e corrija os sete erros do código abaixo: program SquareRoot; var raiz: real; begin write('informe um numero: '); read(x) if (x<0) then writeln('numeros negativos nao sao permitidos!) else begin raiz := Sqrt(x); writeln('o raiz de ', x:0:4, ' e ', raiz:0:4); writeln('bom dia'; readkey; end;