101
http://www.computacao.gigamundo.co PROGRAMAÇÃO I Christiano Lima Santos

[PPT]PowerPoint Presentationcomputacao.gigamundo.com/wp-content/files/programacao-1.ppt · Web viewEx. de identificadores válidos: PAGAMENTO Soma_Total maiorValor Variáveis É um

Embed Size (px)

Citation preview

http://www.computacao.gigamundo.com

PROGRAMAÇÃO I

Christiano Lima Santos

http://www.computacao.gigamundo.com

Uma Introdução à Computação(Aula 1)

Christiano Lima Santos

http://www.computacao.gigamundo.com

Sumário Motivação A História da Computação A Arquitetura de Von Neumann Componentes de um Computador Referências Bibliográficas

http://www.computacao.gigamundo.com

Motivação Por que Computação?

A importância da informação O que é informação?

A era da conhecimento

Por que Programação? Como funciona um computador?

Como NÓS dizemos ao computador como ele deve funcionar?

http://www.computacao.gigamundo.com

A História da Computação Século XIV – criação do

Ábaco Chinês; Operações de adição,

subtração, multiplicação e divisão;

1823 – criação da Máquina de Diferenças; Logaritmos e funções

trigonométricas.

http://www.computacao.gigamundo.com

A História da Computação 1945 – criação

do ENIAC; O primeiro

computador! Cálculos

balísticos na segunda guerra mundial;

19.000 válvulas; 19 toneladas;

http://www.computacao.gigamundo.com

A História da Computação 1947/48 – invenção do transistor;

1954 – definição de FORTRAN (Formula Translator), primeira linguagem de programação de alto nível;

1958 – Invenção do “circuito integrado” (CHIP);

1969 – criação da ARPANET; Internet original, com fins militares.

http://www.computacao.gigamundo.com

A Arquitetura de Von Neumann Arquitetura empregada ainda hoje; Baseia-se em três componentes

principais: Memória – usada para armazenar dados e

programas; Unidade de Controle – circuito lógico

responsável pelo funcionamento da máquina, controlando o fluxo de instruções;

Unidade de Processamento – realiza cálculos de acordo com as instruções

http://www.computacao.gigamundo.com

A Arquitetura de Von Neumann

Decompondo a Unidade de Processamento Unidade Lógico-

Aritmética (ULA), onde são executadas as operações aritméticas;

Registradores Instruction Counter; Instruction Register; Memory Address Register; Memory Buffer Register; Registradores de

propósito geral.

Memória

Unidade de Controle

IC MAR MBR

IR

Registrador A

Registrador B

Registrador C

ULA

Unidade de Processamento

http://www.computacao.gigamundo.com

Componentes de um Computador

Memória Principal – A memória principal é do tipo RAM (Random access Memory);

CPU;

BIOS (Binary I/O System) – Memória do tipo ROM (Read Only Memory) ou PROM;

Memória auxiliar;

Dispositivos de entrada e saída.

Unidade de Controle

Unidade Lógica

Aritmética

CPU

Mem

ória

RA

M

Bios

Interface

Periférico

Interface

Periférico

http://www.computacao.gigamundo.com

Referências Bibliográficas INSTITUTO MILITAR DE ENGENHARIA, História do

Computador, disponível em: http://www.ime.usp.br/~macmulti/historico

LIBRANDI, Rodrigo. História da Computação, disponível em: http://www.juliobattisti.com.br/tutoriais/rodrigolibrandi/historiacomputacao001.asp

RIBEIRO, Fernando L. B. Notas de aula, disponível em: http://wwwp.coc.ufrj.br/~fernando/downloads/COMPUTACAO1.pdf

WIKIPEDIA-PT, História da Computação, disponível em: http://pt.wikipedia.org/wiki/História_da_computação

http://www.computacao.gigamundo.com

Representação Numérica(Aula 2)

Christiano Lima Santos

http://www.computacao.gigamundo.com

I. Bases mais estudadas em computação

Base decimal: N 0..9

Base binária: (N)2 0,1

Base hexadecimal: (N)16 0..9, A..F

