• Nenhum resultado encontrado

Revisão

N/A
N/A
Protected

Academic year: 2021

Share "Revisão"

Copied!
31
0
0

Texto

(1)
(2)

REVISÃO

(3)

• Objetivo: Revisão dos conceitos das

estruturas para programação de um

algoritmo.

(4)

• Você sabe usar os Operadores Aritméticos

em programação?

• Todo mundo já usou operadores aritméticos na escola! Nos primeiros anos de estudo aprendemos a fazer

continhas de soma, subtração, multiplicação e divisão. Em algoritmos eles também são simples e têm a mesma simbologia em todas as linguagens de programação

( +, -, * e / ).

• Além desses mais simples, dois outros operadores

aritméticos não recebem muita atenção e pode ser que você não os conhece, eles são o div e o mod, que

resultam, respectivamente, o quociente (a

parte inteira do resultado da divisão) e o resto da divisão. Observe as operações a seguir:

(5)

Lógica de Programação

14 / 4 = 3,5

14 div 4 = 3

ou 14 \ 4 = 3

(6)

• Um outro operador aritmético que existe em algumas

linguagens de programação é o ^ e executa a operação de potência, mas geralmente essa operação é realizada

através de uma função chamada pow, bem como a

operação de radiciação (função sqrt). Veja um exemplo do operador ^:

• 2 ^ 5 = 32 (dois elevado a cinco)

• Operadores aritméticos de radiciação também são

fornecidos por algumas linguagens de programação, mas esses são bem mais raros. O Postgres por exemplo oferece os símbolos |/ e ||/ para operações de raiz quadrada e raiz cúbica, respectivamente.

(7)

PRECEDÊNCIA ENTRE OS OPERADORES

ARITMÉTICOS

Da mesma forma que na matemática, os operadores de multiplicação e divisão têm precedência de execução em relação aos operadores de soma e subtração. Aliás se tiver parênteses na expressão estes têm precedência ainda maior. A tabela abaixo indica a precedência dos operadores.

Lógica de Programação

Prioridade Operadores

1º Parênteses internos

potência (^) e raiz (quando a linguagem oferece esses operadores)

* / div e mod

(8)

Os operadores de mesma prioridade são interpretados

da esquerda para a direita. Para exemplificar essa

questão de precedência, observe a expressão:

5 + 3 * ( 3 – 1 ) – 2 ^ 5 / 4 – 1

O computador executa o cálculo na seguinte

sequência:

5 + 3 * 2 – 2 ^ 5 / 4 – 1

5 + 3 * 2 – 32 / 4 – 1

5 + 6 – 32 / 4 – 1

5 + 6 – 8 – 1

11 – 8 – 1

3 – 1

2

Lógica de Programação

(9)

Realmente todo mundo deve saber desde

criança os operadores aritméticos, mas para

criarmos algoritmos é muito importante

conhecermos mais detalhes, como o

operador mod ou a ordem de precedência de

cada um. Ainda assim, um dia você pode ser

surpreendido com um resultado que você não

esperava de uma expressão.

(10)

Conheça os Operadores Relacionais!

Operadores relacionais são utilizados para comparar

valores, o resultado de uma expressão relacional é um

valor

booleano

(VERDADEIRO ou FALSO).

Os operadores relacionais são:

igual, diferente, maior, menor, maior ou

igual, menor ou igual.

Não é necessário explicar cada um, pois eles são

auto-explicativos. Mas para quem é iniciante em

desenvolvimento de softwares algumas informações

podem ser importantes, principalmente pelo fato de

haver diferença entre linguagens de programação.

(11)
(12)

Lógica de Programação

• Os operadores relacionais são diferente

dependendo da linguagem de programação,

mas conhecendo os símbolos mais comuns,

a maioria da linguagens de programação

fica mais fácil aprender. No

VisuAlg

, os

símbolos dos operadores relacionais são:

=, <>, >, <, >=, <=.

(13)

