• Nenhum resultado encontrado

Tipos de dados, Operadores, Variáveis e ES

N/A
N/A
Protected

Academic year: 2019

Share "Tipos de dados, Operadores, Variáveis e ES"

Copied!
55
0
0

Texto

(1)

Tipos de dados, Operadores,

Variáveis e E/S

Bruno Cartaxo

sites.google.com/site/brunocartaxo bruno.cartaxo@olinda.ifpe.edu.br

(2)

Tópicos a serem discutidos na disciplina

• Introdução a computadores e algoritmos

Tipos de dados, operadores, variáveis, E/S

• Verificação manual de algoritmos e modularização

• Estruturas de decisão: comandos SE e CASO

• Estruturas de repetição: comandos ENQUANTO e PARA

• Vetores

• Introdução à Java

• Trabalhando com strings em Java

• Estruturas de decisão em Java

• Estruturas de repetição em Java

(3)

Sintaxe e Semântica

• Antes de entrar em maiores detalhes sobre a construção de algoritmos é necessário entender a diferença entre sintaxe e semântica.

Sintaxe:

• Nome dado ao conjunto de regras a serem seguidas para a escrita dos

algoritmos. O computador só é capaz de entender algoritmos sintaticamente corretos. Sintaxe está associada a forma de escrever um comando.

Semântica:

Refere-se ao que é efetuado pelo computador quando ele encontra um

(4)
(5)

Tipos de dados

Dado pode ser definido como

informação em estado primitivo

cujo

processamento pode gerar informação útil.

Devido a natureza do que vai ser armazenado em memória,

existem

tipos de dados diferentes

.

Tipo de dado representa o

conjunto de valores possíveis

para um

(6)

Tipos de dados

Iremos utilizar apenas

cinco tipos de dados

durante a criação de algoritmos:

Tipo de dado Descrição

Inteiro Para representar informações que não possuem parte fracionária; Real Para representar informações que podem possuir parte fracionária;

Lógico Para representar um estado ou situação que pode ser apenas verdadeira ou falsa; Caractere Utilizado para armazenar um único caractere na memória;

(7)

Identificando tipos de dados

Salário do funcionário de uma empresa; Quantidade de vendedores de uma loja; Preço de um litro de leite;

Estado de iluminação de uma lâmpada em perfeitas condições;

Preenchimento do sexo de uma pessoa em um formulário (assuma ‘M’ ou ‘F’);

CEP de uma carta;

Resposta de uma questão de múltipla escolha; Placa de um automóvel;

(8)

Identificando tipos de dados

Salário do funcionário de uma empresa; Real Quantidade de vendedores de uma loja; Inteiro Preço de um litro de leite; Real Estado de iluminação de uma lâmpada em perfeitas condições; Lógico

Preenchimento do sexo de uma pessoa em um formulário (assuma ‘M’ ou ‘F’); Caractere

CEP de uma carta; Cadeia de caracteres Resposta de uma questão de múltipla escolha; Caractere

Placa de um automóvel; Cadeia de caracteres Valor a pagar por uma refeição num restaurante a quilo; Real

(9)
(10)

Operadores aritméticos

Utilizados para

obtenção de dados numéricos

;

Consistem de:

• Adição (+);

• Subtração (-);

• Multiplicação (*);

• Divisão real entre dois números (/);

(11)

Precedência de operadores aritméticos

1. ( ) Parênteses;

2. Multiplicação, divisões e resto da divisão; 3. Adição ou subtração

• Exemplo

(12)

Operadores relacionais

• Utilizados na comparação de literais ou números;

Retornam valores lógicos;

• Consistem de: • Igual a (==);

• Diferente de (<> ou !=); • Maior que (>);

• Menor que (<);

(13)

Operadores lógicos

• Utilizados para combinar resultados de expressões lógicas;

• Consistem de: • E (AND); • OU (OR); • NÃO (NOT).

• Exemplo

(14)

Tabela verdade das operações lógicas

E

OU

E a tabela verdade do

NÃO?

x y x E y

Verdadeiro Falso Falso

Verdadeiro Verdadeiro Verdadeiro Falso Verdadeiro Falso

Falso Falso Falso

x y x OU y

Verdadeiro Falso Verdadeiro Verdadeiro Verdadeiro Verdadeiro Falso Verdadeiro Verdadeiro

(15)

Funções

• Assim como operadores, funções também realizam cálculos, porém não funcionam como conectivos.

Atuam como um pequeno programa que, tendo valores de entrada, geram

(retornam) um resultado.

(16)

Funções

Função Retorno

QUAD(x) Quadrado de X RAIZ(x) Raiz quadrada de X

TRUNC(x) Valor inteiro de X sem a parte decimal ARRED(x) Valor inteiro mais próximo de X

(17)

Montagem de expressões

