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



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

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

1) Digitar o código-fonte no editor do compilador Turbo Pascal para windows, exatamente como apresentado a seguir:

Algumas notas sobre PASCAL

IFTO TÉCNICO EM INFORMÁTICA DESENVOLVIMENTO DE SISTEMAS AULA 01

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

JavaScript (ou JScript)

Manipulação de Arquivos em Pascal

Armazenamento de Dados. Prof. Antonio Almeida de Barros Junior

Linguagem de programação: Pascal

Linguagem Pascal. Prof. Antonio Almeida de Barros Junior

A Linguagem Pascal e o Ambiente de Programação Dev-Pascal. Introdução à Ciência da Computação I

MANIPULAÇÃO DE STRINGS

Estrutura de Dados. Introdução a Ponteiros. Prof. Gerson Borges Estrutura de Dados I 1

1. Estrutura de seleção. Seleção: algumas etapas (passos) do algoritmo são executadas dependendo do resultado de uma condição

UNIP UNIVERSIDADE PAULISTA INSTITUTO DE CIÊNCIAS EXATAS E TECNOLOGIA (ICET) CURSO DE CIÊNCIAS DA COMPUTAÇÃO. O Paradigma da Orientação a Objeto

II. LÓGICA DE PROGRAMAÇÃO COM PASCAL

CONCEITOS BÁSICOS PARA A CONSTRUÇÃO DE ALGORITMOS PARA COMPUTADORES. Isac Aguiar isacaguiar.com.br isacaguiar@gmail.com

- UNIVERSIDADE DO VALE DO RIO DOS SINOS CIÊNCIAS EXATAS E TECNOLÓGICAS Curso: Informática / Ciência da Computação

Trabalho Prático 1 Tipos Abstratos de Dados

Regras Métodos Identificadores Variáveis Constantes Tipos de dados Comandos de atribuição Operadores aritméticos, relacionais e lógicos

DESENVOLVIMENTO DE SOFTWARE

OS COMPUTADORES E A RESOLUÇÃO DE PROBLEMAS

Linguagem de Programação JAVA. Técnico em Informática Professora Michelle Nery

Programação Estruturada. Programação Estruturada. Idéias Básicas da Programação Estruturada

1 INTRODUÇÃO 1.1 CONCEITO DE PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO PARADIGMAS DE LINGUAGEM DE PROGRAMAÇÃO

Notas de Aula de Algoritmos e Programação de Computadores

Conjunto (set) O tipo estruturado set representa, em Pascal, um conjunto de objectos de um dado tipo;

Organização de Computadores Software

Programação: Estruturas de seleção

7. ESTRUTURAS DE DADOS ESTÁTICAS E DINÂMICAS

Filas. A ordem de saída corresponde diretamente à ordem de entrada dos elementos. Fila de caixa bancário

ARQUIVOS. Os arquivos criados em meios magnéticos poderão ser acessados para leitura e escrita na forma seqüencial, direta ou indexada.

E/S CPU. Memória (Instruções e dados) 2 PARADIGMA IMPERATIVO. Instruções e dados. Resultados das operações. Unidade lógica e aritmética

Tubarão / Santa Catarina / BRAZIL osmarjr@unisul.rct-sc.br

Organização de programas em Python. Vanessa Braganholo

TUTORIAL AMBIENTE WEB PORTUGOL

PROG. DE COMPUTADORES II SI Arquivos

ALGORITMOS MEMÓRIA, VARIÁVEIS E CONSTANTES, OPERADORES Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br

3. INTRODUÇÃO À LINGUAGEM C 3.1. CONCEITOS BÁSICOS. Lógica de Programação

Lista de Exercícios Fluxograma, Estruturas de Sequência e Decisão Prof: Yuri Frota

TÉCNICAS DE PROGRAMAÇÃO

CURSO de CIÊNCIA DA COMPUTAÇÃO - Gabarito

Métodos Os métodos de uma classe podem ser classificados como construtores, destrutores, funções ou procedimentos.

PROGRAMAÇÃO II 3. FILA DINÂMICA

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

Capítulo 8. CICLOS. Tabela 8.1 Programa8a.f90.

Linguagens de. Aula 01. Profa Cristiane Koehler

INTRODUÇÃO OBJECT PASCAL/DELPHI

Capítulo 12. SUB-ROTINAS

Introdução à Engenharia de Computação

