SlideShare uma empresa Scribd logo
1 de 63
Baixar para ler offline
+




    Programação
    Estruturada em JAVA
    Profa. Ivna Valença
    ivnavalenca@gmail.com
+                                                                    2

    Comandos básicos

    n    Ler número do teclado.

    n    Escrever no vídeo.

    n    (+) soma quem está na esquerda com quem está na direita.

    n    <- joga quem está na direita para a área de memória.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                         3

    Variável

    n    Programas usam áreas de memória para guardar dados.

    n    Cada área de memória que um programa vai usar está
          associada a um dado que o programa tem que tratar, e é
          chamada de “variável”, e tem que ter um identificador (letra,
          nome) determinado pelo programador.

    n    Área de memória = sequência de bits




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                       4

    Variável

    n    Os dados são representados por sequências distintas de bits
          onde cada sequência de “N” bits representa uma informação
          do mundo real, seguindo combinações.

    n    Exemplos: computador “simples”

    n    Números inteiros: N = 3

    n    23 possibilidades




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                          5

    Variável

       Conversão 1                           Conversão 2

       000 = 0                               000 = 0

       001 = 1                               001 = 1

       010 = 2                               010 = 2

       011 = 3                               011 = 3

       100 = – 4                             100 = 4

       101 = – 3                             101 = 5

       110 = – 2                             110 = 6

       111 = – 1                             111 = 7


Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                    6

    Variável

    n    São definidas por identificadores cujos nomes têm regras
          de formação específicas.

    n    Uma variável ocupa espaço em memória.

    n    A quantidade de memória que ela ocupa é função da
          natureza, que representa o tipo do dado armazenado e os
          valores possíveis a serem armazenados.

    n    De uma maneira geral, quando se usa o sistema de
          armazenamento mais simples, em “N” bits, é possível
          armazenar 2n valores distintos.



Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                      7

    Tipo de variável

    n    O tipo da variável está associado ao tipo de dado que ela
          representa e ao tamanho que ela ocupa (em bits).

    n    As linguagens de programação disponibilizam diversos tipos
          que podem ser associados às variáveis de um programa.

    n    As linguagens de programação possuem três formas
          básicas para representar dados em memória (em variável).
          n    Inteiro: 8, 16, 32, 64
          n    Real: 32, 64
          n    Caractere: 16
          n    Conjunto de caracteres: 16xN*



Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                          8

    Representação de números
    inteiros
    n    Normalmente, as linguagens permitem que se trabalhe com
          inteiros em 8,16, 32 e 64 bits.

    n    Dentre as combinações possíveis de valores, tem-se:
          n    metade das combinações para números negativos.
          n    uma combinação para zero.
          n    metade das combinações menos um para números maiores que
                zero.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                      9

    Representação de números
    inteiros
    n    Exemplo: 8 bits

    n    28 = 256
          n    28/2 = 28-1 = 27 = 128 números negativos (-128 a -1)
          n    1 número zero (0)
          n    28/2 – 1 = 127 números positivos (1 a 127)

    n    Conclusão: com 8 bits, representamos números inteiros de
          -128 a 127, (-28-1) a (28-1 – 1).




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                    10

    Representação de números
    inteiros
    n    De uma maneira geral tem-se, para N bits:
          n    2n-1 números negativos
          n    1 zero
          n    2n-1 – 1 números positivos

    n    Com N bits, representamos números inteiros de:
          n    (– 2n-1) a (2n-1 – 1)

    n    Nesta forma de representação, números positivos e o zero
          são representados por sequências de bits começando com 0
          (zero), e números negativos são representados por
          sequências de bits começando com 1.


Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                    11

    Representação de números reais

    n    As linguagens usam normalmente 32 ou 64 bits. Os números
          reais são representados da seguinte forma:
          n    M x 10c

    n    Um pedaço do bit é reservado para representar M e
          outro pedaço é reservado para representar C.

    n    As representações de M e C seguem o padrão de
          representação dos inteiros.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                  12

    Representação de números reais

    n    Exemplo: 32 bits
          n    M – 24 bits
          n    C – 8 bits

    n    M – vai de -223 a 223 – 1

    n    C – vai de -27 a 27 – 1 = 128 a 127

    n    Maior número possível: (223-1) x 10127




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                13

    Representação de números reais

    n    Exemplo de como representar um número real com parte
          decimal:
          n    2,1 = 21 x 10-1
          n    M = 21 => 00000000000000000000000000010101
          n    C = -1 => 11111111




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                            14

    Representação de caracteres

    n    Convenções que relacionam caracteres de alfabetos
          (ocidentais, orientais e arábicos) a sequência distinta de bits.

    n    Cada conjunto de caracteres, x sequência de bits forma um
          código de representação de caracteres.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                 15

    Representação de caracteres

    n    Exemplo de um “código hipotético”:

    n    Código com 3 bits = 23 = 8 caracteres
          n    a – 000 = 0 A – 100 = 4
          n    b – 001 = 1 B – 101 = 5
          n    c – 010 = 2 C – 110 = 6
          n    d – 011 = 3 D – 111 = 7