http://www.computacao.gigamundo.com

II. Representação de um número em uma base qualquer

N = an.bn + an-1.bn-1 + ... + a1.b1 + a0

http://www.computacao.gigamundo.com

III. Conversão de base: Base decimal para base binária: 13 = (1101)2 (a3a2a1a0)2

http://www.computacao.gigamundo.com

Base binária para base decimal: (1101)2 = 13a3.b3 + a2.b2 + a1.b1 + a0 = 1.23 + 1.22 + 0.21 +

1 = 13 Base decimal para base hexadecimal: 678 = (a2a1a0)16 = (2A6)16

http://www.computacao.gigamundo.com

Base hexadecimal para base decimal: (2A6)16 = 678 2.162 + 10.161 + 6 = 512 + 160 + 6 =

678 Base binária para base hexadecimal:

http://www.computacao.gigamundo.com

Base hexadecimal para binária:

http://www.computacao.gigamundo.com

IV. Operação de adição: Na base binária: (1011)2 + (1010)2 = (10101)2 1011 1010 10101 Na base hexadecimal: (25A6)16 + (3D23)16 = (62C9)16

25A6 3D23 62C9

http://www.computacao.gigamundo.com

V. Operação de Subtração: Na base binária: (1011)2 – (110)2 = (101)2

1011 110 0101 Na base hexadecimal: (2C8)16 – (1A9)16 = (11F)16

2C8 1A9 11F

http://www.computacao.gigamundo.com

VI. Operação de multiplicação Na base binária: (10)2 x (1101)2 =

(11010)2 1101 10 0000 1101 11010

Na base hexadecimal:

(A6)16 x (538)16 = (36250)16

538 A6 1F50 3430 36250

http://www.computacao.gigamundo.com

VII. Operação de divisão: A forma mais fácil é converter para a

base decimal, efetuar o cálculo e converter para a base desejada;

http://www.computacao.gigamundo.com

Exercícios Efetue os seguintes cálculos, convertendo

antes os valores para cada uma das três bases:a) 3 + 5b) 12 + 16c) (10110)2 + (10100)2

d) (AF8)16 + (5C0)16

e) (10110)2 + (5C0)16

f) 120 - 31g) (1011101)2 – (100110)2

h) (AF8)16 – (5C0)16

i) (AF8)16 – (1011101011)2

j) (CB)16 x (101)2

http://www.computacao.gigamundo.com

Uma Introdução aos Algoritmos(Aula 3)

Christiano Lima Santos

http://www.computacao.gigamundo.com

Sumário Motivação Definição de

Algoritmo Características de

um Algoritmo Formas de

Representação dos Algoritmos

Vantagens do Uso de Algoritmos

Elementos Fundamentais de um Algoritmo

Linguagem, Compilador e IDE

Linguagem Pascal IDEs de Pascal Referências

Bibliográficas

http://www.computacao.gigamundo.com

Motivação Por que estudar algoritmos?

Queremos criar programas...

O que é um programa (software)? Um sistema para computador que

executa tarefas de forma seqüencial; Cada tarefa pode ser compreendida como

um conjunto de comandos e decisões;

http://www.computacao.gigamundo.com

Definição de Algoritmo Seqüência de ações finitas que

descrevem como um problema deve ser resolvido;

Exemplo: Trocar um pneu; Pentear os cabelos; Calcular a média de um aluno.

http://www.computacao.gigamundo.com

Características de um algoritmo Possui início e fim; É escrito em termos de ações bem

definidas; Suas ações possuem uma ordem

seqüencial.

http://www.computacao.gigamundo.com

Formas de Representação dos Algoritmos

Descrição narrativa Ex: “Receita de um bolo”

Separar os ingredientesBater os ovos em neve na batedeiraAcrescentar açúcar e farinha de trigoAcrescentar uma colher de manteigaAcrescentar uma colher de Fermento em póColocar na formaColocar no forno e assarRetirar do fornoTirar da forma e servirFim do processo!

http://www.computacao.gigamundo.com

Formas de Representação dos Algoritmos

Em uma linguagem de programação Ex: função em ActionScript