Lógica para a Programação - 1º semestre AULA 01 Prof. André Moraes

A estrutura de repetição em um algoritmo consiste na execução de um trecho do mesmo levando em consideração certas condições imposta pelo algoritmo.

Aula 3 Desvio Condicional

Algumas notas sobre PASCAL

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

VIII. VARIÁVEIS. Tabela I ARQUITETURA DA MEMÓRIA. 0x0000 0x34 0x0001 0xB0 0x0002 0x23. 0xFFFF 0x00

CURSO BÁSICO DE PROGRAMAÇÃO AULA 9. Introdução a linguagem C Estruturas de decisão

Trabalho 3: Agenda de Tarefas

Capítulo 7 Nível da Linguagem Assembly

NT_D1216.SYS DRIVER DA CDA12/16 PARA WINDOWS NT 4.0

Introdução a Programação Funcional

A4 Projeto Integrador e Lista de Jogos

Conceitos básicos da linguagem C

LÓGICA DE PROGRAMAÇÃO. Vitor Valerio de Souza Campos

compreender a importância de cada estrutura de controle disponível na Linguagem C;

Capítulo 2. VARIÁVEIS DO TIPO INTEIRO

Autor: Tiago Lone Nível: Básico Criação: 19/12/2005 Última versão: 18/12/2006. PdP. Pesquisa e Desenvolvimento de Produtos

Introdução ao Paradigma Orientado a Objetos. Principais conceitos

ALGORITMOS E FLUXOGRAMAS

Introdução sobre Scilab

Estruturas de Repetição

APOSTILA DE ALGORITMOS PROFESSOR ANDRÉ LUIZ NASSERALA PIRES

LINGUAGEM C. Estrutura básica de um programa

Sistemas Operacionais. Prof. André Y. Kusumoto

Descrição do Produto. Altus S. A. 1

Laboratório de Programação I

AULA 1: PARADIGMAS DE PROGRAMAÇÃO

WDM_1256.SYS DRIVER DA CAD12/56 PARA WINDOWS 98

ÍNDICE. Delphi... 3 CAPÍTULO 1 INTRODUÇÃO CAPÍTULO 2 INSTALANDO O DELPHI... 10

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

1 Funções básicas de implementação de arquivos

7. Estrutura de Decisão

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

ESTRUTURA DE DADOS -VARIÁVEIS COMPOSTAS. Prof. Angelo Augusto Frozza, M.Sc.

Avançado. Visão geral do ambiente do VBA Retornar à planilha Excel

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

Programação I. Departamento de Engenharia Rural Centro de Ciências Agrárias

MÉTODOS DE ORDENAÇÃO

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

Identificação das variáveis de entrada; resultados/variáveis de saída e método ou solução. (procedimentos e funções)

Computador Digital Circuitos de um computador (Hardware)

Avaliação de Expressões

AMBIENTE. FORMULÁRIO: é a janela do aplicativo apresentada ao usuário. Considere o formulário como a sua prancheta de trabalho.

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

Adicionando Propriedades e Funcionalidades aos Componentes Parte II

Transcrição:

Representação de Algoritmos - Linguagens de Programação A representação de algoritmos em uma pseudo-linguagem mais próxima às pessoas é bastante útil principalmente quando o problema a ser tratado envolve um grande número de passos. No entanto, para que esses passos possam ser entendidos pelo computador é necessário representar tal algoritmo em uma linguagem de programação. Pascal Fortran C C++ As linguagens de programação obrigam o uso de formas rígidas na especificação de seus passos, ou seja, obrigam as pessoas a detalharem as operações que deverão ser executadas. Uma dica aqui é refinar a solução do problema de um nível mais abstrato até chegar ao nível de detalhamento que deve ser representado em uma linguagem de programação. Essa prática, além de prover um tipo de documentação, também ajuda muito no tratamento dos erros que eventualmente possam surgir. Convencionamos aqui que um algoritmo representado em uma linguagem de programação é um programa. Ex.: programa em Pascal para somar dois números. program somadoisnum; { esse programa soma dois números e exibe o resultado na tela } n1, n2, result : integer; readln(n1); readln(n2); result := n1 + n2; writeln(result); Os algoritmos descritos em pseudo-linguagem não podem ser executados (entendidos) por computadores. É necessário ainda uma fase de tradução da linguagem de programação para a linguagem que a máquina entenda. Essa fase é conhecida por compilação, e é relizada pelo Compilador. Comandos Conjunto de palavras-chave de uma linguagem de programação que tem por finalidade dizer ao computador como ele deve executar uma tarefa. No exemplo de algoritmo descrito acima (receita de bolo), os comandos eram palavras-chaves representados por verbos da língua portuguesa, em computadores os comandos são usualmente palavras originária da língua inglesa. Exemplo: write, read, do,... Compiladores Para que o computador execute o programa escrito em Pascal, é necessário traduzi-lo para a linguagem de máquina. Compiladores são estes tradutores, que além disso, ainda testam o código mostrando os erros. Compilador traduz o programa escrito em uma linguagem de programação para linguagem de máquina. verifica se as formas rígidas na espeficicação dos passos foi seguida corretamente. compiladores são relacionados diretamente com a máquina para a qual será feita a tradução. gera um arquivo executável do programa descrito.