Profa Ivna Valença - ivnavalenca@gmail.com
+                                            16

    Representação de caracteres

    n    Códigos usados atualmente:
          n  ASCI – 8 bits

          n    UNICODE – 16 bits
          n    UNICODE estendido– 32 bits
          n    EBCDIC – mainframe
          n    P1 – ASC
          n    P2 – UNICODE




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                     17

    Conjunto de caracteres

    n    Uma sequência de variáveis do tipo caractere.

    n    A quantidade de bits ocupados por um conjunto de
          caracteres é igual à quantidade de caracteres que compõem
          o conjunto vezes a quantidade de bits que representam um
          caractere.

    n    Exemplo: conjunto caracteres: “ANDRE” é 16 x 5 = 80 bits.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                     18

    Variável

    n    Para se usar uma variável em um programa, devemos definir
          o seu tipo e declarar no programa que ela será do tipo
          definido e terá um identificador.

    n    Dessa forma, o computador é capaz de alocar o espaço
          necessário na memória.

    n    Exemplo:




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                   19

    Processamento

    n    Na hora em que um programa é “traduzido” para linguagem
          de máquina pelo compilador, o mesmo precisa saber
          distinguir:
          n    Variável;
          n    Tipo de variável;
          n    Instruções;
          n    Operadores (aritméticos e lógicos);
          n    Outros elementos de linguagem de comparação.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                                 20

    Linguagem de Programação (LP)

    n    Para que não haja possibilidade de “dupla interpretação” de
          uma linha de código pelo compilador, toda linguagem de
          programação possui:
          n    Palavra reservada: é qualquer palavra que tenha um sentido
                de instrução para a linguagem, e que não pode ser usada como
                um identificador (nome da variável). As palavras reservadas de
                uma linguagem são pré-definidas.
          n    Simbologia para alguns operadores: operadores aritméticos
                (operações básicas), lógicas e de comparação têm símbolos
                próprios e únicos.
          n    Regras para formação dos nomes de variáveis: existem restrições
                quanto aos nomes de variáveis.



Profa Ivna Valença - ivnavalenca@gmail.com
+                                            21

    Recursos básicos de LP (JAVA)

    n    Tipos básicos (primitivos)

    n    Tipos numéricos com sinal




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                    22

    Recursos básicos de LP (JAVA)

    n    Tipos básicos (primitivos)

    n    Tipo numérico sem sinal (na verdade representa um código
          Unicode de um caractere)




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                     23

    Recursos básicos de LP (JAVA)

    n    Tipos básicos (primitivos)

    n    Tipo Lógico




    n    Valores possíveis, as palavras reservadas: true ou false.



Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                      24

    Recursos básicos de LP (JAVA)

    n    Tipo String (não é primitivo)

    n    Sequência de caracteres.

    n    Tamanho: 16xN bits, onde N é a quantidade de caracteres da
          sequência. O tamanho pode variar com o conteúdo de
          uma variável do tipo String.

    n    Valores possíveis: Qualquer combinação de caracteres
          unicode. Com Strings, é possível representar textos.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                            25

    Operadores Aritméticos



    n    ( + ) à soma

    n    ( - ) à subtração

    n    ( * ) à produto

    n    ( / ) à divisão

    n    (%) à resto da divisão




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                  26

    Operadores Aritméticos

    n    Soma: 2+3 à (2+3 = 5)

    n    Subtração: 4 – 5 à (4-5 = - 1)

    n    Produto: 6 * 8 à (6 * 8 = 24)

    n    Divisão: 8/4 à (8/4 = 2)

    n    Resto da divisão: 8%3 = 2



    Observação: a divisão não é “trivial“. Depende dos tipos dos
    operandos.

Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                              27

    Variável

    n    Declaração = Tipo, identificadores.

    n    Inicialização = Atribuição de um valor inicial à variável. Este
          valor pode ser:
          I.      Uma outra variável do mesmo tipo ou de um tipo compatível.
          II.     Uma expressão do mesmo tipo compatível.
          III.    Uma constante do mesmo tipo ou de um tipo compatível.

    n    Na verdade, é possível realizar atribuições às variáveis
          sob as condições citadas em qualquer momento no
          programa, e não apenas na inicialização.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                       28

    Variável

    n    Atribuição: é a operação de “jogar” em uma variável
          qualquer um dos três elementos I, II ou III. O operador de
          atribuição em Java é o sinal de igual (=).

    n    Atenção: = = em Java significa o sinal de comparação de
          igualdade. Para saber se duas expressões são iguais, usamos
          = =.

    n    Expressão: é qualquer comando ou sequencia de
          operações (envolvendo comandos, variáveis, constantes e
          operadores) que produz um resultado de um determinado
          tipo.



Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                      29

    Variável

    n    Constante: É qualquer valor literal usado em um programa.
          Toda constante possui como variável, um tipo e demanda
          área de memória para seu armazenamento.

    n    Em Java, cada tipo prevê uma forma particular para
          representação de suas constantes.

    n    Constantes:
          n    2 (Constante inteira)
          n    2.0 (Constante real)
          n    ‘c’ (Constante do tipo caractere)
          n    “Ivna” (Constantes do tipo sequencial de caracteres)



Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                         30

    Variável

    n    Atenção: Embora muitas constantes sejam iguais numericamente,
          elas não são iguais nas suas representações internas.

    n    Exemplo: 2 e 2.0




    n    Mesmo que uma constante “caiba” numericamente em uma
          variável, ela não pode ser do tipo compatível com o tipo da
          variável.



