Listas e algoritmos (em Scratch)
Introdução à Programação
BSI – DEINFO - UFRPE
1
Operações para listas em Scratch
• Adiciona um item à lista
(aumenta o tamanho da lista
• Insere um item em uma
posição determinada da lista
(aumenta o tamanho da lista)
• Substitui um item de uma
determinada posição por um
novo valor
2
Operações para listas em Scratch
• Apaga um item de determinada
posição da lista (leva à redução do
tamanho da lista)
• Recupera o conteúdo de determinada
posição da lista
• Retorna o tamanho da lista
• Verifica se a lista contém determinado
elemento
3
Exemplo: Pesquisa
• Determinar se um número está presente
ou não em uma lista
– Passos
• Definir o estado inicial da lista
• Inserir números na lista
• Solicitar valor a ser procurado na lista
• Determinar se o valor solicitado está presente ou
não
– Dados
• Que variáveis são necessárias para resolver este
4
problema?
Exemplo:
Pesquisa em
uma Lista
5
Pesquisa na
Lista
6
Pesquisa na Lista
1. Definir o estado inicial da lista
7
Pesquisa na Lista
2. Inserir números na lista
8
Pesquisa na Lista
3. Solicitar valor a ser procurado na lista
9
Pesquisa na Lista
4. Determinar se o valor solicitado está presente
ou não
10
Exemplo
• Determinar se uma lista está ordenada ou
não
– Passos
• Definir o estado inicial da lista
• Inserir números na lista (por teclado)
• Determinar se está em ordem ou não
– Dados
• Que variáveis são necessárias para resolver o
problema? Pense sobre o uso de um contador para
indexar a lista e uma variável para registrar se cada
comparação satisfaz o critério de ordenação 11
12
Exemplo: Lista Ordenada
1. Definir o estado inicial da lista
13
Exemplo: Lista Ordenada
2. Inserir números na lista (por teclado)
14
Exemplo: Lista Ordenada
3. Determinar se está em ordem ou não:
– inicializar variáveis: contador para indexar a lista e uma
variável para registrar se cada comparação satisfaz o
critério de ordenação
15
Exemplo: Lista Ordenada
4. Determinar se está em ordem ou não:
16
Exemplo: Lista Ordenada
17
Exercício
1. Escreva um script em Scratch para fazer o
seguinte:
– Ler o valor da nota final de 10 estudantes de uma
disciplina
– Calcular a média das notas dos estudantes de uma
disciplina
– Determinar a quantidade de estudantes que
tiveram nota superior à média calculada
– Calcular também a porcentagem de estudantes
com nota abaixo da média. Utilize uma lista para
guardar as notas recebidas.
18
– Informar todos os valores na tela
Exercício
2. Dada uma lista de números, faça um
algoritmo para ordená-la (ordem crescente).
– Sugestão: ler os números do teclado, enquanto o
usuário não digitar “fim”
3. Faça um algoritmo que leia 10 números reais
e armazene-os em uma lista. Em seguida, o
programa deve armazenar os mesmos
números em uma outra lista, na ordem
inversa.
19
Exercício
4. Faça um algoritmo que leia 20 números
inteiros e armazene-os numa lista. Em
seguida, armazene os números pares em
uma lista PAR e os números ímpares na lista
IMPAR.
20
Exercício
5. Utilizando listas faça um programa que faça 5 perguntas para
uma pessoa sobre um crime. As perguntas são:
–
–
–
–
–
"Telefonou para a vítima?"
"Esteve no local do crime?"
"Mora perto da vítima?"
"Devia para a vítima?"
"Já trabalhou com a vítima?"
O programa deve no final emitir uma classificação sobre a
participação da pessoa no crime. Se a pessoa responder
“sim” a 2 questões ela deve ser classificada como "Suspeita",
entre 3 e 4 como "Cúmplice" e 5 como "Assassino". Caso
contrário, ela será classificada como "Inocente"
21
Download

04 Scratch