function colorDifference(color1, color2) {var r1 = Number("0x" + color1.substr(0,2));var g1 = Number("0x" + color1.substr(2,2));var b1 = Number("0x" + color1.substr(4,2));var r2 = Number("0x" + color2.substr(0,2));var g2 = Number("0x" + color2.substr(2,2));var b2 = Number("0x" + color2.substr(4,2));

return Math.max(Math.max(Math.abs(r1 - r2), Math.abs(g1 - g2)), Math.abs(b1 - b2));}

http://www.computacao.gigamundo.com

Formas de Representação dos Algoritmos

Representações Gráficas Fluxograma, por

exemplo

http://www.computacao.gigamundo.com

Formas de Representação dos Algoritmos

Pseudocódigo (Portugol) Ex: Cálculo de média

leia notaA, notaB, notaC, notaD; media <- (notaA + notaB + notaC + notaD) / 2; retorne media;

Os algoritmos são independentes das linguagens de programação.

Não existe um formalismo rígido de como deve ser escrito o algoritmo.

http://www.computacao.gigamundo.com

Vantagens do uso de algoritmos

Facilita a compreensão acerca da solução adotada;

Pode ser implementado em qualquer linguagem;

http://www.computacao.gigamundo.com

Elementos Fundamentais de um algoritmo ENTRADA: São os dados de entrada do algoritmo;

PROCESSAMENTO: Procedimentos utilizados para chegar ao resultado final;

SAÍDA: São os dados já processados.

Entrada Processamento Saida

http://www.computacao.gigamundo.com

Linguagem, Compilador e IDE

Linguagem Conjunto de regras sintáticas e semânticas

usadas para definir um programa de computador; Compilador

Programa que, a partir de um código escrito em uma linguagem, o código-fonte, cria um programa semanticamente equivalente porém escrito em outra linguagem, código objeto;

Diferente do Interpretador! IDE

Integrated Development Environment - Ambiente para desenvolvimento integrado.

http://www.computacao.gigamundo.com

Linguagem Pascal Linguagem de programação

estruturada; O nome é uma homenagem ao

matemático Blaise Pascal; Criada em 1970 pelo suíço Niklaus

Wirth.

http://www.computacao.gigamundo.com

IDEs de Pascal Turbo Pascal

Para download http://www.netdownloads.com.br/Download/2303/Turbo-Pascal-70.html

http://www.computacao.gigamundo.com

IDEs de Pascal Free Pascal

Para download:http://www.freepascal.eti.br

http://www.computacao.gigamundo.com

Referências Bibliográficas COSTA, Abel. Apostila

algoritmos e Fluxogramas, UFBA, disponível em:

http://www.fis.ufba.br/edmar/Cursos/fortran/abel/HOME%20MAT045%20-%20HOME%20PAGE/APOSTILAS%20FORTRAN%20FORMATO%20WORD/APOSTILA%2003%20algor%EDtimos%20e%20fluxogramas.doc

http://www.computacao.gigamundo.com

Alguns Conceitos e Comandos em Programação(Aula 4)

Christiano Lima Santos

http://www.computacao.gigamundo.com

Sumário Identificadores Variáveis Constantes Palavras-

Reservadas Tipos de Dados Comentários

Bloco de código / comandos

Video poker

http://www.computacao.gigamundo.com

Identificadores Nomes dados a variáveis, tipos,

procedimentos, funções, constantes, programas, units e campos de registros;

Pascal não é case-sensitive, logo: Pascal = Pascal = PASCAL;

Quais as regras para identificadores válidos? Ex. de identificadores válidos:

PAGAMENTO Soma_Total maiorValor

http://www.computacao.gigamundo.com

Variáveis É um valor (referenciado por um identificador)

que pode ser alterado durante a execução do programa;

Em Pascal, nós precisamos declarar as variáveis antes de usá-las

var <identificador> [,<identificadpr>] : <tipo>; Ex: var a, b: integer;

c: real; Na maioria das linguagens de programação,

uma variável está associada a um tipo de dado, que define quais valores podem ser armazenados e como devem ser manipulados;

