Buscar

aula revisão

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 45 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 45 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 45 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

AULA – REVISÃO
UFABC
1 - Interpretação de Enunciados de Problemas
2 - Tipos Primitivos de Dados 
3 - Variáveis
4 - Constantes
5 - Comando de Entrada de Dados
6 - Comando de Saída de Dados
7- Algumas dicas sobre Estratégias de Aprendizagem
8 - Soluções dos desafios propostos
CONCEITOS / TÓPICOS
UFABC
‹#›
Interpretação de Enunciados de Problemas
Como desenvolver um algoritmo?
Análise
Projeto
Implementação
UFABC
‹#›
Análise: Estuda-se o enunciado do problema para definir os dados de entrada, o processamento e os dados de saída 
Algoritmo (projeto): Cria-se uma sequência de passos para resolver o problema
Codificação (implementação): Traduz-se essa sequência de passos em um programa escrito em uma linguagem que o computador entenda
Desenvolvendo um algoritmo computacional
UFABC
Interpretação de Enunciados de Problemas
Crie um algoritmo para exibir o resultado da multiplicação de dois números
Análise: 
entrada: dois números (n1, n2)
processamento: multiplicação (m = n1 * n2)
saída: resultado da multiplicação (m)
UFABC
‹#›
Interpretação de Enunciados de Problemas
Crie um algoritmo para exibir o resultado da multiplicação de dois números
Algoritmo (projeto): 
 algoritmo “Multiplicação”
 inteiro n1,n2,m
inicio
escreva(“Digite dois números:”)
// entrada: 
leia (n1)
leia (n2)
// processamento:
m ← n1 * n2
// saída:
escreva (“Multiplicação = ”, m)
fimalgoritmo
Codificação (implementação):
Java
Python
Etc
UFABC
‹#›
Primitivos: também chamados de simples ou básicos, representam valores indivisíveis: inteiro, real, caracter, lógico
Tipos primitivos de dados
JAVA:
 byte short int long 
