Curso de Lógica de Programação - Aula 2

Embed Size (px)

Citation preview

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    1/24

    Lógica de Programação

    ADVPL – Aula 2

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    2/24

    Aula de Hoje

    • Tipos de Dados

    • Expressões

    • Exercícios

    2

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    3/24

    Armazenar na memória• Imagine que você e um amigo desejam calcular o algoritmo da média

    !de ca"eça# sem $a%er anotaç&es' Veja os (assos descritos a seguir')' Você di% a (rimeira nota'2' *eu amigo então guarda esse valor na sua memória +umana enquanto

    aguarda a segunda nota',' Você di% a segunda nota'-' *eu amigo guarda o valor da segunda nota em outro local da memória

    di$erente do anterior (ara não so"rescrever .e aca"ar esquecendo/ a(rimeira nota'

    0' 1 seu amigo recu(era os valores das notas em sua memória $a% oclculo da média e coloca o valor encontrado em um terceiro local desua memória'

    3' Você (ergunta4 56ual o valor da média789' 1 seu amigo in$orma o resultado o"tido'•. De $orma similar o com(utador (recisa guardar os dados e instruç&es

    em endereços es(ec:;cos de sua memória durante a e

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    4/24

    >adastro

    ?ota )

    Variáveis de Memória

    10

    ?ota )

    9

    @édia

    @edia .?ota) B ?ota2/C 2

    @emória

    10

    >P

    8

    ?ota 2   8

    ?ota 2

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    5/24

    Variável de Memória• ma varivel (recisa ter um nome .ou identi;cador/ um ti(o de

    dado associado a ela .ti(o da varivel/ e a in$ormação que elaarma%ena'

    • 1 identi;cador serve (ara di$erenciar a varivel das demais (orisso deve ser Enico (ara cada varivel'

    • 1 (rocesso de criação de uma varivel é c+amado de declaração

    da varivel'• As variveis devem ser declaradas no algoritmo antes de serem

    utili%adas (ois a declaração das variveis (ermite que sejareservado um es(aço na memória (ara o dado que vai serarma%enado e utili%ado'

    Durante o curso (ara declararmos uma varivel devemos(roceder da seguinte $orma4•  :

    ou4•  :

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    6/24

    Declaração de Variáveis

    I nota :   numerico

      nome da variável : tipo da variável

    II idade :   numerico

      nome da variável : tipo da variável

    III sexo :   caracter

      nome da variável : tipo da variável

    IV frase :   caracter

      nome da variável : tipo da variável

    V nota1, nota2 :   numerico

      lista de variáveis : tipo da variável

    6

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    7/24

    Expressões e operadores

    • Em algoritmos, uma expressão é uma combinaçãode variáveis, constantes e operadores, e que, umavez avaliada, resulta num valor

    • 1s o(eradores são os s:m"olos es(ec:;cos que

    relacionam as variveis e constantes em uma e

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    8/24

    Expressões aritméticas

    Operador Expressão Exemplos+ Adição a + b, 5 + 7- Subtração 8 – 4, x –

     ! Di"isão #$ ! 4, x ! % &u'tip'icação ( % a, x %

    &od ou ) *esto da di"isão iteira #5)4resu'ta .

    / 0oteciação #/( resu'ta 8.

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    9/24

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    10/24

    Expressões aritméticas $ regras depreced%ncia

    • 1s (arêntesis nos algoritmos sãoutili%ados (ara !modulari%ar# ase

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    11/24

    Expressões aritméticas $ regrasde preced%ncia

    11

    Operador Prioridade%  ! )

    + #- #

    @as não são a(enas os (arêntesis que de;nem as (rioridades dos

    o(eradores' G

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    12/24

    egras de preced%ncia•

    1"serve os e

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    13/24

    egras de preced%ncia

    2' 2 K . , B - / C 2 9•. ?esse caso com os mesmos o(erandos o

    resultado ser di$erente' Veja4

    •. Mesolvemos (rimeiro o que est entre(arêntesis4 , B - 9

    •. A e

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    14/24

    Exerc-cio

    • .valie as seguintes expressões naordem correta e mostre o resultado/

    &0 1 2 3 4 ! ( ! 5 6 )

    ( 75 3 08 6 &9

    )5 3 0 6 &9

    0&9 : ) 1 ; ! 0 6 ( 3 <

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    15/24

    Expressões lógicas

    • As e

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    16/24

    Operadores relacionais

    16

    Operador Descrição Exemplos1 23ua' A 1 , 8 1 8

    6 Dierete 69, 76 5

    6 &aior :ue 6 ;, < 6 861 &aior ou i3ua' A615, 8615 &eor :ue 9, # (

    1 &eor ou i3ua' 1=, #14

    >s operadores re'acioais estabe'ece? co?paração etre dados de:uais:uer tipos u?@ricos, '3icos ou 'iterais.B

    Vejamos alguns e

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    17/24

    Exerc-cio

    • =abendo que a > 2, b > &( e c >), diga se o resultado dasseguintes expressões é

    verdadeiro 7 v 8 ou *also 7 * 8/• 7 8 7a 3 c8 ? b

    • 7 8 b ?> 7a 3 (8

    • 7 8 c > 7b $ a8

    • 7 8 7b 3 a8 @> c

    • 7 8 7c 3 a8 ? b

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    18/24

    'peradores lógicos

    • Além dos o(eradores relacionais as e

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    19/24

    'peradores lógicos

    19

    A N A 1 N A G N ?T1 A

    S S S S V

    S V V S V

    V S V S S

    V V V V S

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    20/24

    'peradores lógicos $Areced%ncia

    • 1s o(eradores lógicos como osaritméticos o"edecem a regras de(recedência'

    • As (rioridades são as seguintes4)' ?T12' G,' 1•. 1s (arêntesis com o(eradores

    lógicos tam"ém $orçam arecedência'

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    21/24

    Exercício

    • =abendo que a > &9, b > 4, c > 5 ed > &(, in*orme se as expressõesabaixo são verdadeiras ou *alsas/

    & 7 8 a ? c e c @> d

    ( 7 8 7a 3 b8 ? (9 ou 7a 3 b8 > 7c3 d8

    ) 7 8 a ?> c e d ?> c0 7 8 não 7a @ d8 e c ? b

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    22/24

    Expressões literais

    • Podemos utili%ar (ara e

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    23/24

    Expressões literais

    •  am"ém (odemos utili%ar o(eradores lógicos comliterais e caracteres' Veja4

    • algoritmo o(eraç&es logicas com caracteresvar

    c d 4 literal$ 4 logicoinicio  c J= casa

      d J= >a*a  $ J= c d  escreva .$/#malgoritmo

  • 8/16/2019 Curso de Lógica de Programação - Aula 2

    24/24

    Até a (ró