Profa Ivna Valença - ivnavalenca@gmail.com
+                                            31

    Representação das Constantes nos
    tipos básicos do Java




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                          32

    Representação das Constantes nos
    tipos básicos do Java
    n    Compatibilidade de Tipos (Quem "cabe" em quem)




    n    Exemplos:
          n    int a = 2;       Pode
          n    float h = 2.3;   Não pode




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                          33

    Representação das Constantes nos
    tipos básicos do Java
    n    Exemplos:
          n    short s = 3
          n    int a = s
          n    double d = 2.5 f
          n    float x = d

    n    Em todos os casos que "não pode", o compilador marca a
          linha com um erro.

    n    O compilador checa ainda se o valor atribuído a uma
          variável está dentro da faixa de valores possíveis para o tipo
          da variável.


Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                       34

    Expressões

    n    Exemplos:
          n    ( a + 2 ) * 3 - 4.0

    n    int soma = a + b;

    n    Como toda expressão produz resultados, esta tem seu tipo.
          n    Resultado → Tipo

    n    Como determinar o tipo do resultado de uma expressão?

    n    Exemplo: Se somarmos um int a um float, o resultado será de
          que tipo?



Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                   35

    Promoção Aritmética

    n    O tipo de uma expressão é o mesmo do operando envolvido
          na expressão que possui tipo mais “largo”, ou de maior
          capacidade.

    n    Exercício: Determine os tipos das expressões:
          n    int a=3;
          n    float x=2.5F;
          n    a * x + 2.4 – 6 → double
          n    I F D        I

    n    (menos capacidade) byte → short → int → long → float →
          double (mais capacidade)


Profa Ivna Valença - ivnavalenca@gmail.com
+                                            36

    Promoção Aritmética

    n    Exemplo 1:
          n    long z=4;
          n    byte b=5;
          n    8L/z + b*4 – 6→

    n    Exemplo 2:
          n    short s=6;
          n    long d=8L;
          n    5.4F + s/d - 38%s →




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                    37

    Promoção Aritmética

    n    Por que “promoção aritmética”?

    n    As linguagens, antes de processarem uma expressão,
          convertem operandos de tipo menores para valores de tipo
          maiores.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                            38

    Divisão inteira e divisão real

    int x=3;

    float z=4;

    x/z=3/4.0F = 0,75F float

    I F

    3.0/2=1.5 double

     D I




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                      39

    Divisão inteira e divisão real

    n    Quando pelo menos um dos operandos é um tipo real (float
          ou double). A divisão se processa normalmente.

    n    Quando os dois operandos são de tipo inteiros, a divisão é
          inteira. Trunca-se a parte decimal.
          n    Tipos inteiros: byte, short, int, long




Profa Ivna Valença - ivnavalenca@gmail.com
+                                            40

    Divisão inteira e divisão real

    n    Exemplo:

    int x=3;

    long z=4;

    x/z=3/4L = 0,75L=0L, desconsidera 75.

    I L

    3/2=1.5=1, desconsidera 5.

    I I



Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                 41

    Divisão inteira e divisão real

    n    Exemplos: Quais os valores e tipos das divisões dadas
          abaixo:

    int a=3;

    short z=6;

    a/z = ?

    a/z → 3/6=0,5 = 0, desconsidera 5.

    IS




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                 42

    Divisão inteira e divisão real

    n    Exemplos: Quais os valores e tipos das divisões dadas
          abaixo:

    int a=3;

    a/2 = ?

    a/2 → 3/2=1,5=1, desconsidera 5.

    II




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                 43

    Divisão inteira e divisão real

    n    Exemplos: Quais os valores e tipos das divisões dadas
          abaixo:

    int a=3;

    short z=6;

    z/4 = ?

    z/4.0F → 6/4.0F=1.5F

    S F




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                 44

    Divisão inteira e divisão real

    n    Exemplos: Quais os valores e tipos das divisões dadas
          abaixo:

    int a=3;

    (a+3.0)/10 = ?

    (a+3.0)/10 → (3+3.0)/10→ (3.0+3.0)/10→ 6.0/10=0.6

                             I     D              D   I




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                     45

    Divisão inteira e divisão real

    n    Exemplos: Quais os valores e tipos das divisões dadas
          abaixo:

    int a=3;

    short z=6;

    (a-1L)/z= ?

    (a-1L)/z→ (3L-1L)/z→ 2L/z→ 2L/6=0,333L=0L

      I L                                    L I   desconsidera 333




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                             46

    Expressões Aritméticas
    Matemáticas e Computacionais
    n    Vamos usar os operadores aritméticos básicos e as regras de
          promoção aritméticas e de divisão para montar e resolver
          expressões aritméticas.

    n    Montar expressões aritméticas:
          n    Expressões aritméticas computacionais têm formas diferentes
                das expressões aritméticas matemáticas.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                      47

    Expressões Aritméticas
    Matemáticas e Computacionais
    n    Dadas as formulas matemáticas, escrever as mesmas em
          aritméticas computacionais. Considere as variáveis do tipo
          real (double).




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                  48

    Expressões Aritméticas
    Matemáticas e Computacionais
    n    Comandos de exponenciação em JAVA: Math.pow(b,e), onde
          “b”=base e “e”=exponente.

    n    Usando comandos de exponenciação.

    (2*a+ b*c)/(Math.pow(x,2))+ a/(b−1)




Profa Ivna Valença - ivnavalenca@gmail.com
+                                            49

    Resolvendo mais expressões

    n    Resto da divisão

    n    Raiz de n




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                      50

    Resolver expressões aritméticas

    n    Observar os tipos de operandos para realizar promoção
          aritmética, fazer as promoções, fazer as promoções para
          cada sub-expressão.

    n    Lembrar da regra de divisão de inteiros (byte, short, int,
          long)




