Transcript
Page 1: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

ALGORITMOS – AULA 3Operadores Relacionais, Lógicos e comandos de condição

Page 2: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Expressões Lógicas

Denomina-se expressão lógica aquela cujos operadores são lógicos e/ou relacionais e cujos operandos são relações e/ou variáveis e/ou constantes do tipo lógico.

operando lógico

operador lógico

constante lógicavariável lógica

expressão relacional

não

expressão lógica

operando lógico

Page 3: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Operadores Relacionais

Os operadores relacionais são utilizados para realizar comparações entre dois valores (constantes, variáveis ou expressões aritméticas) de mesmo tipo primitivo.

O resultado obtido de uma expressão relacional é sempre um valor lógico.

Page 4: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Operadores Lógicos

Os operadores lógicos mais utilizados são:

Page 5: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Comando de Atribuição

Permite-nos fornecer um valor a uma certa variável, onde o tipo dessa informação deve ser compatível com o tipo da variável.

O comando da atribuição possui a seguinte sintaxe:

identificador

expressão

;

expressão aritmética

expressão lógica

atribuição

expressão

Exemplo:lógico: A, B;inteiro: X;A verdadeiro;X 8 + 13 div 5;B 5 = 3;

Page 6: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Comandos de Entrada e Saída

Sintaxe do comando da entrada de dados:

entrada de dados

leia

variável( )

,

;

Exemplos: leia (X); leia (A, XPTO, NOTA);

Page 7: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Saída de Dados

Sintaxe do comando da saída de dados:

saída de dados

escreva

variável( )

,

;

Exemplos: escreva (Y); escreva (B, XPTO, MEDIA); escreva (“Bom Dia ”, NOME); escreva (“Você pesa ”, X*2, “quilos.”);

constanteexpressão

Page 8: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Blocos

Um bloco é definido como um conjunto de ações com uma função definida.

Algoritmo seria um bloco !? Serve também para definir os limites nos quais as

variáveis declaradas em seu interior são conhecidos.

Para delimitar um bloco, utiliza-se os delimitadores: inicio e fim, como segue:

blocos

inicio ação

fim

;

,

Page 9: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Exemplo de Bloco

inicio {início do bloco (algoritmo)}

|| {declaração de variáveis} | {seqüência de ações}||fim. {bloco (algoritmo)}

Page 10: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Estrutura Sequencial

O Fluxo de Controle segue a mesma sequência linear da nossa escrita, ou seja: De cima para baixo; Da esquerda para direita

Cada ação é seguida de um ; Objetiva separar uma ação da outra Indica que a próxima ação da sequência deve ser

executada

Page 11: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Estrutura sequencial

início

// declaração de variáveis

// corpo do algoritmoação 1;ação 2;ação 3;

. .

ação n;

fim. // fim do algoritmo

Algoritmo 3.1 – Modelo geral

Page 12: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Estrutura sequencial

início// declaração de variáveisreal: N1, N2, N3, N4, // notas bimestrais

MA; // média anual// entrada de dadosleia (N1, N2, N3, N4);// processamentoMA ¬ (N1 + N2 + N3 + N4) / 4;// saída de dadosescreva (MA);

fim.

Algoritmo 3.2 - Média Aritmética

Page 13: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Estruturas de Seleção

São aquelas que permitem alterar o Fluxo de Execução, de forma a selecionar qual parte deve ser executada

Essa “decisão” de execução é tomada a partir de uma condição, que pode resultar apenas em Verdade ou Falsidade

Uma condição é representada por expressões relacionais ou lógicas

As estruturas de seleção podem ser classificadas em simples, compostas ou encadeadas

Page 14: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Simples

Quando a <condição> for verdadeira o “bloco verdade” é executado

Quando a <condição> for falsa o “bloco verdade” não é executado

se <condição> entãoinício // início do bloco verdade

comando 1;comando 2;...comando n;

fim; // fim do bloco verdadefimse;

Page 15: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Simples

início// declaração de variáveisreal: N1, N2, N3, N4, // notas bimestrais

MA; // média anual// entrada de dadosleia (N1, N2, N3, N4);// processamentoMA ¬ (N1 + N2 + N3 + N4) / 4;// saída de dadosescreva (MA);se (MA >= 7) então

escreva (“Aluno Aprovado !”);fimse;

fim.

Algoritmo 3.3 - Média Aritmética com Aprovação

Page 16: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Composta

Quando a <condição> for verdadeira o “bloco verdade” é executado

Quando a <condição> for falsa o “bloco falsidade” é executado

se <condição> entãoinício // início do bloco verdade

comando 1;comando n;

fim; // fim do bloco verdadesenão

início // início do bloco falsidadecomando 1;comando n;

fim; // fim do bloco falsidadefimse;

Page 17: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Composta

início// declaração de variáveisreal: N1, N2, N3, N4, // notas bimestrais

MA; // média anualleia (N1, N2, N3, N4);MA ¬ (N1 + N2 + N3 + N4) / 4;escreva (MA);se (MA >= 7) então