http://www.computacao.gigamundo.com

Constantes É um valor (referenciado por um

identificador) que não muda durante a execução de um programa;

Podem ser inteiras, reais ou literais; As constantes também devem ser

declaradas em Pascal (constantes nomeadas); const <identificador> = <valor>;

Quem vai especificar o tipo do identificador da nossa constante?

Atenção quanto às constantes tipadas: const <identificador> : <tipo> = <valor>; Na verdade, são variáveis inicializadas!

http://www.computacao.gigamundo.com

Palavras-Reservadas Termos que não podem ser usados

pelo desenvolvedor ao declarar variáveis, constantes, tipos, procedimentos ou funções, por já serem empregados pela linguagem ou compilador em outras situações;

Exemplos de palavras-reservadas: And, array, function, if, implementation;

http://www.computacao.gigamundo.com

Tipos de Dados

Um tipo especifica as características de um dado;

Toda variável e constante usada em um programa tem um tipo associado com ela.

http://www.computacao.gigamundo.com

Os tipos podem ser divididos em três categorias: Tipo escalar (ou simples) – representa uma

única peça de dados; Tipo estruturado – representa uma coleção

de itens de dados; Tipo apontador – faz referência ou aponta

para outra peça de dados; Um novo tipo pode ser declarado do

seguinte jeito: type <identificador> = <descricao>;

http://www.computacao.gigamundo.com

Comentários São textos escritos dentro do código-

fonte para explicar ou descrever alguns aspectos relativos ao mesmo;

No momento de compilação, esses textos serão ignorados.

Os comentários podem ser de final de linha, linha ou de bloco;

Em Pascal, um comentário pode ser escrito assim: (* Texto aqui *); { Texto aqui };

http://www.computacao.gigamundo.com

Bloco de código/comandos Também conhecido

como comando composto;

Um ou mais comandos agrupados a serem executados seqüencialmente sendo assim possível usá-los em onde somente um comando é permitido;

Em Portudol Início

... comandos ...

Fim

Em Pascal begin

... comandos...

... end;

http://www.computacao.gigamundo.com

Comandos para Atribuição Permitem estabelecer o valor de uma

expressão (lado direito ou R-Value), como sendo o valor de uma variável (l-value e r-value);

Em Portugol variável valor;

Em Pascal Variável := valor.

http://www.computacao.gigamundo.com

Comandos para Impressão Permitem imprimir mensagens de

texto legíveis ao usuário; Em Portugol

Imprima Texto; Em Pascal

write(‘...’); writeln(‘...’);

http://www.computacao.gigamundo.com

Comandos para Leitura Permitem que o usuário insira

valores que serão armazenados em variáveis;

Em Portugol Leia variavel;

Em Pascal read(variavel); readln(variavel);

http://www.computacao.gigamundo.com

Operadores e Expressões Aritméticas As operações básicas ( +, -, x, / )

em Portugol e Pascal funcionam de forma similar a como usamos no cotidiano;

Atentar-se a: Uso de parênteses; Prioridade das operações.

http://www.computacao.gigamundo.com

Estrutura Básica de um Programa em Pascalprogram <identificador>;[<cláusula uses>>][<declaração de rótulos>] 0;[<declaração de constantes>];[<declaração de subprogramas>;]

BEGINcomando1[; <comando> ];...corpo do programa}

END.

http://www.computacao.gigamundo.com

Expressões(Aula 5)

Christiano Lima Santos

http://www.computacao.gigamundo.com

Sumário Definição de Expressão Tipos de Expressões Expressões Numéricas / Aritméticas Expressões Literais Expressões Relacionais Expressões Booleanas Expressões Constantes Exercícios

http://www.computacao.gigamundo.com

Definição de Expressão

Conjunto de operações efetuadas sobre certos dados (operandos) a fim de obter um resultado.

http://www.computacao.gigamundo.com

Tipos de Expressões Expressões Numéricas/Aritméticas Expressões Literais Expressões Relacionais Expressões Booleanas Expressões Constantes

http://www.computacao.gigamundo.com

