Buscar

Aula 02 - Algoritmos - Variáveis - Entrada e saída

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 43 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 43 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 43 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Como a máquina entende os códigos?
Para que o computador "entenda" um programa escrito em uma
linguagem (de alto nível) é necessário um meio de tradução entre
a linguagem de alto nível utilizada no programa e a linguagem de
máquina.
Para essa tarefa temos basicamente dois métodos:
 Compilador
 Interpretador
Interpretador
Traduz e faz a checagem da sintaxe e envia para execução, instrução por instrução.
Precisa estar presente todas as vezes que vamos executar o programa e o processo acima é
repetido.
Exemplo: Uma página html é interpretada pelo Navegador.
Vantagem: consome menos memória
Desvantagem: execução mais lenta
Programa
Fonte
Linguagem
de alto 
nível
INTERPRETA
DOR
Resultados
EXECUÇÃO
Compilador
Traduz o programa escrito em uma linguagem de programação para um
programa equivalente escrito em linguagem de máquina (programa-objeto).
Vantagens:
 Velocidade de execução
 Oculta o código fonte
Desvantagem: A cada alteração no programa fonte é necessário
gerar novamente o programa-objeto
Programa
Fonte
Linguagem
de alto 
nível
Programa
Objeto
Linguagem 
de baixo 
nível
Resultados
EXECUÇÃO
COMPILADOR
Tipos de Dados
Quando especificamos um algoritmo, detalhamos:
os DADOS (números binários, isto é, sequências de 0s e 1s,
armazenados na memória, correspondem à porção das
informações a serem processadas) que serão processados e
as INSTRUÇÕES (ou comandos, comandam o funcionamento da
máquina e determinam como devem ser manipulados os dados)
que vão operar sobre esses.
O objetivo é classificar os dados de acordo com o tipo de informação
contida neles. A classificação apresentada não se aplica a nenhuma
linguagem de programação específica.
Tipos de Dados
inteiro: informações que não possuem componente decimal ou fracionário,
podendo ser positivo ou negativo.
real: informações que podem possuir componentes decimais ou fracionários,
podem ser positivos ou negativos. A simples existência do ponto decimal
diferencia um dado numérico do tipo inteiro de um do tipo real.
literial ou caracteres: é constituído por uma sequência de caracteres
contendo letras, dígitos e/ou símbolos especiais. São representados nos
algoritmos pela coleção de caracteres, delimitada pelas aspas (“texto”) ou
aspas simples para um caracter (‘p’).
lógico: informação que podem assumir apenas dois possíveis valores:
verdadeiro ou falso, sim/não, 1/0, true/false.
Tipos de Dados
Tipos Exemplo de utilização
numérico inteiro idade, ano, quantidade de 
filhos
real 
(separador de casas decimais é o 
ponto)
salário, peso, altura
texto literal
(representa 1 caracter, aspas simples 
ou sequencia de caracteres, aspas 
duplas)
opção, primeira letra do 
nome, operação matemática,
nome, cargo, endereço
lógico logico
(verdadeiro ou falso)
formado, solteiro
Tipos de Dados Primitivos – Java
Classifica
ção
Tipo Descrição
Lógico boolean Pode possuir valores true (verdadeiro) ou false (falso)
Inteiro
byte Abrange de -128 a 127 (8 bits)
short Abrange de -32768 a 32767 (16 bits)
int Abrange de -2.147.483.648 a 2.147.483.647 (32 bits)
long Abrange de -263 a 263 - 1 (64 bits)
Ponto 
flutuante
float Abrange de -3.4028E+38 a 3.4028E+38 (32 bit) com precisão 
simples
double Abrange de -1.7976E+308 a 1.7976E+308 (32 bit) com 
precisão dupla
Caracter char Pode armazenar um caracter Unicode (16 bits) ou um inteiro 
entre 0 e 65535
Espaço de memória que pode receber um valor e sofrer alteração
no decorrer do algoritmo/tempo.
Toda variável tem um nome único que a identifica (identificador),
um valor e o tipo correspondente à informação a ela atribuída.
Variáveis
Nos algoritmos, cada variável corresponde a uma posição de
memória.
Embora uma variável possa assumir diferentes valores, ela só pode
armazenar um valor a cada instante.
Uma variável possui três atributos:
 um nome (ou identificador),
 um tipo de dado e
 a informação por ela guardada.
