41
Algoritmos e Programação Prof.º Thyago Maia Prof. Thyago Maia 2013.1

Algoritmos e Programação - 2013.1 - Aula 3

Embed Size (px)

Citation preview

Page 1: Algoritmos e Programação - 2013.1 - Aula 3

Algoritmos e Programação

Prof.º Thyago MaiaProf.  Thyago Maia2013.1

Page 2: Algoritmos e Programação - 2013.1 - Aula 3

Aula 3

Objetivos• Apresentar a forma básica de um 

algoritmo computacionalg p• Apresentar alguns recursos 

tili d d l i t dutilizados no desenvolvimento de algoritmos computacionais

2

Page 3: Algoritmos e Programação - 2013.1 - Aula 3

Forma geral de um algoritmoForma geral de um algoritmo

Page 4: Algoritmos e Programação - 2013.1 - Aula 3

Forma geral de um algoritmo

Algoritmo “nome”VarVar//aqui declaramos as variáveis

Inicio

//Aqui codificamos as instruções//e expressõesfimalgoritmofimalgoritmo

4

Page 5: Algoritmos e Programação - 2013.1 - Aula 3

Forma geral de um algoritmo

• As palavras reservadas algoritmo e fimalgoritmodelimitam o início e o fim de um algoritmo;

• Após a palavra reservada var (acrônimo paraApós a palavra reservada var (acrônimo para variáveis), descrevemos as variáveis e os tipos de dados que cada variável recebe;dados que cada a á e ecebe;

• Entre as palavras reservadas inicio e fimalgoritmo• Entre as palavras reservadas inicio e fimalgoritmodefinimos a lista de instruções do algoritmo;

5

Page 6: Algoritmos e Programação - 2013.1 - Aula 3

Forma geral de um algoritmo

• Palavras reservadas fazem parte da sintaxe da linguagem, e são utilizadas em casos g gespecíficos;

• Ex.: A palavra reservada algoritmo é utilizada no Íinício de todo algoritmo... APENAS NO INÍCIO!

6

Page 7: Algoritmos e Programação - 2013.1 - Aula 3

VariáveisVariáveis

Page 8: Algoritmos e Programação - 2013.1 - Aula 3

Variáveis

• Trata‐se de uma representação para uma posição de memória;p ç• Capaz de reter e representar um valor ou expressão;expressão;

f l d d d d d• Tem a finalidade de armazenar dados ou informações de um programa por um curto espaço de tempo;• Tempo de execução;Tempo de execução; 

8

Page 9: Algoritmos e Programação - 2013.1 - Aula 3

Variáveis

• São associados a nomes, chamados identificadores;

Id ifi d ã d f i• Identificadores são usados para referenciar e diferenciar as variáveis em algoritmos;

• Identificadores devem ser claros e precisos;• Identificadores devem ser claros e precisos; 

9

Page 10: Algoritmos e Programação - 2013.1 - Aula 3

Variáveis

• Toda variável é associada a um tipo de valor;

• O tipo de uma variável identifica o tipo de l l d á bvalor que ela poderá receber;

• Declaramos variáveis logo após a palavra reservada var Exemplo:reservada var. Exemplo:– Var idade: inteiro

nota1, nota2: real10

Page 11: Algoritmos e Programação - 2013.1 - Aula 3

Variáveis

• Regras para identificação de variáveis:• Nomes de variáveis não podem ser iguais a palavras reservadas;

• Nomes de variáveis devem possuir como primeiro caractere uma letra ou sublinhado;

• Os demais caracteres podem ser letras, números ou sublinhado;

d á• Nomes devem ter no máximo 127 caracteres;• Nomes não podem ter espaços em branco;• Não há diferença entre letras maiúsculas e minúsculas;;

11

Page 12: Algoritmos e Programação - 2013.1 - Aula 3

Palavras reservadas

• aleatorio, abs, algoritmo, arccos, arcsen, arctan, arquivo, asc, ate, caracter, caso, compr, copia, cos, cotan, cronometro, debug declare e eco enquanto entao escolha escrevadebug, declare, e, eco, enquanto, entao, escolha, escreva, exp, faca, falso, fimalgoritmo, fimenquanto, fimescolha, fimfuncao, fimpara, fimprocedimento, fimrepita, fimse, , p , p , p , ,funcao, grauprad, inicio, inteiro, interrompa, leia, literal, log, logico, logn, maiusc, mensagem, minusc, nao, numerico, numpcarac, ou, outrocaso, para, passo, pausa, pi, pos, procedimento, quad, radpgrau, raizq, rand, randi, repita, se, sem senao timer tan verdadeiro xou;sem, senao, timer, tan, verdadeiro, xou;

12

Page 13: Algoritmos e Programação - 2013.1 - Aula 3

Variáveis

• Exemplos:

• Identificadores válidos:• Nome telefone endereco idade mae;• Nome, telefone, endereco, idade_mae;

• Identificadores in álidos• Identificadores inválidos:• 3endereco, algoritmo, títulos;

13

Page 14: Algoritmos e Programação - 2013.1 - Aula 3

Tipos de dadosTipos de dados

Page 15: Algoritmos e Programação - 2013.1 - Aula 3

Tipos de dadosp

TIPOTIPO DESCRIÇÃODESCRIÇÃOTIPOTIPO DESCRIÇÃODESCRIÇÃO

InteiroInteiroRepresenta valores inteirosRepresenta valores inteiros

InteiroInteiroEx.: 2, 5, Ex.: 2, 5, ‐‐3, 100, 3, 100, ‐‐151...151...

Representa valores reaisRepresenta valores reaisReal ou numericoReal ou numerico

Representa valores reaisRepresenta valores reaisEx.: 10.0, 5.6, Ex.: 10.0, 5.6, ‐‐3.45....3.45....

Literal ou caractereLiteral ou caractereRepresenta texto entre aspas duplasRepresenta texto entre aspas duplasEx : “Sport Recife” “B” “1234”Ex : “Sport Recife” “B” “1234”Ex.:  Sport Recife ,  B ,  1234Ex.:  Sport Recife ,  B ,  1234

LogicoLogico Representa os valores lógicos Representa os valores lógicos VERDADEIRO FALSOVERDADEIRO FALSO

15

gg VERDADEIRO ou FALSOVERDADEIRO ou FALSO

Page 16: Algoritmos e Programação - 2013.1 - Aula 3

Tipos de dadosp

• Exemplo:

Al it “d d ”Algoritmo “dados”Var nome: literal

idade: inteiroaltura: realnota1, nota2: real

InicioIniciofimalgoritmo

16

Page 17: Algoritmos e Programação - 2013.1 - Aula 3

Operador de atribuiçãoOperador de atribuição

Page 18: Algoritmos e Programação - 2013.1 - Aula 3

Operador de atribuiçãop ç

• Utilizado para inserir um valor ou o resultado de uma expressão em uma variável;

• Representado por uma seta apontando para a esquerda (<-);esquerda (< );

• Só podemos atribuir valores do mesmo tipo da variável;

18

Page 19: Algoritmos e Programação - 2013.1 - Aula 3

Operador de atribuiçãop ç

• Exemplo:

Al it “ l ”Algoritmo “exemplo”Var nome: literal

idade: inteiroInicio

nome <- “Thyago Maia”idade <- 27idade <- 27

fimalgoritmo

19

Page 20: Algoritmos e Programação - 2013.1 - Aula 3

Operador de atribuiçãop ç

• Exemplo 2 (com erros de atribuição):

Al it “ l ”Algoritmo “exemplo”Var nome: literal

idade: inteiroInicio

nome <- Thyago Maiaidade <- 27 34idade <- 27.34

fimalgoritmo

20

Page 21: Algoritmos e Programação - 2013.1 - Aula 3

ExercíciosExercícios

Page 22: Algoritmos e Programação - 2013.1 - Aula 3

Exercícios

• Classifique os dados abaixo de acordo com seu tipo:

00 “abc”“abc” “João”“João”

5.75.7 10121012 FALSOFALSO

--4949 342342 5695694949 342342 569569

“Lucas”“Lucas” “Verdadeiro”“Verdadeiro” 0.000010.00001

VerdadeiroVerdadeiro “444”“444” --78.178.1

22

Page 23: Algoritmos e Programação - 2013.1 - Aula 3

Exercícios

• Classifique os dados abaixo de acordo com seu tipo:

0 0 inteirointeiro “abc” “abc” literalliteral “João” “João” literalliteral

5 75 7 ll 101101 i t ii t i FALSOFALSO l il i5.7 5.7 realreal 101 101 inteirointeiro FALSO FALSO logicologico

--49 49 inteirointeiro 342 342 inteirointeiro 9 9 inteirointeiro

“Lucas” “Lucas” literalliteral “Verdadeiro” “Verdadeiro” literalliteral 0.00001 0.00001 realreal

Verdadeiro Verdadeiro logicologico “444” “444” literalliteral --78.1 78.1 realreal

23

Page 24: Algoritmos e Programação - 2013.1 - Aula 3

Linhas de comentárioLinhas de comentário

Page 25: Algoritmos e Programação - 2013.1 - Aula 3

Linhas de comentário

• Informação textual para a documentação do algoritmo;g ;

• Ajudam a organizar o algoritmo, tornando‐o i l í lmais legível;

• São representadas por duas barras normais (//);

• Todo texto digitado após as barras é• Todo texto digitado após as barras é considerado um comentário;

• Comentários não são interpretados; 25

Page 26: Algoritmos e Programação - 2013.1 - Aula 3

Linhas de comentário

• Exemplo:

// Algoritmo que atribui um nome// a uma variávelAlgoritmo “exemplo”Var nome: literalInicio

// Linha que ocorre a atribuiçãonome <- “Thyago Maia”

fimalgoritmo

26

Page 27: Algoritmos e Programação - 2013.1 - Aula 3

Comandos de entrada e saídaComandos de entrada e saída

Page 28: Algoritmos e Programação - 2013.1 - Aula 3

Comandos de entrada e saída

• Comandos de saída (escreva e escreval)

• Utilizados para escrever mensagens ou valores de variáveis na tela do usuário (no programavariáveis na tela do usuário (no programa terminal);E l é• Escreva escreve algo e mantém o cursor na mesma linha, aguardando novas instruções;

• Escreval escreva algo e pula uma linha;

28

Page 29: Algoritmos e Programação - 2013.1 - Aula 3

Comandos de entrada e saída

• Exemplo:

Algoritmo “escreve”VarInicio

escreval(“Minha primeira mensagem”)fimalgoritmo

29

Page 30: Algoritmos e Programação - 2013.1 - Aula 3

Comandos de entrada e saída

• Exemplo:

Algoritmo “escreve_variavel”Var idade: inteiroVar idade: inteiroInicio

idade <- 28idade < 28escreval(“Minha idade:”)escreva(idade)escreva(idade)

fimalgoritmo

30

Page 31: Algoritmos e Programação - 2013.1 - Aula 3

Comandos de entrada e saída

• Exemplo:

Algoritmo “escreve_variavel_2”Var idade: inteiroInicio

idade <- 28escreva(“Minha idade:”, idade)

fimalgoritmo

31

Page 32: Algoritmos e Programação - 2013.1 - Aula 3

Comandos de entrada e saída

• Comando de entrada (leia)

• Utilizado para ler um valor digitado pelo usuário, armazenando o referido valor em uma variávelarmazenando o referido valor em uma variável indicada no comando;

32

Page 33: Algoritmos e Programação - 2013.1 - Aula 3

Comandos de entrada e saídasaída

• Exemplo:

Algoritmo “escreve_seu_nome”Var nome: literalInicio

escreval(“Digite seu nome”)leia(nome)escreval(“Seu nome é: ”)escreval(nome)

fimalgoritmo

33

Page 34: Algoritmos e Programação - 2013.1 - Aula 3

Comandos de entrada e saída

• Exemplo:

Algoritmo “soma”Algoritmo somaVar num1, num2, soma: inteiroInicio

escreva(“Digite o primeiro número: ”)leia(num1)escreva(“Digite o segundo número: ”)leia(num2)soma <- num1 + num2soma <- num1 + num2escreval(“Resultado: ”, soma)

fimalgoritmo

34

g

Page 35: Algoritmos e Programação - 2013.1 - Aula 3

ExercíciosExercícios

Page 36: Algoritmos e Programação - 2013.1 - Aula 3

Exercícios

• Faça um algoritmo que lê o nome de um aluno, suas duas notas no semestre e calcula sua média final. O algoritmo deverá apresentar o nome digitado e a médiaapresentar o nome digitado e a média calculada;

36

Page 37: Algoritmos e Programação - 2013.1 - Aula 3

Exercícios

• Escreva um algoritmo que calcule a área do quadrado. O usuário deverá digitar o lado de q gum quadrado para que o algoritmo calcule sua área apresentando‐o logo em seguida;área, apresentando o logo em seguida;

• Area do quadrado = lado2

37

Page 38: Algoritmos e Programação - 2013.1 - Aula 3

Exercícios

• Escreva um algoritmo que lê três valores, calcula e apresenta a área do trapézio;p p

38

Page 39: Algoritmos e Programação - 2013.1 - Aula 3

Explore o assunto!Explore o assunto!

Page 40: Algoritmos e Programação - 2013.1 - Aula 3

Explore o assunto!p

• Referências– Introdução aos çalgoritmos(TONET, B., KOLIVER, C.): Introdução , ) çe tópicos 4, 5, 7 , 8 e 9 ; Exercícios da Página 40 e g41;

– Disponível emDisponível em  http://www.claudiorodolfo com/ftc/ap/manual vifo.com/ftc/ap/manual_visualg.pdf

40

Page 41: Algoritmos e Programação - 2013.1 - Aula 3

Explore o assunto!p

• Referências– Fundamentos da programação de computadores p(ASCENCIO, A. F. G., CAMPOS, E. A. V.): , )Exercícios Propostos, páginas 47, 48, 49;p g , , ;

41