intodução à programação · como são compostas as “frases” (instruções) de um algoritmo?...
TRANSCRIPT
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Algoritmos Computacionais
Material produzido por professores da
UFABC
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Objetivos
Aprender a sintaxe e a semântica de instruções
de saída e de entrada de dados na “linguagem
PORTUGOL”
Aprender alguns operadores pra uso na parte
de processamento de dados em algoritmos na
linguagem PORTUGOL
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
RELEMBRANDO ...
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Conceituar Algoritmo
Algoritmos - Relembrando
É uma sequência finita de instruções, ordenada de
forma lógica para a resolução de uma determinada
tarefa ou problema.
Quais as “três” partes de um algoritmo?
Entrada, Processamento e Saída de Dados
Como são compostas as “frases” (instruções) de um
algoritmo? Geralmente por verbos no IMPERATIVO ou INFINITIVO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
1. Pegue a frigideira, ovo, óleo e sal
2. Coloque o óleo na frigideira
3. Acenda o fogo
4. Coloque a frigideira no fogo
5. Espere o óleo esquentar
6. Quebre o ovo
7. Despeje o ovo no óleo quente
8. Coloque o sal
9. Retire quando estiver pronto
10.Desligue o fogo
Algoritmo Exemplo: FRITAR UM OVO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Algoritmos Computacionais:
Técnica para Interpretação de Enunciado
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Calcular a média aritmética a partir de 3 notas.
Qual a SAÍDA de Dados? [que resultado o algoritmo deve produzir?]
média
• Qual a ENTRADA de Dados? [quais os insumos necessários para produzir a saída?]
– 3 notas (nota1, nota2, nota3)
Identificando a solução:
ENTRADA, PROCESSAMENTO, SAÍDA!
Técnica de Interpretação de Enunciado
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Calcular a média aritmética a partir de 3 notas.
Qual a PROCESSAMENTO necessário? [para transformar as 3 notas na média?]
Somar as 3 notas
(soma = nota1 + nota2 + nota3)
Dividir a soma por 3
(media = soma / 3)
• O passo seguinte é organizar as “instruções” numa sequência coerente: Entrada, Processamento e Saída
Técnica de Interpretação de Enunciado
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Quais as “instruções” necessárias para fazer:
ENTRADA DE DADOS ?
PROCESSAMENTO?
SAÍDA DE DADOS ?
Comecemos pelo mais simples:
SAÍDA DE DADOS
Para começar vamos aprender as instruções
na linguagem “PORTUGOL”
PORTUGOL = “Português” + “Algoritmo”
Escrevendo o Algoritmo
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
SAÍDA DE DADOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
EXIBE UMA MENSAGEM OU RESULTADO PARA O
USUÁRIO NA TELA DO COMPUTADOR.
A instrução para saída de dados em
“PORTUGOL” é:
escreva ( < mensagem>, <identificador>)
EXEMPLO:
• escreva(“Alô Mundo“)
• escreva(“A soma é igual a“, soma)
SAÍDA DE DADOS
Note que a mensagem está entre
ASPAS DUPLAS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
ENTRADA DE DADOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
INTERAGE COM O “TECLADO” DO COMPUTADOR
OBTENDO INFORMAÇÕES QUE O USUÁRIO DIGITA
A instrução para entrada de dados em
“PORTUGOL” é:
leia (<identificador>)
EXEMPLO:
• leia (nota1)
ENTRADA DE DADOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
EXEMPLO:
• leia (nota1)
ENTRADA DE DADOS
É sempre recomendado ANTES de um LEIA, emitir
uma mensagem para o usuário indicando o que ele
deve digitar
EXEMPLO:
• escreva (“Digite a primeira nota: “)
• leia (nota1)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
EXEMPLO:
• leia (nota1)
• ATENÇÃO: Qualquer “dado” digitado no teclado precisa ser armazenado na memória do computador!
• Para tal, faz-se necessário a RESERVA DE MEMÓRIA
através de DECLARAÇÃO DE VARIÁVEIS
ENTRADA DE DADOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
DECLARAÇÃO DE VARIÁVEIS (reserva de memória)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
As linguagens de programação permitem que os usuário atribuam nomes (identificadores) para as posições de memória da máquina
Armário Memória do computador
nome
idade
nacionalidade
profissao
MEMÓRIA – Declaração de Variáveis
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Uma variável é um endereço da memória RAM, representada por um identificador (nome da variável), criado pelo usuário, cujo conteúdo pode se alterar no decorrer da execução do programa
nome
Uma variável é composta por dois elementos:
Identificador: nome dado pelo programador à variável
Conteúdo: valor atual da variável
MEMÓRIA – Declaração de Variáveis
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
nome
idade
salario
Maria Carla
nome Identificador
17
idade Identificador
1342.50
salario Identificador
• Uma variável assume apenas UM único valor por vez
• Ao alterar o salário, por exemplo, perde-se o valor anterior
conteúdo
conteúdo
conteúdo
MEMÓRIA – Declaração de Variáveis
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
17
idade Identificador
• O identificador deve ser uma palavra que reflita o conteúdo
• Por exemplo: idade ao invés de numero
conteúdo
MEMÓRIA – Declaração de Variáveis
17
numero Identificador
conteúdo
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
TIPOS
DE DADOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Ao declarar uma variável é necessário informar ao
computador que tipo de dado aquela “gaveta” pode
armazenar
Os tipos de dados básicos são:
Inteiro - armazena números inteiros
Real - armazena números com casas
decimais
Logico - armazena verdadeiro ou falso
Caracter - armazena UMA letra ou UM
caracter especial, etc.
Cadeia - armazena VÁRIAS letras ou caracteres
Declaração de Variáveis – TIPOS DE DADOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Os tipos de dados básicos são:
inteiro, real
logico
caracter, cadeia
Forma Geral: <tipo_de_dado> <Identificador>
Declaração de Variáveis – TIPOS DE DADOS
Exemplos:
• inteiro idade
• real nota1, nota2, nota3
• caracter conceito
• cadeia sobrenome
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
PROCESSAMENTO OPERADORES BÁSICOS
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
O processamento de dados geralmente é
realizado com o uso de operadores
Os símbolos dos operadores aritméticos são:
adição +
subtração -
multiplicação *
divisão /
Processamento - OPERAÇÕES
Exemplos: • nota1 + nota2
• soma / 2
A PRECEDÊNCIA DE OPERADORES É A MESMA
DA MATEMÁTICA:
• Multiplicação e divisão tem prioridade sobre
• Adição e subtração
Assim na expressão 5 + 3 * 2
Primeiro processa 3 * 2 e depois soma com 5
Parênteses mudam a prioridade:
Ou seja, (5+3)*2 faz com que a soma ocorra
primeiro
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Um operador importante é o de operador de atribuição
que possibilita armazenar “valores” e “resultados” nas
variáveis
O símbolo do operador de atribuição é = (sinal de igual)
Processamento - OPERAÇÕES
Exemplos: • soma = nota1 + nota2
• media = soma / 2
• conceito = ‘A’
Variáveis
• real nota1, nota2, soma
• caracter conceito
• Lê-se “recebe” (exemplo: conceito “recebe” o valor A)
• Note que sendo “conceito” do tipo caracter é necessário o uso da aspas simples no conteúdo.
•
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
x = a + b
y = (a * 4) + b
z = y / x
k = x / 2
h = x / 2
a
5
b
10
x
15
y
30
z
2.0
Variáveis • inteiro a, b, x, y, k
• real z, h
Exemplo de OPERAÇÕES
k
7 Atenção: Note que k é inteiro e o resultado foi
TRUNCADO (ficando 7 ao invés de 7.5)
h
7.0
Atenção: Note que mesmo h sendo real o
resultado foi TRUNCADO (ficando 7 ao invés
de 7.5) pois tanto x como 2 são INTEIROS.
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
RETOMANDO O PROBLEMA
Calcular média de 3 notas
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Calcular a média aritmética a partir de 3 notas.
SAÍDA de Dados: Média
ENTRADA de Dados: 3 notas (nota1, nota2, nota3)
Técnica de Interpretação de Enunciado
PROCESSAMENTO:
Somar as 3 notas
(soma = nota1 + nota2 + nota3)
Dividir a soma por 3
(media = soma / 3)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
real nota1, nota2, nota3, soma, media
1. leia (nota1)
2. leia (nota2)
3. leia (nota3)
4. soma = nota1 + nota2 + nota3
5. media = soma / 3
6. escreva (media)
Calcular a média aritmética a partir de 3 notas.
Note que para as operações não é
necessário o uso de um verbo imperativo
SOLUÇÃO: ALGORITMO em PORTUGOL
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
real nota1, nota2, nota3, soma, media
1. escreva(“Digite a primeira nota :”)
leia (nota1)
2. escreva(“Digite a segunda nota :”) leia (nota2)
3. escreva(“Digite a terceira nota :”) leia (nota3)
4. soma = nota1 + nota2 + nota3
5. media = soma / 3
6. escreva (“A média é = “, media)
ALGORITMO – Solução mais completa Entrada de Dados com Mensagem para o Usuário
5.0
nota1
6.0
nota2
7.0
nota3
18.0
soma
6.0
media
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
SOLUÇÃO NO AMBIENTE
PORTUGOL STUDIO
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
O PortugolStudio é um software interpretador de
programas escritos em PORTUGOL
Declaração de
Variáveis
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
RESUMINDO...
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
• DECLARAÇÃO DE VARIÁVEIS
• Identificador e Tipo de Dados
• Exemplo: inteiro idade
Coisas para não esquecer:
• SAÍDA DE DADOS
• Comando ESCREVA
• Exemplo: escreva (“Digite sua Idade:”)
• ENTRADA DE DADOS
• Comando LEIA
• Exemplo: leia (idade)
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
• OPERADORES ARITMÉTICOS
• ARITMÉTICOS: + / - *
• Exemplo: (nota1 + nota2) / 2
Coisas para não esquecer:
• OPERADOR DE ATRIBUIÇÃO
• ATRIBUIÇÃO: =
• Exemplo: media = (nota1 + nota2) / 2
AGORA É PRATICAR!!!
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Algoritmos Computacionais – Parte II
Exercícios Resolvidos
Prof. Dr. Edson Pimentel
Centro de Matemática, Computação e
Cognição
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Objetivos
Aplicar a técnica de interpretação de
enunciados para a escrita de algoritmos
computacionais em PORTUGOL
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Exercícios
Escreva um algoritmo para calcular
a distância entre duas cidades.
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Calcular a distância entre duas cidades.
Qual a SAÍDA de Dados? [que resultado o algoritmo deve produzir?]
distancia
• Qual a ENTRADA de Dados? [quais os insumos necessários para produzir a saída?]
(*) Para simplificar considerar que as cidades estão numa mesma rodovia
– Localização das duas cidades(cidade1, cidade2)
Identificando a solução:
ENTRADA, PROCESSAMENTO, SAÍDA!
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Calcular a distância entre duas cidades.
Qual a PROCESSAMENTO necessário? [para transformar as duas localizações em distancia?]
Subtrair as duas quilometragens
distancia = cidade2 – cidade1 (*) desconsiderar o sinal negativo caso ocorra
• O passo seguinte é organizar as “instruções” numa sequência coerente: Entrada, Processamento e Saída
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
Solução em PORTUGOL
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
real cidade1, cidade2, distancia
1. escreva(“Digite a localização (km) da cidade 1:”) leia (cidade1)
2. escreva(“Digite a localização (km) da cidade 2:”) leia (cidade2)
3. distancia = cidade2 – cidade1
4. escreva (“A distancia entre as duas cidade é = “, distancia)
5. escreva (“ATENÇÃO: desconsidere sinal negativo”)
Calcular a distância entre duas cidades.
162
cidade1
267
cidade2
105
distancia
Bacharelado em Ciência e Tecnologia
Processamento da Informação
Algoritmos Computacionais
AGORA É PRATICAR!!!