Cada linguagem de programação estabelece suas próprias regras
de formação de nomes de variáveis.
Variáveis
O nome de uma variável deve ser representativo do seu conteúdo e 
possui as seguintes regras:
1. Não pode começar com números, apenas com letras
2. Não pode conter espaços em branco
3. Não pode conter caracteres especiais (#, ?, !, @, +, -, ...)
4. Não pode ser palavra reservada
Variáveis
Válidos Inválidos
qtde_filhos meu nome
idade 1tentativa
nota1 Real
Nome_Compl
eto
ficha#2
Declaração de Variáveis
Todas as variáveis utilizadas nos algoritmos devem ser definidas
antes de serem utilizadas. Isto se faz necessário para permitir que
o compilador reserve um espaço na memória para as mesmas.
Para indicar o tipo de uma ou mais variáveis é feita a declaração de
variáveis. A partir do momento da declaração das variáveis, é feita
uma associação do nome escolhido, com a respectiva posição de
memória.
Exemplo:
inteiro number1,number2
real arquivo
literal nome
lógico escolha
Constantes
Valor fixo, numérico ou não, que deve permanecer inalterado no
decorrer da execução do algoritmo.
Em programação geralmente as constantes são declaradas com
letras maiúsculas.
Após sua declaração, fazemos a inicialização com o valor que
será fixo em todo o nosso programa.
As regras de criação do nome, seguem as mesma de variáveis.
Podemos utilizar a palavra constante em pseudocódigo.
A forma de criar uma constante em programação varia conforme
a linguagem de programação.Exemplo:
constante real PI = 3.14
constante inteiro 
VOLUME_MAX = 100
Inicialização de Variáveis
Existem várias maneiras de atribuir valores a variáveis:
Dizendo no algoritmo qual o valor a variável deve assumir:
…
inicio
real preco
preco = 12.99
Inicialização de Variáveis
Existem várias maneiras de atribuir valores a variáveis:
Definir que uma variável assuma o valor de uma outra variável:
…
inicio
inteiro n1,n2
n1 = 10
n2 = n1
Inicialização de Variáveis
Existem várias maneiras de atribuir valores a variáveis:
Atribuir uma variável o resultado de uma expressão;
…
inicio
real a,b,c
a = 12.05
b = 5.20
c = a*b
Usuário digitar o valor (comando de entrada, como veremos a 
seguir)
Os algoritmos precisam ser “alimentados” com dados provenientes do
meio externo para efetuarem as operações e cálculos e é necessário
também mostrar os resultados.
Comando de entrada:
LEIA  tem como finalidade atribuir o dado a ser fornecido à 
variável identificada.
Exemplo: leia (variável)
Comandos de Entrada e Saída (Input/Output)
Comando de saída:
ESCREVA  cuja finalidade é exibir uma mensagem, essa 
mensagem pode ser um texto ou o conteúdo de uma variável, ou 
ambos juntos
Comandos de Entrada e Saída (Input/Output)
Exemplos:
escreva (“Mensagem”)
escreva (“Mensagem” + 
var)
escreva (variável)
1- Crie um algoritmo que solicita ao usuário a sua idade e armazena
essa informação em uma variável, solicita também a profissão e
armazena em outra variável. Após obter os dados, apresente em uma
única mensagem os valores digitados (variáveis)
Exemplos de aplicação
1- Crie um algoritmo que solicita ao usuário a sua idade e armazena
essa informação em uma variável, solicita também a profissão e
armazena em outra variável. Após obter os dados, apresente em uma
única mensagem os valores digitados (variáveis)
Exemplos de aplicação
Qual é a sua idade? _
Qual é a sua profissão? _
Idade = 
Profissão = 
O usuário deve digitar a
informação solicitada e o
programa armazena em uma
variável
O usuário deve digitar a
informação solicitada e
o programa armazena
em uma variável
O usuário deve digitar
a informação solicitada
e o programa
armazena em uma
variável
Exemplos de aplicação
algoritmo Dados
início
inteiro idade
literal profissao
escreva (“Digite a sua idade”)
leia (idade)
escreva (“Digite a sua profissão”)
leia (profissao)
escreva (“Idade = “ + idade + “\nProfissão = “+ 
profissao)
fim
RESOLUÇÃO 
EXEMPLO 1
Exemplos de aplicação
2- Crie um algoritmo que solicitaao usuário o modelo de um carro, a
quantidade de quilometros rodados e o seu valor. Após, mostre os
dados do carro.
Exemplos de aplicação
algoritmo Carros
início
real valor, km
literal modelo
escreva (“Digite o modelo do carro”)
leia (modelo)
escreva (“Digite a quilometragem do carro”)
leia (km)
escreva (“Digite o valor do carro”)
leia (valor)
escreva (“Os dados do carro são: Modelo = “+ modelo+ 
“Quilometragem = “+ km+ “Valor = “+ valor)
fim
RESOLUÇÃO 
EXEMPLO 2
Exemplos de aplicação
3- Crie um algoritmo que calcule a média aritmética de 4 números
reais digitados pelo usuário e exiba o resultado.
Exemplos de aplicação
algoritmo media_quatro_valores
início
real: n1, n2, n3, n4, media
escreva ("Digite o 1º valor: ")
leia (n1)
escreva ("Digite o 2º valor: ")
leia (n2)
escreva ("Digite o 3º valor: ")
leia (n3)
escreva ("Digite o 4º valor: ")
leia (n4) 
media ← (n1+n2+n3+n4)/4
escreva ("A média dos valores é: " + media)
fim
RESOLUÇÃO 
EXEMPLO 3
Exemplos de aplicação
5- Elaborar um algoritmo que solicite os dados de altura (em metros) e
peso (em Kg) de uma pessoa e calcule/visualize seu IMC (Índice de
Massa Corporal).
Lembre que IMC = peso/altura²
algoritmo imc
início
real: peso, altura, imc
escreva ("Digite o peso da pessoa (em Kg): ")
leia (peso)
escreva ("Digite a altura da pessoa (em m): ")
leia (altura) 
imc ← peso / (estatura*estatura)
escreva ("O IMC da pessoa é: " + imc + " Kg/m² ")
fim
Exemplos de aplicação
RESOLUÇÃO 
EXEMPLO 5
Pausa para programação
# Exemplo 5 de cálculo do IMC em Python
peso = float(input("Digite o peso em Kg: "))
altura = float(input("Digite a estatura em m: "))
imc = peso / altura**2
print("O IMC é ", imc, " Kg/m²")
Pausa para programação
# Exemplo de cálculo do IMC em Java
import java.util.Scanner;
class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("Digite seu peso");
float peso = sc.nextFloat();
System.out.println("Digite sua altura");
float altura = sc.nextFloat();
float imc = peso / altura * altura;
System.out.println("O seu IMC é " + imc + "kg/m²");
}
}
Pausa para programação
# Exemplo de cálculo do IMC em C#
using System;
public class Program{
public static void Main(){
float peso, altura, imc;
Console.Write("Digite sua altura: ");
altura = float.Parse(Console.ReadLine());
Console.Write("Digite seu peso: ");
peso = float.Parse(Console.ReadLine());
imc = peso / altura * altura;
Console.Write("O seu IMC é " + imc + "kg/m²");
}
}
Operadores
Lógicos /
Matemáticos
Convenção para o pseudocódigo
Operador Descrição
+ para soma
- para subtração
/ para divisão
* para multiplicação
() para agrupar termos
mod ou % resto da divisão
← ou = para atribuir um valor
^ para potência
< <= > >= <> 
==
para operadores de relação 
(comparação)
E OU NÃO para operadores lógicos
Conjunção – Tabela verdade
p q p E q
F F F
F V F
V F F
V V V
Disjunção – Tabela verdade
p q p OU q
F F F
F V V
V F V
V V V
Negação – Tabela verdade
p
~ p ou 
NÃO p
F V
V F
Exemplos
p: a lua é um satélite da terra
~p: a lua não é um satélite da terra
ou
NÃO p: não é verdade que a lua é um satélite da terra
Operador Operação
Priorida
de
+ Soma 4o
- Subtração 4o
* Multiplicação 3o
/ Divisão 3o
mod ou 
%
Resto de uma divisão 
inteira
2o
+ Manutenção de sinal 1o
- Inversão de sinal 1o
Prioridade dos operadores aritméticos
 Em uma expressão com operadores da
