poo - aula 01 - conceitos básicos de programação
DESCRIPTION
Aula introdutória à programação em JavaTRANSCRIPT
Programação Orientada a Objetos
Aula 01 – Conceitos básicos de Programação
Fernando Kenji Kamei
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Perguntas iniciais...
2 de 29
O que é um computador?
Qual a diferença entre hardware e software?
Como fazer o computador executar um programa?
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Vamos olhar o nosso dia a dia...
3 de 29
Como resolvemos as nossas atividades do dia a dia? Ex.: estacionar um carro, fazer um bolo
Estacionando um carro passo a passo: Verifica se o carro está ligado Verifica a distância entre os objetos ....
Resolvemos através de uma sequência lógica de passos
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Resolvendo um problema com algoritmos
4 de 29
Entender o problema Planejar logicamente os passos Escrever um programa (programar) Traduzir o programa para a linguagem de
máquina (compilação) Testar o programa
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Mas como posso escrever o algoritmo?
5 de 29
Ele entende português ou inglês falado?
O quê o computador consegue compreender? Linguagem de máquina
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Linguagens de Programação
6 de 29
Precisam ser escritos em uma linguagem de programação que possa ser entendida pelo computador que entendemos e que possa ser traduzida para a
linguagem entendida pelo computador
Existem diversas linguagens de programação Com paradigmas diferentes Sintaxes diferentes Objetivos diferentes
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Linguagens de Programação
7 de 29
Sintaxe vs Semântica
Sintaxe são as palavras de uma língua
Semântica é o significado das palavras e suas combinações
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Linguagens de Programação
8 de 29
Sintaxe vs Semântica
SINTAXE: conjunto de regras de uma linguagem que estabelecem como as palavras e símbolos podem ser utilizados de modo a formar instruções válidas a um programa
SEMÂNTICA: define o significado de uma instrução no programa
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Linguagens de Programação
9 de 29
Sintaxe vs Semântica
SINTAXE: +
SEMÂNTICA: operação aritmética de soma
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Linguagens de Programação
10 de 29
Sintaxe vs Semântica
Um programa pode ser sintaticamente correto, mas não necessariamente logicamente
(semanticamente) correto!
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Linguagens de Programação
11 de 29
Estacionando um carro (baliza) Ligue o carro Acenda uma dinamite Espere que ela exploda Olhe pelo retrovisor Verifique a distância entre os objetos Engate a ré Gire o volante Acelere
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Linguagens de Programação
12 de 29
Entendeu o que é sintaxe e semântica?
Vamos estudar as sintaxes básicas de Java
Mas antes precisamos de alguns conceitos....
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Conceitos básicos de programação
13 de 29
Ler do teclado Calcule Imprima na tela Armazenar valor
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Conceitos básicos de programação
14 de 29
Variáveis Entidade que armazena valores (de um
determinado tipo de dado)
Tipo de dado Representa um grupo de valores
Numéricos (-1, 9, 100, 1982, ...) Textuais (“Java”, “programação”, ...) Lógicos (verdadeiro e falso) ...
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Manipulando variáveis
15 de 29
Considere as variáveis x (numérica) y (lógica)
Armazenar valor Utiliza o comando =
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Expressões
16 de 29
Aritméticas + (soma) - (subtração) *
(multiplicação) / (divisão)
Lógicas < (menor que) > (maior que) <= (menor igual) >= (maior igual) == (igualdade) != (diferente)
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Exemplos de expressões
17 de 29
20 + 88 > 10“Java”(a == b && c > d)((10*2)+(1+8))
Numérica Lógica Textual Lógica Numérica
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Declaração de variáveis e atribuição de valores
18 de 29
real saldo = 928.4 texto nome =
“casa” inteiro = 99 inteiro = 10,2 lógico x = 2 > 3 texto cidade =
true
✔✔
✔
✔
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Estruturas de Controle
19 de 29
Sequência Comandos executados um após o outro
Passos simples de uma receita de bolo
Condicional ou Seleção Escolhe (seleciona) entre dois possíveis caminhos
Repetição Executa um conjunto de instruções enquanto uma
condição for verdadeira Acrescentar água enquanto não dissolver a farinha
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Estruturas de Controle
20 de 29
Exemplo de Sequência
inteiro x, yleia xy = x * 2imprima y
O que será impresso se atribuir à x o valor de 4?
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Estruturas de Controle
21 de 29
Exemplo de Condicional
inteiro idadeleia idade
se (idade > 17) então imprima “maior de idade”senão imprima “menor de idade”
condição
O que será impresso se atribuir à idade o valor de 17 ?
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Estruturas de Controle
22 de 29
Exemplo de Repetição
inteiro xleia xenquanto (x>0) então imprima x x = (x – 1)
O que será impresso se atribuir à x o valor de 5?
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Vamos praticar?
23 de 29
Exercício 01:
Escreva um algoritmo que: Leia dois valores inteiros do teclado Calcule a média desses números Imprimir na tela a média
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Vamos praticar?
24 de 29
Exercício 01 (Solução):
inteiro valor1inteiro valor 2real medialeia valor1leia valor2media = (valor1 + valor2) / 2imprima media
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Vamos praticar?
25 de 29
Exercício 02:
Escreva um algoritmo que: Leia dois valores inteiros do teclado Imprimir na tela os valores em ordem
crescente
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Vamos praticar?
26 de 29
Exercício 02 (Solução):
inteiro x, yleia xleia yse (x > y) então imprima y, xsenão imprima x, y
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Vamos praticar?
27 de 29
Exercício 03:
Escreva um algoritmo que: Faça um programa que sempre fique
solicitando um valor inteiro e imprima esse valor, até que o usuário digite um valor negativo.
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Vamos praticar?
28 de 29
Exercício 03 (Solução):
inteiro xx = 0enquanto (x > 0) faça escreva x leia x
Programação Orientada a Objetos | Prof. Fernando Kenji Kamei
Perguntas?
29 de 29
Não esqueçam de ler os slides
da próxima aula