Profa Ivna Valença - ivnavalenca@gmail.com
+                                            51

    Resolver expressões aritméticas

    int a = 3;

    float x = 4;

    (x*a)/(x+1)-a%2+a/6




Profa Ivna Valença - ivnavalenca@gmail.com
+                                            52

    Resolver expressões aritméticas

    long z = 8;

    int a = 4;

    Double d = 2;

    (d/a+a/z)*(z/16.0F+3%(a+1))




Profa Ivna Valença - ivnavalenca@gmail.com
+                                               53

    Resolver expressões aritméticas

    short s = 3;

    float x = 4.5F;

    long y = 4;

    ((s/2-6/y)/(Math.pow((y+s),2)-1))+x*y-y%s




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                   54

    Resolver expressões aritméticas

    n    Quando se calcula uma expressão aritmética, deve-se
          determinar o tipo e o valor da mesma.

    n    Os comandos Math.pow e Math.sqrt retornam valores do
          tipo double, independente dos tipos dos seus operandos.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                  55

    Operadores de comparação

    n    São operadores que, quando aplicados a dois operandos,
          resultam em um valor lógico: true ou false. Têm seus
          correspondentes na matemática.

    == → igual a → =

    != → diferente de → ≠

    > → maior→ >

    < → menor → <

    >= → maior ou igual → ≥

    <= → menor ou igual→ ≤


Profa Ivna Valença - ivnavalenca@gmail.com
+                                            56

    Operadores de comparação

    n    Exemplo:

    int a = 3;

    long b = 3L;

    double c = 4.5;

    a == 3 →

    a == b →

    c != 4.5F →

    a > 10 →

Profa Ivna Valença - ivnavalenca@gmail.com
+                                            57

    Operadores de comparação

    n    Exemplo:

    int a = 3;

    long b = 3L;

    double c = 4.5;

    c < = 4.5 →

    b>2→

    b > = -12 →

    2 == 2.0 →


Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                     58

    Operadores de comparação

    n    Observações: Para números e variáveis numéricas, os
          operadores de comparação realizam apenas comparações
          de valores, não levando em consideração os tipos dos
          operandos.

    n    Não usar == para comparar cadeias de caracteres (string).
          Para comparar duas strings, usar o comando equals, que
          volta true ou false.




Profa Ivna Valença - ivnavalenca@gmail.com
+                                            59

    Operadores de comparação

    n    Exemplo :

    String a = “EDDIE”;

    String b = “EULER”;

    String c = “EULER”;

    a.equals(b) →

    a.equals(c) →

    b.equals(c) →

    a.equals(“EDDIE”) →

    “ED”.equals(“xyz”) →


Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                   60

    Operadores lógicos

    n    Realizam operações de conjunção, disjunção, negação e
          disjunção exclusiva em expressões lógicas, em variáveis
          lógicas e em constantes lógicas.
          n    && (e)
          n    || (ou)




Profa Ivna Valença - ivnavalenca@gmail.com
+                                                                   61

    Expressões lógicas

    n    São formadas por operadores de comparação, operadores
          lógicos, variáveis e constantes, e resultam em um valor
          lógico (true ou false).




Profa Ivna Valença - ivnavalenca@gmail.com
+                                            62

    Expressões lógicas

    n    Exemplo 1:

    int a=3;

    int b=4;

    (a>b) || ((a ==3) && ! (b!=0))

    (3>4) || ((3==3) && ! (4!=0))

    F || (V && !V)

    F || (V && F)

    F || F

    F


Profa Ivna Valença - ivnavalenca@gmail.com
+                                            63

    Expressões lógicas

    n    Exemplo 2:

    int x=4;

    int z=8;

    (z>=8) && !((x!=4) || false)

    (8>=8) && !((4!=4) || F)

    V && ! (F || F)

    V && !F

    V && V

    V


Profa Ivna Valença - ivnavalenca@gmail.com

Mais conteúdo relacionado

Mais de Ivna Valença

Mais de Ivna Valença (13)

Phyton
PhytonPhyton
Phyton
 
Ruby
RubyRuby
Ruby
 
Pascal
PascalPascal
Pascal
 
Seminário: Lisp
Seminário: LispSeminário: Lisp
Seminário: Lisp
 
Seminário: C++
Seminário: C++Seminário: C++
Seminário: C++
 
Seminário: C#
Seminário: C#Seminário: C#
Seminário: C#
 
Seminário: COBOL
Seminário: COBOLSeminário: COBOL
Seminário: COBOL
 
Seminário: C
Seminário: CSeminário: C
Seminário: C
 
Seminário: PHP
Seminário: PHPSeminário: PHP
Seminário: PHP
 
Seminário: Lua
Seminário: LuaSeminário: Lua
Seminário: Lua
 
Seminário: JavaScript
Seminário: JavaScriptSeminário: JavaScript
Seminário: JavaScript
 
Seminário: Delphi
Seminário: DelphiSeminário: Delphi
Seminário: Delphi
 
Aula Inaugural - Programação Imperativa
Aula Inaugural - Programação ImperativaAula Inaugural - Programação Imperativa
Aula Inaugural - Programação Imperativa
 

Último

Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfmaurocesarpaesalmeid
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....LuizHenriquedeAlmeid6
 
Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxLusGlissonGud
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfFrancisco Márcio Bezerra Oliveira
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxLuizHenriquedeAlmeid6
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéisines09cachapa
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números Mary Alvarenga
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTailsonSantos1
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfHELENO FAVACHO
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdfLeloIurk1
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfHELENO FAVACHO
 