Expressões Numéricas/Aritméticas Operador de negação (not); Operadores multiplicativos:

multiplicação (*); divisão real (/); divisão inteira (div); resto da divisão (mod); “e” lógico (and); deslocamento (shift) lógico para a esquerda(shl); deslocamento (shift) lógico para a direita (shr);

http://www.computacao.gigamundo.com

Operadores aditivos: adição e subtração (+, -); “ou” lógico (or); “ou” exclusivo (xor);

http://www.computacao.gigamundo.com

Expressões Literais Operador de concatenação (+)

http://www.computacao.gigamundo.com

Expressões Relacionais Igual a = Maior do que > Maior ou igual do que >= Menor do que < Menor ou igual do que <= Diferente de <> Obs: São válidas tanto para inteiros,

reais, caracteres e strings!

http://www.computacao.gigamundo.com

Expressões Booleanas Operador de negação (not); Operador “e” booleano (and); Operador aditivos:

“ou” booleano (or); “ou” booleano exclusivo (xor);

Algumas Observações: Operadores booleanos têm mais hierarquia

(prioridade) que os operadores relacionais; Avaliação completa x avaliação curto-

circuito.

http://www.computacao.gigamundo.com

Expressões Constantes Ex: const

X = 32768*2 – 1;S = ‘valor’ + ‘total’;K = 256 div 2;

http://www.computacao.gigamundo.com

Exercícios Represente em Pascal as seguintes

expressões: 2 (x+3y)2 0,029x1,5

2,7y2,7

1 + x + x2 + x3 + x4

2! 3! 4! z está entre x + 2 e x + 7, inclusive x, y e z são iguais x ou y são negativos, mas não os dois

http://www.computacao.gigamundo.com

Comandos Condicionais(Aula 6)

Christiano Lima Santos

http://www.computacao.gigamundo.com

Sumário Comando Condicional If

Definição Sintaxe

Comando Condicional Case Definição Sintaxe

http://www.computacao.gigamundo.com

Comando Condicional If Permite executar uma instrução se

e somente se uma condição expressa for verdadeira;

Caso a expressão seja falsa, o programa poderá executar uma instrução declarada para esse caso (else) ou simplesmente seguir, sem a execução de um comando.

http://www.computacao.gigamundo.com

Comando Condicional If If Simples

Em Portugolse <condição> então

<comando> Em Pascal

if <condição> then<comando>;

Se a condição expressa for verdadeira, execute o comando, caso contrário, ignore-o.

http://www.computacao.gigamundo.com

Comando Condicional If Obs: Comandos condicionais podem

ser aninhados Ex:

if <condição> thenif <condição> then

<comando>;

http://www.computacao.gigamundo.com

Comando Condicional If If Composto

Em Portugolse <condição> então

<comando1>senão

<comando2> Em Pascal

if <condição> então<comando1>

else<comando2>;

Aqui, nós dizemos que se a condição expressa for verdadeira, execute o comando1, caso contrário, execute o comando2.

Em Pascal, o último comando antes do else não pode ter ; caso contrário o programa pensará que o if termina ali e o else ficará sem um if, o que gera um erro em tempo de compilação!

http://www.computacao.gigamundo.com

Comando Condicional If Problema dos Ifs compostos

aninhados: Dado o comando:

if b1 then if b2 then s1 else s2; O else pertence a qual if? Por quê? Na maioria das linguagens, a associação

é feita sempre entre os pares mais próximos, logo:if b1 then if b2 then s1 else s2;

http://www.computacao.gigamundo.com

Comando Condicional If Nós podemos usar blocos de código (begin

e end) a fim de tornar mais claro qual else pertence a qual if:

if b1 thenbegin

if b2 thens1

endelse

s2; Lembrando que blocos de código podem ser

usados em qualquer lugar de um código que aceite um comando, a fim de melhorar a legibilidade ou para incluir mais comandos onde só poderíamos escrever um.

Perceba que usando begin e end eu alterei facilmente a “posse” do else.Ficou também claro agora a quem o else pertence (neste caso, ao primeiro if).

