400 likes | 586 Views
Algoritmos e Programação. Thyago Maia Tavares de Farias Aula 12. Sumário. Pascal – Conceitos e Ambiente. Passos para a construção de Software. Problema !!!. Codificação. Solução. 1º passo: Conhecimento do problema; 2º passo: Construção do algoritmo;
E N D
Algoritmos e Programação Thyago Maia Tavares de Farias Aula 12
Sumário • Pascal – Conceitos e Ambiente
Passos para a construção de Software Problema !!! Codificação Solução 1º passo: Conhecimento do problema; 2º passo: Construção do algoritmo; 3º passo: Codificação do algoritmo em uma linguagem de programação;
Linguagens de programação Para armazenar um algoritmo na memória de um computador, e para que o mesmo seja executável, é necessário que o mesmo seja programado (codificado); Precisamos transcrever nossos algoritmos para uma linguagem de programação; Exemplos: Pascal, C, Java, Cobol, etc. Na disciplina, utilizaremos a linguagem de programação Pascal;
A linguagem Pascal Desenvolvida em 1968 por NiklausWirth, da Universidade Técnica de Zurique, na Suíça; Objetivo: Oferecer uma linguagem para o ensino de programação que fosse simples, coerente e capaz de confeccionar programas claros e legíveis; Batizada em homenagem a Blaise Pascal, filósofo, matemático e inventor da primeira calculadora mecânica;
A linguagem Pascal • Linguagem parecida com a linguagem algorítmica; • Usa o paradigma estruturado, onde qualquer problema pode ser resolvido utilizando três estruturas: • Sequencial; • Condicional; • Iterativa (repetição);
Adaptando algoritmos para a linguagem Pascal PORTUGOL PASCAL Algoritmo “exemplo” Var numero: inteiro Inicio escreva(“Informe um número: ”) leia(numero) numero <- numero + 10; escreva(“Novo número: ”, numero) fimalgoritmo program exemplo; Uses crt; Var numero: integer; begin write(‘Informe um número: ‘); readln(numero); numero := numero + 10; write(‘Novo número: ‘, numero); end. Ex.:
Área de Declarações • Declaração de Uso das Unidades: • Um programa Pascal pode fazer uso • de algumas unidades padrão, tais • como: CRT, PRINTER, etc. • A unidade CRT faz a adequação do • hardware com seu programa. PASCAL program exemplo; Uses crt; Var numero: integer; begin write(“Informe um número: ”); readln(numero); numero := numero + 10; write(“Novo número: ”, numero); end. Declaração de Variáveis: var <lista-de-identificadores>: <tipo> onde, <lista-de-identificadores>: lista variáveis de um mesmo tipo <tipo-de-dado>: nome de um dos tipos pré-definidos ou criados pelo programador
Tipos de variáveis • Integer • Equivalente ao tipo inteiro em algoritmos; • Exemplo de declaração: • Em algoritmos: var numero: inteiro • Em Pascal: var numero: integer;
Tipos de variáveis • Integer • Tipos variantes:
Tipos de variáveis • Real • Equivalente ao tipo real em algoritmos; • Exemplo de declaração: • Em algoritmos: var numero: real • Em Pascal: var numero: real;
Tipos de variáveis • Real • Tipos variantes:
Tipos de variáveis • Boolean • Equivalente ao tipo lógico em algoritmos; • Exemplo de declaração: • Em algoritmos: var valor: logico • Em Pascal: var valor: boolean;
Tipos de variáveis • String • Equivalente ao tipo literal em algoritmos (tamanho máximo de caracteres: 255); • Exemplo de declaração: • Em algoritmos: var time: literal • Em Pascal: var time: String; • Exemplo de atribuição: • Em algoritmos:time <- “Sport Recife” • Em Pascal: time := ‘Sport Recife’;
Tipos de variáveis • String • Podemos limitar o tamanho de um string, utilizando [ + tamanho do texto + ] ao lado da especificação de tipo • Exemplo de declaração: • var time: String[10]; • var sexo: String[1]; • Var nome_completo: String[100];
Tipos de variáveis • Char • Equivalente ao tipo literal em algoritmos, porém representa um único caractere; • Exemplo de declaração: • Em algoritmos: var sexo: literal • Em Pascal: var sexo: char; • Exemplo de atribuição: • Em algoritmos:sexo <- “M” • Em Pascal: sexo := ‘M’;
Variáveis Representam os espaços reservados na memória para armazenar informações; Funcionamento, declaração e atribuição semelhantes às variáveis utilizadas em algoritmos; Assim como em algoritmos, cada variável possui um nome (identificador) e um tipo; As regras para criação de nomes de variáveis são as mesmas utilizadas em algoritmos;
Variáveis • Regras para identificadores de variáveis: • Não devem ser extensas demais; • Caracteres permitidos: números, letras e sublinhado; • Primeiro caractere é sempre uma letra; • Identificadores não podem se repetir; • Não são permitidos caracteres em branco; • Não são permitidos caracteres especiais; • Não podemos utilizar palavras reservadas em nomes de variáveis;
Variáveis Exemplos de declaração: var numero: integer; nome: string; sexo: char; salario: real;
Palavras Reservadas Nomes utilizados pelo computador para representar comandos, operadores e nomes de seção de programas;
Constantes Variáveis que assumem um determinado valor atribuído e não pode ser alterado ao longo do programa; Constantes assumem o tipo de valor a ela atribuído (não é necessária a definição de tipo na declaração!); Uma constante, assim como uma variável, deverá ser declarada na área de declarações;
Constantes Para declarar constantes, utilizamos a palavra reservada CONST, seguido do seu identificador (nome) + = + valor da constante + ; Exemplos: CONST time_professor = ‘Sport Recife’; CONST pi = 3.1416; CONST max = 10;
Comentários Texto delimitado entre {} ou (* *) Seu conteúdo não é compilado; Pode conter qualquer tipo de caractere; Pode conter mais de uma linha; Pode ser colocado em qualquer região do programa; Utilizado para documentar código, esclarecer alguma região de código, etc.;
Comentários Exemplo: program exemplo; {área de declarações} Uses crt; Var numero: integer; begin {lista de instruções} write(“Informe um número: ”); readln(numero); numero := numero + 10; write(“Novo número: ”, numero); end.
Área de Comandos • Área de Comandos: • Delimitada pelo BEGIN e END. • Os comandos são separados entre si • pelo delimitador ponto-e-vírgula. • A forma geral é: • Begin • < comando >; • ... • < comando >; • End. PASCAL program exemplo; Uses crt; Var numero: integer; begin write(“Informe um número: ”); readln(numero); numero := numero + 10; write(“Novo número: ”, numero); end.
Comando de atribuição Utilizado para atribuir um valor a uma variável, um resultado de uma expressão ou o valor de outra variável; Equivalente ao comando de atribuição <- utilizando em algoritmos; Sintaxe em Pascal: Nome_variavel:= valor, variável ou expressão;
Comando de atribuição • OBS: No comando de atribuição, a variável e seu valor devem ter o mesmo tipo, exceto nos seguintes casos: • Variáveis reais podem receber valores integer; • Variáveis string podem receber valores char; • Exemplos: nome := ‘Thyago’; media := (nota1+nota2) / 2;
Comandos de Entrada • Utilizado para receber dados digitados pelo usuário; • Funcionamento similar ao comando leia utilizado em algoritmos; • Comandos de entrada disponíveis em Pascal: • read • readln (similar ao read, realizando também a leitura do “newline” (nova linha) após o pressionamento da tecla Enter);
Comandos de Entrada Exemplo: programa que lê o nome e a idade de um usuário: program exemplo; Uses crt; Var nome: string; idade: integer; begin readln(nome); readln(idade); end.
Comandos de Saída • Utilizado para exibir dados; • Funcionamento similar ao comando escreva eescreval utilizados em algoritmos; • Comandos de saída disponíveis em Pascal: • write(similar ao escreva) • writeln (realiza a escrita de dados e passa o cursor para a próxima linha). Similar ao escreval
Comandos de Saída • No caso de variáveis do tipo integer ou real, podemos apresentar os dados na formatação desejada; • Exemplo: Media := (8 + 2) / 2; Writeln(Media); {escreveria 5.00000000E + 01} Writeln(Media:0:2); {escreveria 5.00}
Comandos de Saída Exemplo: programa que lê o nome e a idade de um usuário: program exemplo; Uses crt; Var nome: string; idade: integer; begin writeln(‘Digite seu nome:’); readln(nome); writeln(‘Digite sua idade:’); readln(idade); writeln(‘Seu nome: ’, nome); writeln(‘Sua idade: ’, idade); end.
Ambientes de Programação • Free Pascal Compiler • Código aberto e gratuito; • Interpreta Pascal e Object Pascal; • Criado em 1993; • Versões para vários sistemas operacionais;
Ambientes de Programação • Dev-Pascal • Gratuito; • Código Aberto;
Ambientes de Programação • Turbo Pascal • Compilador Pascal; • Software Proprietário da Borland International; • Em 1995, deixou de ser desenvolvido; • Licença de uso livre;
Ambientes de Programação • Pascal ZIM • Desenvolvido no Departamento de Ciências da Computação da Universidade de Brasília, sendo utilizado pelo curso desde 2000. • O compilador implementa um subconjunto da linguagem Pascal e contém as estruturas de dados, funções e comandos mais utilizados. • É freeware.
Ambientes de Programação Download: Free Pascal Compiler: http://www.freepascal.eti.br/ Dev-Pascal: http://www.bloodshed.net/devpascal.html Turbo Pascal: http://www.netdownloads.com.br/Download/2303/Turbo-Pascal-70.html Pascal ZIM: http://pascalzim.tripod.com/index.html