Último (20)

Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
 
Apresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptxApresentação em Powerpoint do Bioma Catinga.pptx
Apresentação em Powerpoint do Bioma Catinga.pptx
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptxSlides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
Slides Lição 6, CPAD, As Nossas Armas Espirituais, 2Tr24.pptx
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéis
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptxTeoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
Teoria heterotrófica e autotrófica dos primeiros seres vivos..pptx
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 

Aula 02 - Programação Estruturada em JAVA

  • 1. + Programação Estruturada em JAVA Profa. Ivna Valença ivnavalenca@gmail.com
  • 2. + 2 Comandos básicos n  Ler número do teclado. n  Escrever no vídeo. n  (+) soma quem está na esquerda com quem está na direita. n  <- joga quem está na direita para a área de memória. Profa Ivna Valença - ivnavalenca@gmail.com
  • 3. + 3 Variável n  Programas usam áreas de memória para guardar dados. n  Cada área de memória que um programa vai usar está associada a um dado que o programa tem que tratar, e é chamada de “variável”, e tem que ter um identificador (letra, nome) determinado pelo programador. n  Área de memória = sequência de bits Profa Ivna Valença - ivnavalenca@gmail.com
  • 4. + 4 Variável n  Os dados são representados por sequências distintas de bits onde cada sequência de “N” bits representa uma informação do mundo real, seguindo combinações. n  Exemplos: computador “simples” n  Números inteiros: N = 3 n  23 possibilidades Profa Ivna Valença - ivnavalenca@gmail.com
  • 5. + 5 Variável Conversão 1 Conversão 2 000 = 0 000 = 0 001 = 1 001 = 1 010 = 2 010 = 2 011 = 3 011 = 3 100 = – 4 100 = 4 101 = – 3 101 = 5 110 = – 2 110 = 6 111 = – 1 111 = 7 Profa Ivna Valença - ivnavalenca@gmail.com
  • 6. + 6 Variável n  São definidas por identificadores cujos nomes têm regras de formação específicas. n  Uma variável ocupa espaço em memória. n  A quantidade de memória que ela ocupa é função da natureza, que representa o tipo do dado armazenado e os valores possíveis a serem armazenados. n  De uma maneira geral, quando se usa o sistema de armazenamento mais simples, em “N” bits, é possível armazenar 2n valores distintos. Profa Ivna Valença - ivnavalenca@gmail.com
  • 7. + 7 Tipo de variável n  O tipo da variável está associado ao tipo de dado que ela representa e ao tamanho que ela ocupa (em bits). n  As linguagens de programação disponibilizam diversos tipos que podem ser associados às variáveis de um programa. n  As linguagens de programação possuem três formas básicas para representar dados em memória (em variável). n  Inteiro: 8, 16, 32, 64 n  Real: 32, 64 n  Caractere: 16 n  Conjunto de caracteres: 16xN* Profa Ivna Valença - ivnavalenca@gmail.com
  • 8. + 8 Representação de números inteiros n  Normalmente, as linguagens permitem que se trabalhe com inteiros em 8,16, 32 e 64 bits. n  Dentre as combinações possíveis de valores, tem-se: n  metade das combinações para números negativos. n  uma combinação para zero. n  metade das combinações menos um para números maiores que zero. Profa Ivna Valença - ivnavalenca@gmail.com
  • 9. + 9 Representação de números inteiros n  Exemplo: 8 bits n  28 = 256 n  28/2 = 28-1 = 27 = 128 números negativos (-128 a -1) n  1 número zero (0) n  28/2 – 1 = 127 números positivos (1 a 127) n  Conclusão: com 8 bits, representamos números inteiros de -128 a 127, (-28-1) a (28-1 – 1). Profa Ivna Valença - ivnavalenca@gmail.com
  • 10. + 10 Representação de números inteiros n  De uma maneira geral tem-se, para N bits: n  2n-1 números negativos n  1 zero n  2n-1 – 1 números positivos n  Com N bits, representamos números inteiros de: n  (– 2n-1) a (2n-1 – 1) n  Nesta forma de representação, números positivos e o zero são representados por sequências de bits começando com 0 (zero), e números negativos são representados por sequências de bits começando com 1. Profa Ivna Valença - ivnavalenca@gmail.com
  • 11. + 11 Representação de números reais n  As linguagens usam normalmente 32 ou 64 bits. Os números reais são representados da seguinte forma: n  M x 10c n  Um pedaço do bit é reservado para representar M e outro pedaço é reservado para representar C. n  As representações de M e C seguem o padrão de representação dos inteiros. Profa Ivna Valença - ivnavalenca@gmail.com
  • 12. + 12 Representação de números reais n  Exemplo: 32 bits n  M – 24 bits n  C – 8 bits n  M – vai de -223 a 223 – 1 n  C – vai de -27 a 27 – 1 = 128 a 127 n  Maior número possível: (223-1) x 10127 Profa Ivna Valença - ivnavalenca@gmail.com
  • 13. + 13 Representação de números reais n  Exemplo de como representar um número real com parte decimal: n  2,1 = 21 x 10-1 n  M = 21 => 00000000000000000000000000010101 n  C = -1 => 11111111 Profa Ivna Valença - ivnavalenca@gmail.com
  • 14. + 14 Representação de caracteres n  Convenções que relacionam caracteres de alfabetos (ocidentais, orientais e arábicos) a sequência distinta de bits. n  Cada conjunto de caracteres, x sequência de bits forma um código de representação de caracteres. Profa Ivna Valença - ivnavalenca@gmail.com
  • 15. + 15 Representação de caracteres n  Exemplo de um “código hipotético”: n  Código com 3 bits = 23 = 8 caracteres n  a – 000 = 0 A – 100 = 4 n  b – 001 = 1 B – 101 = 5 n  c – 010 = 2 C – 110 = 6 n  d – 011 = 3 D – 111 = 7 Profa Ivna Valença - ivnavalenca@gmail.com
  • 16. + 16 Representação de caracteres n  Códigos usados atualmente: n  ASCI – 8 bits n  UNICODE – 16 bits n  UNICODE estendido– 32 bits n  EBCDIC – mainframe n  P1 – ASC n  P2 – UNICODE Profa Ivna Valença - ivnavalenca@gmail.com
  • 17. + 17 Conjunto de caracteres n  Uma sequência de variáveis do tipo caractere. n  A quantidade de bits ocupados por um conjunto de caracteres é igual à quantidade de caracteres que compõem o conjunto vezes a quantidade de bits que representam um caractere. n  Exemplo: conjunto caracteres: “ANDRE” é 16 x 5 = 80 bits. Profa Ivna Valença - ivnavalenca@gmail.com
  • 18. + 18 Variável n  Para se usar uma variável em um programa, devemos definir o seu tipo e declarar no programa que ela será do tipo definido e terá um identificador. n  Dessa forma, o computador é capaz de alocar o espaço necessário na memória. n  Exemplo: Profa Ivna Valença - ivnavalenca@gmail.com
  • 19. + 19 Processamento n  Na hora em que um programa é “traduzido” para linguagem de máquina pelo compilador, o mesmo precisa saber distinguir: n  Variável; n  Tipo de variável; n  Instruções; n  Operadores (aritméticos e lógicos); n  Outros elementos de linguagem de comparação. Profa Ivna Valença - ivnavalenca@gmail.com
  • 20. + 20 Linguagem de Programação (LP) n  Para que não haja possibilidade de “dupla interpretação” de uma linha de código pelo compilador, toda linguagem de programação possui: n  Palavra reservada: é qualquer palavra que tenha um sentido de instrução para a linguagem, e que não pode ser usada como um identificador (nome da variável). As palavras reservadas de uma linguagem são pré-definidas. n  Simbologia para alguns operadores: operadores aritméticos (operações básicas), lógicas e de comparação têm símbolos próprios e únicos. n  Regras para formação dos nomes de variáveis: existem restrições quanto aos nomes de variáveis. Profa Ivna Valença - ivnavalenca@gmail.com
  • 21. + 21 Recursos básicos de LP (JAVA) n  Tipos básicos (primitivos) n  Tipos numéricos com sinal Profa Ivna Valença - ivnavalenca@gmail.com
  • 22. + 22 Recursos básicos de LP (JAVA) n  Tipos básicos (primitivos) n  Tipo numérico sem sinal (na verdade representa um código Unicode de um caractere) Profa Ivna Valença - ivnavalenca@gmail.com
  • 23. + 23 Recursos básicos de LP (JAVA) n  Tipos básicos (primitivos) n  Tipo Lógico n  Valores possíveis, as palavras reservadas: true ou false. Profa Ivna Valença - ivnavalenca@gmail.com
  • 24. + 24 Recursos básicos de LP (JAVA) n  Tipo String (não é primitivo) n  Sequência de caracteres. n  Tamanho: 16xN bits, onde N é a quantidade de caracteres da sequência. O tamanho pode variar com o conteúdo de uma variável do tipo String. n  Valores possíveis: Qualquer combinação de caracteres unicode. Com Strings, é possível representar textos. Profa Ivna Valença - ivnavalenca@gmail.com
  • 25. + 25 Operadores Aritméticos n  ( + ) à soma n  ( - ) à subtração n  ( * ) à produto n  ( / ) à divisão n  (%) à resto da divisão Profa Ivna Valença - ivnavalenca@gmail.com
  • 26. + 26 Operadores Aritméticos n  Soma: 2+3 à (2+3 = 5) n  Subtração: 4 – 5 à (4-5 = - 1) n  Produto: 6 * 8 à (6 * 8 = 24) n  Divisão: 8/4 à (8/4 = 2) n  Resto da divisão: 8%3 = 2 Observação: a divisão não é “trivial“. Depende dos tipos dos operandos. Profa Ivna Valença - ivnavalenca@gmail.com
  • 27. + 27 Variável n  Declaração = Tipo, identificadores. n  Inicialização = Atribuição de um valor inicial à variável. Este valor pode ser: I.  Uma outra variável do mesmo tipo ou de um tipo compatível. II.  Uma expressão do mesmo tipo compatível. III.  Uma constante do mesmo tipo ou de um tipo compatível. n  Na verdade, é possível realizar atribuições às variáveis sob as condições citadas em qualquer momento no programa, e não apenas na inicialização. Profa Ivna Valença - ivnavalenca@gmail.com
  • 28. + 28 Variável n  Atribuição: é a operação de “jogar” em uma variável qualquer um dos três elementos I, II ou III. O operador de atribuição em Java é o sinal de igual (=). n  Atenção: = = em Java significa o sinal de comparação de igualdade. Para saber se duas expressões são iguais, usamos = =. n  Expressão: é qualquer comando ou sequencia de operações (envolvendo comandos, variáveis, constantes e operadores) que produz um resultado de um determinado tipo. Profa Ivna Valença - ivnavalenca@gmail.com
  • 29. + 29 Variável n  Constante: É qualquer valor literal usado em um programa. Toda constante possui como variável, um tipo e demanda área de memória para seu armazenamento. n  Em Java, cada tipo prevê uma forma particular para representação de suas constantes. n  Constantes: n  2 (Constante inteira) n  2.0 (Constante real) n  ‘c’ (Constante do tipo caractere) n  “Ivna” (Constantes do tipo sequencial de caracteres) Profa Ivna Valença - ivnavalenca@gmail.com
  • 30. + 30 Variável n  Atenção: Embora muitas constantes sejam iguais numericamente, elas não são iguais nas suas representações internas. n  Exemplo: 2 e 2.0 n  Mesmo que uma constante “caiba” numericamente em uma variável, ela não pode ser do tipo compatível com o tipo da variável. Profa Ivna Valença - ivnavalenca@gmail.com
  • 31. + 31 Representação das Constantes nos tipos básicos do Java Profa Ivna Valença - ivnavalenca@gmail.com
  • 32. + 32 Representação das Constantes nos tipos básicos do Java n  Compatibilidade de Tipos (Quem "cabe" em quem) n  Exemplos: n  int a = 2; Pode n  float h = 2.3; Não pode Profa Ivna Valença - ivnavalenca@gmail.com
  • 33. + 33 Representação das Constantes nos tipos básicos do Java n  Exemplos: n  short s = 3 n  int a = s n  double d = 2.5 f n  float x = d n  Em todos os casos que "não pode", o compilador marca a linha com um erro. n  O compilador checa ainda se o valor atribuído a uma variável está dentro da faixa de valores possíveis para o tipo da variável. Profa Ivna Valença - ivnavalenca@gmail.com
  • 34. + 34 Expressões n  Exemplos: n  ( a + 2 ) * 3 - 4.0 n  int soma = a + b; n  Como toda expressão produz resultados, esta tem seu tipo. n  Resultado → Tipo n  Como determinar o tipo do resultado de uma expressão? n  Exemplo: Se somarmos um int a um float, o resultado será de que tipo? Profa Ivna Valença - ivnavalenca@gmail.com
  • 35. + 35 Promoção Aritmética n  O tipo de uma expressão é o mesmo do operando envolvido na expressão que possui tipo mais “largo”, ou de maior capacidade. n  Exercício: Determine os tipos das expressões: n  int a=3; n  float x=2.5F; n  a * x + 2.4 – 6 → double n  I F D I n  (menos capacidade) byte → short → int → long → float → double (mais capacidade) Profa Ivna Valença - ivnavalenca@gmail.com
  • 36. + 36 Promoção Aritmética n  Exemplo 1: n  long z=4; n  byte b=5; n  8L/z + b*4 – 6→ n  Exemplo 2: n  short s=6; n  long d=8L; n  5.4F + s/d - 38%s → Profa Ivna Valença - ivnavalenca@gmail.com
  • 37. + 37 Promoção Aritmética n  Por que “promoção aritmética”? n  As linguagens, antes de processarem uma expressão, convertem operandos de tipo menores para valores de tipo maiores. Profa Ivna Valença - ivnavalenca@gmail.com
  • 38. + 38 Divisão inteira e divisão real int x=3; float z=4; x/z=3/4.0F = 0,75F float I F 3.0/2=1.5 double D I Profa Ivna Valença - ivnavalenca@gmail.com
  • 39. + 39 Divisão inteira e divisão real n  Quando pelo menos um dos operandos é um tipo real (float ou double). A divisão se processa normalmente. n  Quando os dois operandos são de tipo inteiros, a divisão é inteira. Trunca-se a parte decimal. n  Tipos inteiros: byte, short, int, long Profa Ivna Valença - ivnavalenca@gmail.com
  • 40. + 40 Divisão inteira e divisão real n  Exemplo: int x=3; long z=4; x/z=3/4L = 0,75L=0L, desconsidera 75. I L 3/2=1.5=1, desconsidera 5. I I Profa Ivna Valença - ivnavalenca@gmail.com
  • 41. + 41 Divisão inteira e divisão real n  Exemplos: Quais os valores e tipos das divisões dadas abaixo: int a=3; short z=6; a/z = ? a/z → 3/6=0,5 = 0, desconsidera 5. IS Profa Ivna Valença - ivnavalenca@gmail.com
  • 42. + 42 Divisão inteira e divisão real n  Exemplos: Quais os valores e tipos das divisões dadas abaixo: int a=3; a/2 = ? a/2 → 3/2=1,5=1, desconsidera 5. II Profa Ivna Valença - ivnavalenca@gmail.com
  • 43. + 43 Divisão inteira e divisão real n  Exemplos: Quais os valores e tipos das divisões dadas abaixo: int a=3; short z=6; z/4 = ? z/4.0F → 6/4.0F=1.5F S F Profa Ivna Valença - ivnavalenca@gmail.com
  • 44. + 44 Divisão inteira e divisão real n  Exemplos: Quais os valores e tipos das divisões dadas abaixo: int a=3; (a+3.0)/10 = ? (a+3.0)/10 → (3+3.0)/10→ (3.0+3.0)/10→ 6.0/10=0.6 I D D I Profa Ivna Valença - ivnavalenca@gmail.com
  • 45. + 45 Divisão inteira e divisão real n  Exemplos: Quais os valores e tipos das divisões dadas abaixo: int a=3; short z=6; (a-1L)/z= ? (a-1L)/z→ (3L-1L)/z→ 2L/z→ 2L/6=0,333L=0L I L L I desconsidera 333 Profa Ivna Valença - ivnavalenca@gmail.com
  • 46. + 46 Expressões Aritméticas Matemáticas e Computacionais n  Vamos usar os operadores aritméticos básicos e as regras de promoção aritméticas e de divisão para montar e resolver expressões aritméticas. n  Montar expressões aritméticas: n  Expressões aritméticas computacionais têm formas diferentes das expressões aritméticas matemáticas. Profa Ivna Valença - ivnavalenca@gmail.com
  • 47. + 47 Expressões Aritméticas Matemáticas e Computacionais n  Dadas as formulas matemáticas, escrever as mesmas em aritméticas computacionais. Considere as variáveis do tipo real (double). Profa Ivna Valença - ivnavalenca@gmail.com
  • 48. + 48 Expressões Aritméticas Matemáticas e Computacionais n  Comandos de exponenciação em JAVA: Math.pow(b,e), onde “b”=base e “e”=exponente. n  Usando comandos de exponenciação. (2*a+ b*c)/(Math.pow(x,2))+ a/(b−1) Profa Ivna Valença - ivnavalenca@gmail.com
  • 49. + 49 Resolvendo mais expressões n  Resto da divisão n  Raiz de n Profa Ivna Valença - ivnavalenca@gmail.com
  • 50. + 50 Resolver expressões aritméticas n  Observar os tipos de operandos para realizar promoção aritmética, fazer as promoções, fazer as promoções para cada sub-expressão. n  Lembrar da regra de divisão de inteiros (byte, short, int, long) Profa Ivna Valença - ivnavalenca@gmail.com
  • 51. + 51 Resolver expressões aritméticas int a = 3; float x = 4; (x*a)/(x+1)-a%2+a/6 Profa Ivna Valença - ivnavalenca@gmail.com
  • 52. + 52 Resolver expressões aritméticas long z = 8; int a = 4; Double d = 2; (d/a+a/z)*(z/16.0F+3%(a+1)) Profa Ivna Valença - ivnavalenca@gmail.com
  • 53. + 53 Resolver expressões aritméticas short s = 3; float x = 4.5F; long y = 4; ((s/2-6/y)/(Math.pow((y+s),2)-1))+x*y-y%s Profa Ivna Valença - ivnavalenca@gmail.com
  • 54. + 54 Resolver expressões aritméticas n  Quando se calcula uma expressão aritmética, deve-se determinar o tipo e o valor da mesma. n  Os comandos Math.pow e Math.sqrt retornam valores do tipo double, independente dos tipos dos seus operandos. Profa Ivna Valença - ivnavalenca@gmail.com
  • 55. + 55 Operadores de comparação n  São operadores que, quando aplicados a dois operandos, resultam em um valor lógico: true ou false. Têm seus correspondentes na matemática. == → igual a → = != → diferente de → ≠ > → maior→ > < → menor → < >= → maior ou igual → ≥ <= → menor ou igual→ ≤ Profa Ivna Valença - ivnavalenca@gmail.com
  • 56. + 56 Operadores de comparação n  Exemplo: int a = 3; long b = 3L; double c = 4.5; a == 3 → a == b → c != 4.5F → a > 10 → Profa Ivna Valença - ivnavalenca@gmail.com
  • 57. + 57 Operadores de comparação n  Exemplo: int a = 3; long b = 3L; double c = 4.5; c < = 4.5 → b>2→ b > = -12 → 2 == 2.0 → Profa Ivna Valença - ivnavalenca@gmail.com
  • 58. + 58 Operadores de comparação n  Observações: Para números e variáveis numéricas, os operadores de comparação realizam apenas comparações de valores, não levando em consideração os tipos dos operandos. n  Não usar == para comparar cadeias de caracteres (string). Para comparar duas strings, usar o comando equals, que volta true ou false. Profa Ivna Valença - ivnavalenca@gmail.com
  • 59. + 59 Operadores de comparação n  Exemplo : String a = “EDDIE”; String b = “EULER”; String c = “EULER”; a.equals(b) → a.equals(c) → b.equals(c) → a.equals(“EDDIE”) → “ED”.equals(“xyz”) → Profa Ivna Valença - ivnavalenca@gmail.com
  • 60. + 60 Operadores lógicos n  Realizam operações de conjunção, disjunção, negação e disjunção exclusiva em expressões lógicas, em variáveis lógicas e em constantes lógicas. n  && (e) n  || (ou) Profa Ivna Valença - ivnavalenca@gmail.com
  • 61. + 61 Expressões lógicas n  São formadas por operadores de comparação, operadores lógicos, variáveis e constantes, e resultam em um valor lógico (true ou false). Profa Ivna Valença - ivnavalenca@gmail.com
  • 62. + 62 Expressões lógicas n  Exemplo 1: int a=3; int b=4; (a>b) || ((a ==3) && ! (b!=0)) (3>4) || ((3==3) && ! (4!=0)) F || (V && !V) F || (V && F) F || F F Profa Ivna Valença - ivnavalenca@gmail.com
  • 63. + 63 Expressões lógicas n  Exemplo 2: int x=4; int z=8; (z>=8) && !((x!=4) || false) (8>=8) && !((4!=4) || F) V && ! (F || F) V && !F V && V V Profa Ivna Valença - ivnavalenca@gmail.com