inícioescreva (“Aluno Aprovado !”); escreva (“Parabéns !”);

fim;senão

inícioescreva (“Aluno Reprovado !”);escreva (“Estude mais !”);

fim;fimse;

fim.

Algoritmo 3.4 - Média Aritmética com aprovação e reprovação

Page 18: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Encadeada

Ocorre quando uma seleção tem como ação uma outra seleção

Uma seleção encadeada pode ser: Heterogênea: Quando não é possível

identificar padrão de comportamento Homogênea: Quando é possível identificar

padrão de comportamento se – então – se: quando depois de cada então

ocorre outro se se – senão – se: quando depois de cada senão

ocorre outro se

Page 19: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Encadeada

Dados três valores A, B, C, verificar se eles podem ser os comprimentos dos lados de um triângulo

Caso positivo, verificar se compõem Triângulo equilátero Triângulo isósceles Triângulo escaleno

A B

C

Page 20: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Encadeada

Dados três valores A, B, C, verificar se eles podem ser os comprimentos dos lados de um triângulo

Caso positivo, verificar se compõem Triângulo equilátero – três lados iguais Triângulo isósceles – dois lados iguais Triângulo escaleno – todos os lados

diferentes A B

C

Page 21: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Encadeada

Triângulo: (A<B+C) e (B<A+C) e (C<A+B) Equilátero: (A=B) e (B=C) Isósceles: (A=B) ou (B=C) ou (A=C) Escaleno: (A<>B) e (B<>C) e (A<>C)

É triângulo?

É equilátero?

É isósceles?

É escaleno?

Ações

V V F F “Equilátero”

V F V - “Isósceles”

V F F V “Escaleno”

F - - - “Não é triângulo”

Page 22: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Encadeada Heterogênea

iníciointeiro: A, B, C; // tamanho dos ladosleia (A, B, C);se (A<B+C) e (B<A+C) e (C<A+B) então

se (A=B) e (B=C) entãoescreva (“Triangulo Equilátero”);

senãose (A=B) ou (B=C) ou (A=C) então

escreva (“Triângulo Isósceles”);senão

escreva (“Triangulo Escaleno”);fimse;

fimse;senão

escreva (“Estes valores não formam um triângulo”);fimse;

fim.

Algoritmo 3.5 – Tipos de Triângulo

Page 23: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Encadeada Homogênea

se – então – se se <Cond1> então

se <Cond2> então se <Cond3> então

se <Cond4> então W;fimse;

fimse; fimse;

fimse;

É equivalente a:se <Cond1> e <Cond2> e <Cond3> e <Cond4> então W;fimse;

Cond1 Cond2 Cond3 Cond4 Ação

V V V V W

Page 24: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção Encadeada Homogênease X=V1 então

C1;fimse;se X=V2 então

C2;fimse;se X=V3 então

C3;fimse;se X=V4 então

C4;fimse;

X=V1 X=V2 X=V3 X=V4 Ação

V F F F C1

F V F F C2

F F V F C3

F F F V C4

se X=V1 então C1;senão se X=V2

então C2; senão se X=V3

então C3; senão se X=V4

então C4; fimse;

fimse;fimse;

fimse;

X=V1 X=V2 X=V3 X=V4 Ação

V - - - C1

F V - - C2

F F V - C3

F F F V C4

se – senão – se

Page 25: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção de Múltipla Escolha

Seleções encadeadas homogêneas se-senão-se são bastante frequentes para o tratamento de listas de valor

Para simplificar a escrita, pode-se utilizar o comando escolha.

Adaptando o algoritmo anterior:escolha X

caso V1: C1;caso V2: C2;caso V3: C3;caso V4: C4;

fimescolha;

Page 26: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção de Múltipla Escolha Construa um algoritmo que, tendo como dados de

entrada o preço de um produto e seu código de origem, mostre o preço junto de sua procedência

Caso o código não seja nenhum dos especificados, o produto deve ser encarado como importado

Siga a tabela de códigos abaixoCódigo de origem Procedência

1 Sul

2 Norte

3 Leste

4 Oeste

5 ou 6 Nordeste

7, 8 ou 9 Sudeste

10 até 20 Centro-oeste

25 até 30 Nordeste

Page 27: ALGORITMOS – AULA 3 Operadores Relacionais, Lógicos e comandos de condição

Seleção de Múltipla Escolha

inícioreal: Preço;inteiro: Origem;leia (Preço, Origem);escolha Origem

caso 1: escreva (Preço, “ – produto do Sul”);caso 2: escreva (Preço, “ – produto do Norte”);caso 3: escreva (Preço, “ – produto do Leste”);caso 4: escreva (Preço, “ – produto do Oeste”);caso 7, 8, 9: escreva (Preço, “ – produto do Sudeste”);caso 10..20: escreva (Preço, “ – produto do Centro-Oeste”);caso 5, 6, 25..50: escreva (Preço, “ – produto do Nordeste”);caso contrário: escreva (Preço, “ – produto importado”);

fimescolha;fim.

Algoritmo 3.6 – Múltipla Escolha


Top Related