http://www.computacao.gigamundo.com

Comando Condicional Case O if não é nossa única opção! O case consiste de uma expressão

(seletor) e uma lista de comandos associados a rótulos de case;

Tanto o seletor quanto os rótulos de case devem assumir o mesmo tipo escalar ordinal;

Será executado o comando cujo rótulo representa o valor do seletor;

http://www.computacao.gigamundo.com

Comando Condicional Case Em Pascal, o comando é:

case <expressão> of <rotulo1>: <comando1>; <rotulo2>: <comando2>; <rotulo3>: <comando3>; ... else<comando> [; <comando>]...

end;

http://www.computacao.gigamundo.com

Comando Condicional Case

opcao := 2;case opcao of

1: <comando1>; 2: <comando2>; 3: <comando3>; else

<comando>;end;

No exemplo dado ao lado, o case irá avaliar a expressão (opcao) e determinará seu valor como sendo 2;

Ele então buscará qual o rótulo que possui esse valor (no caso, o rótulo 2), e então executará o comando associado a ele (comando2);

E se opção fosse 4? Não encontrando o valor, se

houver uma cláusula else, ele a executará, caso contrário, ele não executa comando algum;

http://www.computacao.gigamundo.com

Comando Condicional Case Quando é bom usar

Trabalhando condicionais de igualdade com um única variável ou uma expressão do tipo escalar ordinal;

Mais de dois possíveis “desvios” (comandos a executar);

Quando não é bom usar Trabalhando com tipos não-escalares ou

escalares não-ordinais; Strings e arrays, por exemplo;

Utilizando condições de desigualdade Ex: >, >=, <, <=, <>.

http://www.computacao.gigamundo.com

Comandos de Repetição(Aula 7)

Christiano Lima Santos

http://www.computacao.gigamundo.com

Sumário Definição Comando For Comando While Comando Repeat Comandos de Interrupção de Laços

Continue Break

http://www.computacao.gigamundo.com

Definição São comandos usados para executar um

comando (ou um conjunto de comandos) mais de uma vez;

O número de execuções pode ser fixado no início do comando (comando for) ou o comando pode ser repetido até que uma condição seja verdadeira (comando repeat) ou falsa (comando while).

http://www.computacao.gigamundo.com

Comando For O comando For executa

repetitivamente um comando enquanto é atribuído uma série de valores a uma variável de controle;

Sintaxe em Portugolpara <variável> <início> até <fim> faça

<comando> Sintaxe em Pascal

for <variável> := <expressão1> to / downto <expressão2> do<comando>;

http://www.computacao.gigamundo.com

Comando For Funcionamento

1. A variável de controle e as expressões devem ser do mesmo tipo escalar ordinal;

2. Inicialmente a variável recebe o valor de expressão1;

3. Antes de começar a execução, o programa testa se a variável é menor ou igual (se usado to) ou maior ou igual (se usado downto) à expressão2;

4. Se o resultado do teste for verdadeiro, o comando do laço é executado;

http://www.computacao.gigamundo.com

Comando For Funcionamento (continuando)

5. Ao terminar a execução do comando do laço, a variável de controle é testada para verificar se é igual ao valor final (expressão2);

6. Se for igual, a execução do laço é terminada, caso contrário, a variável é incrementada (to) ou decrementada (downto) e o comando do laço é executado novamente, ao fim do qual retorna ao passo 5, até atingir o valor de expressão2.

http://www.computacao.gigamundo.com

Comando For O que acontecerá em cada um desses

casos for i := 0 to 10 do for i := 10 to 0 do for i := 10 downto 0 do for i := 0 downto 10 do

http://www.computacao.gigamundo.com

Comando For Observações

O Turbo Pascal calcula o valor das expressões no começo da execução do comando for e usa estes valores enquanto durar a repetição

Por isso os valores das expressões não podem ser alterados dentro do laço;

O valor da variável de controle não deveria ser alterado dentro do laço;

http://www.computacao.gigamundo.com

Comando For Observações (continuando)

O que aconteceria comfor i := 1 to 10 do

i := i + 15; Ao terminar o for, a variável de