Principais compiladores usados: Turbo Pascal 7 - Clássico compilador de Pascal, Utiliza interface DOS; Pascalzim - Desenvolvido no Departamento de Ciências da Computação da Universidade de Brasília, Utiliza interface Windows, e tem como principal recurso a procura e substituição de palavras. Free Pascal - Compilador gratuito, compatível com Pascal e Object Pascal (linguagem usada no Delphi). É muito compatível com a linguagem usada no Turbo Pascal 7, e possui versões para sistemas Windows, GNU/Linux, Mac, DOS, OS/2, Haiku, e GNU/BSD. É um projeto de código livre (open source). Bibliotecas Bibliotecas são um conjunto de funções e procedimentos chamadas por comandos nos programas. Por exemplo a biblioteca CRT responde ao comando clrscr (limpar a tela). No caso do compilador Turbo Pascal acessamos a biblioteca da seguinte forma: program teste; uses crt; Observação: o compilador Pascalzim já acessa a biblioteca CRT, não sendo necessário acessá-la. História do Pascal Ano de 1971. O professor Niklaus Wirth projeta uma linguagem como trabalho escolar para estudantes de programação da Universidade Técnica de Zurique, Suíça. Essa linguagem vem a se chamar Pascal, homenageando o filósofo e matemático do século XVII, Blaise Pascal. A partir dessa época, diversas versões de Pascal foram implementadas, com destaque especial a Borland / Inprise, que construiu os melhores e mais populares compiladores Pascal. Turbo Pascal 1: Desde a sua primeira versão, o compilador pascal da Borland (chamado de Turbo Pascal) já possuía ambiente para digitação e depuração do código fonte, e fazia a compilação e linkedição do código em um único processo. Outra característica dos compiladores Turbo Pascal: são extremamente rápidos e geram executáveis enxutos, e com código nativo. Turbo Pascal 2 e 3: Foram acrescentadas algumas funcionalidades nessas versões, como o acesso a diretórios através do ambiente de programação, para a localização de arquivos. Foi incluído novos procedimentos e funções. Turbo Pascal 4: Foram introduzidas rotinas do DOS para leitura de diretórios, leitura e escrita de atributos de arquivos; ferramentas para acesso à memória e portas de hardware; facilidades para a construção de rotinas gráficas, com estilo de contornos e preenchimentos; foi implementado na versão 4 o conceito de unidade (Unit), fazendo com que um mesmo código fosse compartilhado entre vários programas fonte, e sem a necessidade da recompilação; esta versão ainda foi responsável pela implementação de novos tipos de dados e finalmente, a possibilidade de deixar o programa residente. Turbo Pascal 5: Ocorreu uma importante evolução no compilador - a depuração. O programa agora pode ser executado passo a passo, inclusive com o acompanhamento do