• Para realização de determinados cálculos, pode ser necessário fazer combinações

de operadores, bem como a adição de parênteses.

Mas que operador será calculado primeiro?

• O que tiver maior prioridade.

1º Parênteses mais internos 2º Funções

3º Operadores aritméticos

1º Multiplicativos (*, /, #, %); 2º Aditivos (+, -)

4º Operadores relacionais 5º Operadores lógicos

(18)

Exemplos de expressão

• 3 + 4 * 9

• 3 + 36

• 39

• (3 + 4) * 9

• 7 * 9

• 63

• 8 – QUAD(4) + 5

• 8 – 16 + 5

• -8 + 5

(19)
(20)

Constantes e Variáveis

Constante

• Possui valor fixo durante execução do programa; • Pode ser numérica, lógica ou literal.

Variável

Um dos conceitos mais importantes na construção de algoritmos.

• Representa um espaço de memória reservado para armazenar determinado tipo de dado; • Deve receber um nome para referenciação e modificação;

Deve possuir um tipo associado;

(21)

Nomes de variáveis

O nome de uma variável deve ser único dentro de um mesmo algoritmo.

• Deve começar por uma letra, podendo-se incluir após esta letra outras letras, dígitos ou o sinal de underline ( _ ). Este tipo de nome é conhecido como

identificador.

(22)

Exemplos de constantes e variáveis

Cálculo da média de um aluno baseado em suas quatro notas:

Variável

Constante

media =

P1 + P2 + P3 + P4

(23)

Tipos de variáveis

Numéricas

: Armazenamento de números;

Inteiras: Armazenamento de números inteiros;

Reais: Armazenamento de números reais.

Caracteres

: Cadeia de letras ou números;

• Ex: ‘a’, ‘José’, ‘Rua 23’.

(24)

Declaração de variáveis

Toda variável utilizada em um algoritmo deve ser declarada.

(25)

Atribuição de valores

• O que é atribuição?

• Atribui ou associa um valor a uma variável ou constante

nome <- “José”;

(26)
(27)

Sintaxe dos algoritmos

Variáveis

// Declaração de variáveis <variável1> : <tipo1>; <variável2> : <tipo2>; <variável3> : <tipo3>; // Corpo do algoritmo Início <comando1>; <comando2>; <comando3>; Fim. // Módulos Módulo <nomemódulo>; [[ ... ]]

Declaração de variáveis Comentário

Módulos dos algoritmos Parte principal

do algoritmo

Indentação

(28)
(29)

Comando de entrada de dados

Normalmente precisamos de dados de entrada para serem processados pelos

algoritmos.

• Desta forma, precisamos de um comando para solicitar e obter dados fornecidos pelo usuário.

• Quando um computador encontra um comando de entrada de dados, ele

suspende a execução do programa até que os dados sejam fornecidos.

(30)

Comando de saída de dados

• Da mesma forma que precisamos receber dados externos, precisamos fornecer dados e instruções para os usuários.

• Desta forma, precisamos de um comando para retornar dados e/ou mensagens em um dispositivo de saída.

• Exemplos:

escrever “O saldo atual é”, saldo;

escrever soma;

(31)

Impressões complementares

• A finalidade principal do comando de saída de dados é exibir resultados

processados pelo computador. • Imprimir o conteúdo das variáveis;

• Imprimir mensagens relativas a um processamento.

• Também podemos utiliza-lo para exibir mensagens informativas para o usuário, facilitando o entendimento do que está sendo executado pelo computador

• Imprimir mensagens contendo instruções de execução;

(32)

Exemplo de impressões complementares

Algoritmo para calcular a média de 2 números

Variáveis

num1, num2, soma, media : real;

Início

escrever “Entre com o primeiro número: ”; ler num1;

escrever “Entre com o segundo número: “; ler num2;

soma <- num1 + num2; media <- soma / 2;

escrever “A média calculada foi “, media;

Fim

(33)
(34)

Exemplo 1

(35)

Exemplo 1

Estruturando solução

Entrada:

• Ler 2 números digitados pelo usuário

Saída:

(36)

Exemplo 1 - Algoritmo

Variáveis

num1 : inteiro;

num2 : inteiro;

soma : inteiro;

Início

ler num1;

ler num2;

soma <- num1 + num2;

escrever soma;

(37)

Exemplo 1

Execuções do algoritmo

(38)

Exemplo 2

(39)

Exemplo 2

Estruturando solução

Entrada:

• Ler um número fornecido pelo usuário

Saída:

(40)

Exemplo 2

Algortimo

Sem usar a função

Variáveis

valor, quadrado : inteiro;

Início

ler valor;

quadrado <- valor * valor; escrever quadrado;

Fim

Usando a função

Variáveis

valor, quadrado : inteiro;

Início

ler valor;

quadrado <- QUAD( valor ); escrever quadrado;

(41)

Exemplo 2

Execuções do algoritmo

(42)

Exemplo 3

(43)

Exemplo 3

Estruturando solução

Entrada:

• Preço do litro de gasolina

• Valor que o motorista pagou para abastecer

Saída:

(44)

Exemplo 3

Algortimo

Variáveis

preco_litro: real;

valor_pago: real;

litros_abastecidos: real;

Início

escrever “Digite o preço do litro de gasolina: ” ler preco_litro;

escrever “Digite o valor pago para abastecer: ”

ler valor_pago;

litros_abastecidos <- valor_pago / preco_litro;

escrever “O motorista conseguiu colocar “, litros_abastecidos, “litros de gasolina.” ;

(45)

Exemplo 3

Execuções do algoritmo

Digite o preço do litro de gasolina: 3.5 Digite o valor pago para abastecer: 80.5

(46)

Exemplo 4

Alguns países medem a temperatura em graus celsius, outros em graus Fahrenheit. Faça um algoritmo para ler uma temperatura em celsius e imprimí-la em

(47)

Exemplo 4

Estruturando solução

Entradas:

• Temparatura em celsius

Saídas:

• Temperatura em Fahrenheit

Informações importates:

(48)

Exemplo 4

Algortimo

Variáveis

temperatura_celsius: real; temperatura_fahrenheit: real;

Início

escrever “Digite a temperatura em Celsius: ”

ler temperatura_celsius;

temperatura_fahrenheit <- temperatura_celsius * 1.8 + 32;

escrever “A temperatura em Fahrenheit é: ”, temperatura_fahrenheit ;

(49)

Exemplo 4

Execuções do algoritmo

(50)

Exemplo 5

Faça um algoritmo para ler o salário de um funcionário e aumentá-lo em 15%. Após o aumento, desconte 8% de impostos. Imprima o salário inicial, o salário com

(51)

Exemplo 5

Estruturando solução

Entradas:

• Salário inicial

Saídas:

• Salário inicial

• Salário com aumento

(52)

Exemplo 5 - Algoritmo

Variáveis

salario_inicial: real;

salario_aumentado: real;

salario_final: real; Início

escrever “Digite o salário do funcionário: R$ ”

ler salario_inicial;

salario_aumentado <- salario_inicial + salario_inicial * 0.15;

salario_final<- salario_aumentado - salario_aumentado * 0.08;

escrever “O salário inicial do funcionário é de: R$ ”, salario_inicial;

escrever “O salário aumentado do funcionário é de: R$ ”, salario_aumentado; escrever “O salário final do funcionário é de: R$ ”, salario_final;

(53)

Exemplo 5

Execuções do algoritmo

Digite o salário do funcionário: R$ 2500

O salário inicial do funcionário é de: R$ 2500

(54)

Referências da aula

Adaptado da aula

Introdução à Programação

do Prof. Ricardo Araújo

do curso de Ciência da Computação da FBV.

Gilvan Vilarim.

Algoritmos: Programação para Iniciantes

. Editora

(55)

Tipos de dados, Operadores,

Variáveis e E/S

Bruno Cartaxo

sites.google.com/site/brunocartaxo bruno.cartaxo@olinda.ifpe.edu.br

Imagem

Tabela verdade das operações lógicas • E • OU E a tabela  verdade do NÃO?xyxE y

Referências

Documentos relacionados

Apesar de o mercado acionário brasileiro ter se tornado mais importante para a economia brasileira, sobretudo entre o período de 2002 para 2005 (Tabela 3), sua repre- sentatividade

- Se o estagiário, ou alguém com contacto direto, tiver sintomas sugestivos de infeção respiratória (febre, tosse, expetoração e/ou falta de ar) NÃO DEVE frequentar

Os instrumentos de pesquisa utilizados serão: Ficha de Rastreamento das Participantes do Estudo, International Consultation on Incontinence Questionnaire – Short Form

Atualmente os currículos em ensino de ciências sinalizam que os conteúdos difundidos em sala de aula devem proporcionar ao educando o desenvolvimento de competências e habilidades

Contudo, não é possível imaginar que essas formas de pensar e agir, tanto a orientada à Sustentabilidade quanto a tradicional cartesiana, se fomentariam nos indivíduos

Pode haver alguns acordos prévios, como visto na classificação proposta em trabalho anterior (GUERRERO, 2006), mas estes são propostos sempre mantendo elevado

No sentido de reverter tal situação, a realização deste trabalho elaborado na disciplina de Prática enquanto Componente Curricular V (PeCC V), buscou proporcionar as

Desta maneira, observando a figura 2A e 2C para os genótipos 6 e 8, nota-se que os valores de captura da energia luminosa (TRo/RC) são maiores que o de absorção (ABS/RC) e