controle terá o valor da expressão2; Exceto se for interrompido por goto ou

break;

http://www.computacao.gigamundo.com

Comando While O comando while executa

repetitivamente um comando enquanto uma expressão de controle for verdadeira (true);

Sintaxe em Portugolenquanto <exp-booleana> faça

<comando> Sintaxe em Pascal

while <exp-booleana> do <comando>;

http://www.computacao.gigamundo.com

Comando While Observações

As variáveis da expressão podem (e devem!) ser alteradas durante a execução do laço;

Caso contrário, a expressão será sempre verdadeira! Cuidados com a declaração do caso de parada;

Senão, o seu laço será executado indefinidamente; Se ao começar o comando while o valor da

expressão for falsa, o laço não será executado nenhuma vez;

http://www.computacao.gigamundo.com

Comando Repeat O comando repeat executa seu comando

uma primeira vez e re-executa-o até que a expressão de controle seja verdadeira;

Sintaxe em Portugolrepita

<comando> [; <comando>]...até <exp-booleana>

Sintaxe em Pascalrepeat

<comando> [; <comando>]...until <exp-booleana>

http://www.computacao.gigamundo.com

Comando Repeat Observações

Diferentemente do for e do while, o comando repeat será executado ao menos uma vez, já que o teste é feito somente ao final;

Enquanto que o while é executado enquanto a expressão de controle for verdadeira, com o repeat a execução do comando é repetida enquanto a expressão for falsa.

http://www.computacao.gigamundo.com

Comandos de Interrupção de Laços Continue

Causa um desvio para o final do laço mais interno de um comando de repetição, em outras palavras, salta os comandos subseqüentes, mas não interrompe completamente a execução do laço;

Break Interrompe completamente a execução do

laço; Os comandos de execução não estão

disponíveis no Pascal padrão.

http://www.computacao.gigamundo.com

Funções e Procedimentos(Aula 8)

Christiano Lima Santos

http://www.computacao.gigamundo.com

Sumário Definição Comando For Comando While Comando Repeat Comandos de Interrupção de Laços

Continue Break

http://www.computacao.gigamundo.com

Definição de Função

Grupo de comandos que efetuam determinada operação (sobre argumentos passados ou não) e cujo resultado será utilizado em uma expressão;

http://www.computacao.gigamundo.com

Sintaxe de uma Funçãofunction <nome-da-função>

(<param>[,<param>]...:<tipo> [;<param>[,<param>]...:<tipo>]...) : <tipo>

[declarações]begin

<comando>[;<comando>]...end;

Obs: O retorno da função é dado por<nome-da-função> := valor_desejado;

http://www.computacao.gigamundo.com

Funções Numéricas sin(x) cos(x) tan(x) arctan(x)

exp(x) ln(x) sqr(x) sqrt(x)

abs(x) frac(x) int(x) round(x) trunc(x)

random[(x)] pi odd(x)

http://www.computacao.gigamundo.com

Funções Literais chr(I) copy(S, inicio, comprimento) length(S) ord(C) DownCase(C) UpCase(C)

http://www.computacao.gigamundo.com

Definição de Procedimento Grupo de comandos que efetuam

determinada operação (sobre argumentos passados ou não) mas que NÃO retorna seu resultado para uma expressão;

http://www.computacao.gigamundo.com

Sintaxe de um Procedimento

procedure <nome-do-procedimento>(<param>[,<param>]...:<tipo> [;<param>[,<param>]...:<tipo>]...)

[declarações]begin

<comando>[;<comando>]...end;

Obs: Em um procedimento, não há retorno.

http://www.computacao.gigamundo.com

Procedimentos de Entrada/Saída de Dados

read e readln Usados para receber dados do teclado

ou para leitura de arquivos; write e writeln

Usados para exibir dados, gravar arquivos ou mesmo impressão;

http://www.computacao.gigamundo.com

Outros Procedimentos dec(x [, N]) inc(x [, N]) delete(S, inicio, quantidade) insert(S, destino, inicio) str(x[:W[:D], S) val(S, V, codigo) exit halt