mesma prioridade, as operações serão
executadas de esquerda a direita.
 Nas linguagens com operadores para
potência, eles teriam prioridade maior
que + - / *
Observa
ção 
importa
nte!
Prioridade dos operadores aritméticos
8- Faça um algoritmo que obtenha um número inteiro, calcule e 
mostre o resultado do quadrado desse número.
Exemplos de aplicação
8- Faça um algoritmo que obtenha um número inteiro, calcule e 
mostre o resultado do quadrado desse número.
Exemplos de aplicação
algoritmo Quadrado de um Número
início
inteiro q,n
escreva (“Entre com o número”)
leia (n)
q = n*n
escreva (“O quadrado de “ + n + “ é ” + q)
fim
Operadores Prioridade
Lógicos 4 o
Relacionais 3 o
Aritméticos 2 o
Parênteses 1 o
menor
maior
Prioridade dos grupos de operadores
Exercícios
1- Faça um algoritmo que solicite ao usuário o nome de dois
medicamentos e também o valor de venda de cada medicamento.
Mostre os dados (nome e valor) dos dois medicamentos na tela.
2- Faça um algoritmo que solicite ao usuário o nome de um funcionário,
a quantidade de dependentes e o cargo ocupado pelo funcionário.
Mostre os dados (nome, quantidade de dependentes e cargo)
digitados.3- Elaborar um algoritmo que solicite os dados
de 2 retângulos para calcular e visualizar três
áreas: AT (área total das duas figuras), A1 e A2
(áreas dos retângulos superior e inferior). Os
únicos dados conhecidos são os valores a, b, d.
5- Faça um algoritmo que leia a cotação do dólar (taxa de conversão), 
leia um valor em dólares e converta e mostre o valor equivalente em 
Reais. 
6- Faça um algoritmo que leia dois valores inteiros representando, 
respectivamente, um valor de hora e um de minutos e informe 
quantos minutos se passaram desde o início do dia. Exemplo:
valores lidos: 13 e 15
impressão: 795 minutos
7- Elabore um algoritmo que leia dois números inteiros e imprima o 
resto da divisão inteira de um pelo outro. 
Exercícios
8- Faça um algoritmo que leia um valor representando o gasto
realizado por um cliente do restaurante ComaBem e visualize o valor
total a ser pago, considerando os 10% do garçom.
9- Faça um algoritmo que leia dois números inteiros e calcule e
mostre o resultado das seguintes operações aritméticas: soma,
subtração, multiplicação, divisão e resto da divisão.
10- Crie um algoritmo que obtenha um número real, calcule e mostre
o valor de seu triplo.
11- Crie um algoritmo que obtenha o valor da altura e da base de um
triangulo (ambos do tipo real), calcule e mostre a sua área, sabendo
que:
Exercícios
Sugestão: Programação Java ou Python
Utilizando uma ferramenta on-line de sua preferência, procure 
implementar alguns dos exercícios propostos nesta aula em Java ou 
Python.
Algumas ferramentas on-line:
https://www.programiz.com/python-
programming/online-compiler/
https://repl.it/languages/
https://www.programiz.com/python-programming/online-compiler/
https://repl.it/languages/python3
Até a próxima pessoal!
marco.sanches@cruzeirodosul.edu.br

Continue navegando