Algoritmos e programação - Aula 14
Upcoming SlideShare
Loading in...5
×
 

Algoritmos e programação - Aula 14

on

  • 3,860 views

slides referentes a 14ª aula da disciplina de Algoritmos e Programação, realizada no dia 02/04/2011.

slides referentes a 14ª aula da disciplina de Algoritmos e Programação, realizada no dia 02/04/2011.

Statistics

Views

Total Views
3,860
Views on SlideShare
3,694
Embed Views
166

Actions

Likes
1
Downloads
202
Comments
0

7 Embeds 166

http://cristianeturmati.blogspot.com.br 89
http://www.cristianeturmati.blogspot.com.br 32
http://thyagomaia.net 15
http://cristianeturmati.blogspot.com 15
http://algoritmos.thyagomaia.net 7
http://www.algoritmos.thyagomaia.net 5
http://ead.unipe.br 3
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Algoritmos e programação - Aula 14 Algoritmos e programação - Aula 14 Presentation Transcript

  • Algoritmos e Programação Thyago Maia Tavares de Farias Aula 12
  • Sumário
    • Pascal – Conceitos e Ambiente
  • Passos para a construção de Software
    • 1º passo: Conhecimento do problema;
    • 2º passo: Construção do algoritmo;
    • 3º passo: Codificação do algoritmo em uma linguagem de programação ;
    Problema !!! Solução Codificação View slide
  • 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 ;
    View slide
  • A linguagem Pascal
    • Desenvolvida em 1968 por Niklaus Wirth , 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
    • Ex.:
    Algoritmo “exemplo” Var numero: inteiro Inicio escreva(“Informe um número: ”) leia(numero) numero <- numero + 10; escreva(“Novo número: ”, numero) fimalgoritmo program exemplo; Var numero: integer; begin write(‘Informe um número: ‘); readln(numero); numero := numero + 10; write(‘Novo número: ‘, numero); end. PORTUGOL PASCAL
  • Área de Declarações program exemplo; Var numero: integer; begin write(“Informe um número: ”); readln(numero); numero := numero + 10; write(“Novo número: ”, numero); end. PASCAL 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;
    Nome Valor mínimo Valor máximo Bytes ocupados Integer -32.768 32.767 2
  • Tipos de variáveis
    • Integer
      • Tipos variantes:
    Nome Valor mínimo Valor máximo Bytes ocupados Shortint -128 127 1 Byte 0 255 1 Word 0 65.535 2 Longint -2.147.483.648 2.147.483.647 4
  • 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;
    Nome Valor mínimo Valor máximo Bytes ocupados Real -2.9 x 10 -39 1.7 x 10 38 6
  • Tipos de variáveis
    • Real
      • Tipos variantes:
    Nome Valor mínimo Valor máximo Bytes ocupados Single -1.5 x 10 -45 1.7 x 10 38 4 Double 5.0 x 10 -324 1.7 x 10 308 5 Extended 3.4 x 10 -4932 1.1 x 10 4932 10 Comp -2 -63 +1 2 -63 -1 8
  • 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;
    Valores True False
  • 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}
    • 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 program exemplo; Var numero: integer; begin write(“Informe um número: ”); readln(numero); numero := numero + 10; write(“Novo número: ”, numero); end. PASCAL
    • Á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.
  • 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 “new line” (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;
    • Var nome: string;
    • idade: integer;
    • begin
    • readln(nome);
    • readln(idade);
    • end.
  • Comandos de Saída
    • Utilizado para exibir dados;
    • Funcionamento similar ao comando escreva e escreval 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;
    • 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.
  • Operadores Operador Exemplo Comentário := X := 1 O valor 1 é atribuído a variável X. + X + Y Soma o conteúdo de X e de Y. - X – Y Subtrai o conteúdo de Y do conteúdo de X. * X * Y Multiplica o conteúdo de X pelo conteúdo de Y. / X/Y Obtém o quociente da divisão de X por Y. DIV X DIV Y Obtém o quociente inteiro da divisão de X por Y. MOD X MOD Y Obtém o resto da divisão inteira de X por Y. = X = Y Testa se o conteúdo de x é igual ao conteúdo de Y. <> X <> Testa se o conteúdo de x é diferente do conteúdo de Y. >= X >= Y Testa se o conteúdo de x é maior ou igual ao de Y. <= X <= Y Testa se o conteúdo de x é menor ou igual ou de Y. > X > Y Testa se o conteúdo de x é maior do que o conteúdo de Y. < X < Y Testa se o conteúdo de x é menor do que o conteúdo de Y.
  • Funções Predefinidas Funções Matemáticas Função Comentários ABS (x) Obtém o valor absoluto de x. LOG(x) Obtém o logaritmo de x. TRUNC (x) Obtém a parte inteira do número real armazenado em x. FRAC(x) Obtém a parte fracionária do número real armazenado em x. ROUND (x) Arredonda x. SIN (x) Calcula o seno de x. COS (x) Calcula o cosseno de x. PI Retorna o valor de ¶ SQRT (x) Calcula a raiz quadrada de x. SQR (x) Calcula x elevado ao quadrado. INC (x, Y) Incrementa a variável x com o valor da variável Y. DEC (x,y) Decrementa a variável x com o valor da variável Y
  • 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: h ttp://www.netdownloads.com.br/Download/2303/Turbo-Pascal-70.html
    • Pascal ZIM: http://pascalzim.tripod.com/index.html