Lógica de Programação

TIPO DE DADOS LÓGICO

O

tipo de dados primitivo

mais simples é o

chamado booleano ( ou lógico ). Pra quem não

conhece esse tipo de dados, um dado booleano só

pode assumir dois valores

( VERDADEIRO ou FALSO ). Em eletrônica,

costuma-se ensinar apresentando como exemplo

uma lâmpada, que pode estar acesa (verdadeiro) ou

apagada (falso). Isso é o básico. Na literatura você

pode encontrar esses dados de diferentes formas,

por exemplo: verdadeiro/falso, aceso/apagado, 1/0,

ligado/desligado, true/false, sim/não, etc….

(14)
(15)

Lógica de Programação

OS OPERADORES LÓGICOS

As operações lógicas trabalham sobre valores

booleanos, tanto os valores de entrada como

o de saída são desse tipo. Os operadores

lógicos são: E, OU, NÃO, NÃO-E, NÃO-OU,

OU-EXCLUSIVO E NÃO-OU-EXCLUSIVO.

A seguir uma explicação de cada um:

(16)

Lógica de Programação

Operador E (AND)

O Operador “E” ou “AND” resulta em um valor VERDADEIRO se os dois valores de entrada da operação forem VERDADEIROS, caso contrário o resultado é FALSO. Abaixo a tabela-verdade da operação E.

VALOR 1 VALOR 2 OPERAÇÃO E

VERDADEIRO VERDADEIRO VERDADEIRO VERDADEIRO FALSO FALSO

FALSO VERDADEIRO FALSO FALSO FALSO FALSO

(17)

Lógica de Programação

Operador OU (OR)

O Operador “OU” ou “OR” resulta em um valor VERDADEIRO se ao menos UM dos dois valores de entrada da operação for VERDADEIRO, caso contrário o resultado é FALSO. Abaixo a tabela-verdade da operação OU.

VALOR 1 VALOR 2 OPERAÇÃO OU

VERDADEIRO VERDADEIRO VERDADEIRO VERDADEIRO FALSO VERDADEIRO FALSO VERDADEIRO VERDADEIRO FALSO FALSO FALSO

(18)

Lógica de Programação

Operador NÃO (NOT)

O Operador “NÃO” ou “NOT” é o único operador que recebe como entrada apenas um valor, e sua função é simplesmente inverter os valores. Ou seja, se o valor de entrada for VERDADEIRO, o resultado será FALSO e se o valor de entrada for FALSO, o resultado será VERDADEIRO. Abaixo a tabela-verdade da operação NÃO.

VALOR DE ENTRADA OPERAÇÃO NÃO

VERDADEIRO FALSO

(19)

Lógica de Programação

Operador NÃO-E (NAND)

O Operador “NÃO-E” ou “NAND” é o contrário do operador E (AND), ou seja, resulta em VERDADEIRO, se ao menos um dos dois valores for FALSO, na verdade este é o operador E (AND) seguido do operador NÃO (NOT). Abaixo atabela-verdade da operação NÃO-E.

VALOR 1 VALOR 2 OPERAÇÃO NAND

VERDADEIRO VERDADEIRO FALSO

VERDADEIRO FALSO VERDADEIRO FALSO VERDADEIRO VERDADEIRO FALSO FALSO VERDADEIRO

(20)

Lógica de Programação

Operador NÃO-OU (NOR)

O Operador “NÃO-OU” ou “NOR” é o contrário do operador OU (OR), ou seja, resulta em VERDADEIRO, se os dois valores forem FALSO, na verdade este é o operador OU (OR) seguido do operador NÃO (NOT). Abaixo a

tabela-verdade da operação NÃO-OU.

VALOR 1 VALOR 2 OPERAÇÃO NOR

VERDADEIRO VERDADEIRO FALSO VERDADEIRO FALSO FALSO FALSO VERDADEIRO FALSO

(21)

Lógica de Programação