float double char boolean 
UFABC
Variável
Uma variável é uma informação que você pode usar dentro de um algoritmo e alterá-la. Ex:
Nome 
Idade
Salario
Declaração:
caracter Nome
inteiro Idade
real Salario
Constante
Números ou caracteres cujos valores não mudam dentro de um algoritmo. 
Ex:
PI = 3.14
PAIS = Brasil
Declaração
real final PI = 3.14
caracter final PAIS = "Brasil"
Variáveis e Constantes
UFABC
Entrada - Leia
Algoritmo recebe informação do meio externo (p.ex: por um teclado).
leia (raio)
Saída - Escreva
Algoritmo fornece informação para o meio externo (p.ex: imprime na tela).
escreva (”Olá”)
escreva (”digite o valor do raio”) 
escreva (”Raio = ”+ raio)
escreva (”informe o sexo: f- feminino ou m- masculino”)
Comandos de Entrada e Saída
JAVA:
import java.util.Scanner;
... 
Scanner leia= new Scanner(System.in);
int n = leia.nextInt();
JAVA:
System.out.println(”Nro: " + n);
UFABC
Algoritmo "dobro"
 int n
 escreva (”Digite um nro”)
 leia (n)
 n = n * 2
 escreva (”O dobro desse nro é = ” + n)
Fim
O que é entrada e o que é saída de dados?
Comandos de Entrada e Saída
UFABC
Algoritmo "dobro"
 int n
 escreva (”Digite um nro”) // saída = impressão na tela do usuário
 leia (n) // leitura de um dado de entrada e armazena na variável n
 n = n * 2 // processamento
 escreva (”O dobro desse nro é = ” + n) // saída = impressão na tela do usuário
Fim
O que é entrada e o que é saída de dados?
Comandos de Entrada e Saída
UFABC
7 – Operadores
• 7.1 – Atribuição 
• 7.2 - Operadores Aritméticos
• 7.3 - Operadores Relacionais
• 7.4 - Operadores Lógicos
8 – Expressões Aritméticas
9 – Expressões Lógicas 
CONCEITOS / TÓPICOS
UFABC
‹#›
Operador de Atribuição
Atribuição: atribui valor para uma variável
// Variáveis: real raio, C, A
literal Nome
//Constante: real final PI = 3.14
//Atribuições:
int contador = 0, produto =1
Nome = ”Maria”
C = 2 * PI * raio
A = area_circulo(raio)
UFABC
Atribuição: =
Aritméticos: 
Soma + , subtração - , multiplicação *
Divisão real / , inteira \ ou DIV , resto % ou MOD
Potenciação ^
Relacionais: 
Menor < , menor igual <=
Maior > , maior igual <=
Igual ==
Diferente !=
Lógicos: 
E &&
Ou ||
Negação !
Atribuições:
Simples = 
Composta +=, -=, *=, /=, %=
Incremento ++, Decremento --
Operadores
UFABC
Expressões Aritméticas
Ex: fórmula de Bhaskara
Precedência 
utilize parênteses para agrupar as expressões aritméticas
UFABC
‹#›
Expressões Lógicas
Ex: a variável X é positiva e menor que 10? 
NÃO é possível escrever a condição 0 < x < 10
é necessário combinar duas comparações
X é positivo: x > 0
X é menor que 10: x < 10
por meio do operador lógico &&, resultando na expressão:
 (x > 0) && (x < 10)
Precedência 
A operação de maior precedência é a negação (não - !), seguida da conjunção (e - &&) e por último a disjunção (ou - ||). 
UFABC
‹#›
10 – Estruturas de Seleção
• 10.1 - Seleção Simples
• 10.2 - Seleção Composta
• 10.3 - Seleção Encadeada	
• 10.4 - Seleção Múltipla 
CONCEITOS / TÓPICOS
UFABC
‹#›
Simples: Um bloco de comando é executado quando uma condição é verdadeira, caso contrário, o bloco é pulado
Composta: um bloco de comando é executado quando uma condição é verdadeira, caso contrário, outro bloco é executado
Estruturas condicionais
 ?
 então
Se ?
 ?
 então senão
Se ?
UFABC
Seleção Simples
Pseudocódigo
se (<condição>) então
 <instruções>
fimse
JAVA
if (<condição>){
	 <instruções>;
}
if (<condição>)
	 <instrução>;
Usada para testar uma condição antes de executar uma ação
UFABC
‹#›
Seleção Composta
Pseudocódigo
se (<condição> )então
		 <instruções>
	senão
		 <instruções>
fimse
Útil quando duas situações podem ser derivadas de uma única condição (uma situação quando a condição é verdadeira e outra, quando é falsa).
UFABC
‹#›
Seleção Composta
Java
if ( <condição> ) {
	 <instruções>;
}
else {
	<instruções>;
}
if ( <condição> )
	 <instrução>;
else
	<instrução>;
Pseudocódigo
se (<condição> )então
		 <instruções>
	senão
		 <instruções>
fimse
Útil quando duas situações podem ser derivadas de uma única condição (uma situação quando a condição é verdadeira e outra, quando é falsa).
UFABC
‹#›
Útil quando precisamos fazer várias seleções no processamento dos dados;
Usualmente ocorre quando uma ação deve ser executada se um conjunto de possibilidades/combinações for satisfeito.
Seleção Encadeada
se <condição1>
 então se <condição2>
 então se <condição3>
 então se <condição4>
 então <comandos>
 fimse
 fimse
 fimse
fimse
UFABC
‹#›
Estruturas condicionais x Condições
Se ((idade > 60) ou (idade < 12)) então
 escreva (”Você tem desconto”)
Fim_se
Se (idade > 18 ) então
 Se (idade > 60) então
	 escreva (”idoso”)
 Senão 
	 escreva (”adulto”)
 Fim_se 
Senão Se (idade > 11 ) então
	escreva (”adolescente”) 
 Senão
	 escreva (”criança”)
 Fim_se
Fim_se
Se (idade < 18) então
 escreva (”Você é de menor”)
Fim_se
Se (idade < 18) então
	 escreva (”Você é de menor”)
Senão 
	 escreva (”Você é de maior”)
Fim_se
Estrutura condicional simples
Estrutura condicional simples
Estrutura condicional composta
Estrutura condicional composta encadeada
Se (idade < 12) então
 escreva (”criança”)
 Se (idade < 2) então
 escreva (”- bebê”)
 Fim_se
Fim_se
Estrutura condicional simples encadeada
Se-Então: SIMPLES 
Se-Então-Senão: COMPOSTA
UFABC
Facilita o teste de um conjunto discreto de valores, associados a ações diferentes.
Seleção Múltipla
JAVA
switch <variável> {
	 case valor1:
		<instruções>;
		break;
	 case valor2:
		<instruções>;
		break;
				.
				:
}
Pseudocódigo
escolha <variável>
	caso Valor1: <instrução1>;
	caso Valor2: <instrução2>;
			.
			:
fimescolha
UFABC
‹#›
11 - Estruturas de Repetição
• 11.1 – enquanto
• 11.2 – para
• 11.3 – faça-enquanto
CONCEITOS / TÓPICOS
UFABC
‹#›
ENQUANTO ... FAÇA : estrutura que testa uma condição e caso seja verdadeira o algoritmo é executado caso contrário finaliza a execução.
 
PARA... FAÇA : estrutura que testa uma condição finita e recebe uma atualização e assim segue até finalizar a contagem. PARA (VALOR INICIAL; VALOR FINAL; ATUALIZAÇÃO / INCREMENTO)
 
REPITA .. ENQUANTO : estrutura que primeiro executa o bloco de comandos e testa uma condição ao final da primeira execução e caso seja verdadeira ela continua uma nova execução e caso seja falso finaliza a execução. 
Estrutura
Qtede Execuções
Condição
ENQUANTO
0ou muitas
Início + Verdadeira
PARA
Valorfinal - Valorinicial
Início + Finita (Implícita)
REPITA .. ENQUANTO
1 oumuitas
Fim +Verdadeira
Estruturas de repetição
UFABC
while ( <condição> )
{ 
 <comandos>;
}
while ( <condição> )
 <comando>;
Pseudocódigo:
enquanto (<condição>)
 <comandos>;
fimenquanto
JAVA
Estruturas de repetição "ENQUANTO"
Para repetir um conjunto de instruções, em um número finito e não conhecido de vezes, verificando uma dada condição antes da execução.
UFABC
‹#›
Para repetir um conjunto de instruções, em um número finito e conhecido de vezes, controlando o número de repetições com um contador.
Java
for ( inicialização ; condiçãoDeLoop; incremento ) {
 <comandos>;
}
Estruturas de repetição "PARA"
Pseudocódigo
para inicialização até condiçãoDeLoop passo incremento faça
 <comandos>;
fimpara
inicialização
condiçãoDeLoop
incremento
UFABC
‹#›
inicialização: nomeia variável de controle (contador) e fornece valor inicial;
condiçãoDeLoop: determina se o loop deve continuar;
incremento: modifica o valor da variável de controle (pode ser decremento – incremento negativo)‏
JAVA
for ( inicialização ; condiçãoDeLoop; incremento ) {
 <comandos>;
}
Estruturas de repetição "PARA"
UFABC
‹#›
 do
 <comando>;
while ( <condição> );
Pseudocódigo
faça
 <comandos>;
enquanto (<condição>)
do
{
 <comandos>;
} while ( <condição> );
Estruturas de repetição "FAÇA"
JAVA
Para repetir um conjunto de instruções, em um número finito e não conhecido de vezes, verificando uma dada condição depois da primeira execução.
UFABC
‹#›
12 – Teste de Mesa
13 – Validação de Dados
14 – Contador
15 – Acumulador
CONCEITOS / TÓPICOS
UFABC
‹#›
 
 
 
CONTADOR
Um “padrão de instrução” bastante utilizado em programas que requerem o uso de REPETIÇÃO é a figura do CONTADOR.
Um “contador” geralmente tem a seguinte forma:
var = var + 1    
ou seja, a variável “recebe” o valor dela somado com mais 1 ... e assim por diante ...
Ex: 
...
var_total = var_total +1;
...
media = soma / var_total;
UFABC
Outro “padrão de instrução” bastante utilizado em programas que requerem o uso de REPETIÇÃO é a figura do ACUMULADOR.
Um “ACUMULADOR” geralmente tem a seguinte forma
var = var + x    
ou seja, a variável “recebe” o valor dela somado com mais x …  e assim por diante ...
Ex: 
...
var_soma = var_soma + nro_digitado;
...
media = var_soma / 50;
ACUMULADOR
UFABC
Algumas Dicas para estudar PI
UFABC
Você sabe o que são as Estratégias de Aprendizagem?
São os processos, procedimentos, comportamentos utilizados para alcançar os objetivos de uma aprendizagem
Você usa estratégias apropriadas para PI?
Algumas Dicas para estudar PI
UFABC
Cognitivas 		
procedimentos para organizar de forma efetiva as informações para atingir os objetivos de aprendizagem
Metacognitivas
processos que permitem o planejamento, monitoramento e a auto-regulação do processo cognitivo
Tipos de Estratégias de Aprendizagem
UFABC
Anotar explicações do professor
Fazer resumos, esquemas, diagramas
Pesquisar materiais extra
Elaborar perguntas e respostas
Decorar a matéria e soluções de problemas
Estas estratégias não são suficientes para estudar PI!
Algumas Estratégias de Aprendizagem Cognitivas 
UFABC
Planejar suas atividades 
Identificar as dificuldades
Conferir as devolutivas
Controlar a ansiedade nas avaliações 
Pedir ajuda ao monitor/professor
Se reunir com colegas para estudar
Estas estratégias também são importantes para estudar PI!
Algumas Estratégias de Aprendizagem Metacognitivas
UFABC
Planeje suas atividades, em especial a resolução de um problema
Leia com atenção o enunciado do problema
Pense na saída e entrada do algoritmo e o que precisa conhecer/calcular para fazer o processamento 
Decomponha o problema em pequenos subproblemas e resolva um de cada vez
Lembre das estruturas de programação aprendidas na aula
Estratégias de Aprendizagem Metacognitivas
UFABC
Identifique suas dificuldades
Faça exercícios simples para identificar em quais estruturas de programação tem mais dificuldade
Fique atento às mensagens de erro do compilador
Teste seu programa 
Confira as devolutivas e corrija seus programas
Participe dos plantões de monitoria e horários de atendimento dos professores
Estratégias de Aprendizagem Metacognitivas
UFABC
Controle a ansiedade nas avaliações 
Não comece diretamente a programar, tome alguns minutos para planejar sua solução
Faça rascunhos do algoritmo
Deixe espaços entre as linhas para acrescentar código se for preciso
Reúna-se com colegas 
É importante discutir várias soluções para o mesmo problema
Aprenda com os erros dos seus amigos
Troque ideias 
Aumente sua interação social
Estratégias de Aprendizagem Metacognitivas
UFABC
Soluções dos desafios propostos
UFABC
‹#›
Vídeo com a solução do desafio mais complexo
 
Slides com a solução do desafio mais complexo
Soluções em Portugol de todos os desafios propostos.
Soluções dos desafios propostos
UFABC
‹#›
BONS ESTUDOS!!!
UFABC
1 - Técnicas de Interpretação de Enunciados de Problemas
2 - Tipos Primitivos de Dados (quais os tipos primitivos de dados)
3 - Declaração de Variáveis (como declarar variáveis)
4 - Declaração de Constantes (como declarar constantes)
5 – Operadores
• 5.1 – Atribuição (para que serve e qual o operador de atribuição)
• 5.2 - Operadores Aritméticos (quais os operadores aritméticos)
• 5.3 - Operadores Relacionais (quais os operadores relacionais)
• 5.4 - Operadores Lógicos (quais os operadores lógicos)
6 – Expressões Aritméticas (como escrever expressões aritméticas)
7 – Operações Lógicas (como escrever expressões lógicas - condição)
8 – Comando de Entrada de Dados (uso do comando leia)
9 – Comando de Saída de Dados (uso do comando escreva)
10 – Estruturas de Seleção
•10.1 - Seleção Simples : se-então
•10.2 - Seleção Composta : se–então-senão
•10.3 - Seleção Encadeada : se-então-senão-se-então-senão...	
•10.4 - Seleção Múltipla : caso-escolha
11 - Estruturas de Repetição
•11.1 – enquanto-faça (quando e como usar)	
•11.2 – para-até (quando e como usar)
•11.3 – faça-enquanto (quando e como usar)
TÓPICOS ADICIONAIS
12 – Teste de Mesa
•12.1 – Como realizar um teste de mesa
13 – Validação de Dados
•13.1 – Como fazer validação de dados (num programa)
14 – Contador
•14.1 – Como é a estrutura de um contador (em programação)
15 – Acumulador
•15.1 – Como é a estrutura de um acumulador (em programação)
CONCEITOS / TÓPICOS
UFABC
‹#›

Outros materiais