conteúdo das iáveis. Turbo Pascal 5.5: Esta versão foi a responsável pela estréia do Pascal Orientado a Objetos, dando origem a primeira implementação do Object Pascal. Programação Pascal Abordaremos aqui, a utilização dos conceitos de programação pascal por meio de exemplos. 1. Estrutura principal A estrutura principal de um programa em pascal se apresenta da seguinte forma: program cabeçalho; declarações comandos As palavras em negrito são palavras reservadas ou palavras chave da linguagem, que não podem ser declaradas como identificadores. Elas definem o tipo de dados ou estrutura que se deseja utilizar. 2. Palavras Chaves (reservadas): and, array,, case, const, div, do, downto, else, end, file, for, function, goto, if, in, label, mod, nil, not, of, or, packed, procedure, program, record, repeat, set, then, to, type, until,, while, with 3. Identificador Um identificador é formado por uma única letra, ou então por uma letra seguida de letras ou dígitos, em qualquer número. Considera-se dois identificadores como distintos quando considerados seus oito primeiros caracteres. 4. Comentários Declarações Os comentários são identificados por estarem delimitados pelos caracteres { e }, ou pelo caracteres (* e *). Comentários são ignorados pelo compilador na fase de tradução do programa. Comentários são úteis no sentido de destacar ou documentar o programa, para torná-lo mais legível e fácil de entender o seu objetivo, quando retomado para correção ou alteração após determinado tempo. A parte de declarações em um programa está relacionada a alocação de memória para os dados que serão utilizados no decorrer do programa. O montante do memória alocada está relacionada ao tipo de dado a ser utilizado. Podem ser declarados aqui regiões de memória que podem ter seu conteúdo alterado (iáveis), regiões de memória que não são permitidos a alteração de seu conteúdo, e também outros tipos além dos pré-definidos pela linguagem. 1. Tipos pré-definidos da linguagem Pascal: integer char boolean (TRUE, FALSE) string 2. Variáveis Variáveis são entidades que são representadas por identificadores. Sintaxe: lista-de-identificadores : tipo; lista-de-identificadores : tipo;

Exemplo: nota, A12 : real; i, codigo : integer; flag, Sim : boolean; letra1, letra2: char; 3. Constantes Define identificadores que não se alteram durante a execução do algoritmo. Exemplo: const pi = 3,1415 4. Declaração de outros Tipos Além dos tipos pré-definidos pela linguagem Pascal, há a possibilidade de se definir outros tipos. Exemplo: type LETRASMA = A.. Z ; INDICES = 0.. 100; DIAS = (dom, seg, ter, qua, qui, sex, sab); diasemana : DIAS; Construção do programa em Pascal O programa se constitui num texto, que pode ser editado em qualquer editor de texto ou diretamente no compilador, sendo necessário ser salvo com a terminação.pas de pascal, em seguida compilado (traduzido para linguagem de máquina), para depois ser executado. Nos compiladores de hoje já é possível executar direto pulando todas estas etapas. O programa em Pascal se constitui basicamente de: {comentários entre chaves não são lidos pelo compilador} program Nome_do_programa; {identificação do programa} uses CRT; {acessar uma biblioteca,necessário no Turbo Pascal} {declaramos as iáveis} a,b,c:real; {iáveis:tipo} {início do corpo do programa} read(a); {comandos dentro do corpo} c:=a; {comandos terminam com ponto e vírgula} {fim do corpo do programa com ponto} Exemplo de programa em Pascal: program nomey; uses crt; nome:string; clrscr; write('escreva um nome '); read(nome); writeln('o nome que voce escreveu foi: ',nome); readkey;

Exemplo 2. Este programa lê o número de um aluno e suas três notas, calcula a média das notas, ponderada pelos pesos 2,3,4 respectivamente, e imprime o número do aluno, suas três notas e a média. program Notas ; numal : integer ; n1, n2, n3, media : real ; writeln ('Digite o numero do aluno seguido das tres notas') ; readln ( numal, n1, n2, n3 ) ; media := ( 2*n1 + 3*n2 + 4*n3 ) / 9 ; writeln ('Aluno: ', numal:4) ; writeln ('Notas: ', n1:6:2, n2:6:2, n3:6:2) ; writeln ('Media: ', media:6:2 ) ; Exemplo 3. O programa abaixo lê três números representando os lados de um triângulo, verifica se o mesmo é possível e classifica-o quanto ao tipo: equilátero, isóceles ou escaleno. Conforme o caso, a mensagem adequada é impressa. program classifica ; a, b, c : real; write ('Digite os valores dos lados do triangulo:'); readln (a, b, c); if ( a >= b+c ) or ( b >= a+c ) or ( c >= a+b ) then writeln ('O triangulo é impossivel') else if ( a = b ) and ( a = c ) then writeln ('O triangulo é equilatero') else if ( a = b ) or ( a = c ) or ( b = c ) then writeln ('O triangulo é isoceles') else writeln ('O triangulo é escaleno') (* classifica *)