Operador OU-EXCLUSIVO (XOR)

O Operador “OU-EXCLUSIVO” ou “XOR” é uma variação interessante do operador OU (OR), ele resulta em VERDADEIRO se apenas um dos valores de entrada for VERDADEIRO, ou seja, apenas se os valores de entrada forem DIFERENTES. Abaixo a tabela-verdade da operação OU-EXCLUSIVO.

VALOR 1 VALOR 2 OPERAÇÃO XOR

VERDADEIRO VERDADEIRO FALSO

VERDADEIRO FALSO VERDADEIRO FALSO VERDADEIRO VERDADEIRO FALSO FALSO FALSO

(22)

Lógica de Programação

Operador NÃO-OU-EXCLUSIVO (XNOR)

O Operador “NÃO-OU-EXCLUSIVO” ou “XNOR” é o contrário do operador OU-EXCLUSIVO (XOR), ou seja, resulta VERDADEIRO se os valores de entrada forem IGUAIS. Observe a tabela abaixo:

VALOR 1 VALOR 2 OPERAÇÃO XNOR

VERDADEIRO VERDADEIRO VERDADEIRO VERDADEIRO FALSO FALSO

FALSO VERDADEIRO FALSO

(23)

Lógica de Programação

(24)

Lógica de Programação

ESTRUTURAS DE PROGRAMAÇÃO

SE/SENÃO

(25)

Lógica de Programação

ESTRUTURAS DE PROGRAMAÇÃO

SE/SENÃO

se <condição> entao

<ações (uma ou mais) a serem realizadas se a

condição for verdadeira>

senao

<ações (uma ou mais) a serem realizadas se a

condição for falsa>

(26)

Lógica de Programação

ESTRUTURAS DE PROGRAMAÇÃO

ENQUANTO

(27)

Lógica de Programação

ESTRUTURAS DE PROGRAMAÇÃO

ENQUANTO

enquanto

n

< 10 faca

n

<-

n

+1

escreva

n

fimenquanto

(28)

Lógica de Programação

ESTRUTURAS DE PROGRAMAÇÃO

REPITA

(29)

Lógica de Programação

ESTRUTURAS DE PROGRAMAÇÃO

REPITA

repita

n

<-

n

+1

escreva

n

ate

n

> 10

(30)

Lógica de Programação

ESTRUTURAS DE PROGRAMAÇÃO

PARA

(31)

Lógica de Programação

ESTRUTURAS DE PROGRAMAÇÃO

PARA

para

n <- 1

até

10

passo

n <- n+1

faca

escreva

n

Referências

Documentos relacionados

Siguiendo esta línea de reflexión, en este estudio se encontró que el grupo de brasileñas y colombianas quienes cuentan con mejores ni- veles educativos que las peruanas tienen

O score de Framingham que estima o risco absoluto de um indivíduo desenvolver em dez anos DAC primária, clinicamente manifesta, utiliza variáveis clínicas e laboratoriais

Compreender os principais algoritmos sobre cadeias de caracteres e vetores de cadeias de caracteres.. Saber utilizar bibliotecas que implementam essas estruturas de dados e

De acordo com o Consed (2011), o cursista deve ter em mente os pressupostos básicos que sustentam a formulação do Progestão, tanto do ponto de vista do gerenciamento

Após 90 dias da semeadura (primeiro subcultivo), protocormos com um par de folíolos foram selecionadas visualmente, mantendo um padrão de altura de cerca de dois milímetros

A proporçáo de indivíduos que declaram considerar a hipótese de vir a trabalhar no estrangeiro no futuro é maior entle os jovens e jovens adultos do que

Realizar a manipulação, o armazenamento e o processamento dessa massa enorme de dados utilizando os bancos de dados relacionais se mostrou ineficiente, pois o

Uma proposição simples tem a tabela verdade formada por duas linhas, pois só pode ter dois valores verdade possíveis: verdadeiro ou falso. Se a proposição for composta