Listas e algoritmos (em Scratch) Introdução à Programação BSI – DEINFO - UFRPE
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
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
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 problema?
Exemplo: Pesquisa em uma Lista
Pesquisa na Lista
Pesquisa na Lista 1. Definir o estado inicial da lista
Pesquisa na Lista 2. Inserir números na lista
Pesquisa na Lista 3. Solicitar valor a ser procurado na lista
Pesquisa na Lista 4. Determinar se o valor solicitado está presente ou não
Exemplo Determinar se uma lista está ordenada ou não Passos Dados 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
Exemplo: Lista Ordenada 1. Definir o estado inicial da lista
Exemplo: Lista Ordenada 2. Inserir números na lista (por teclado)
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
Exemplo: Lista Ordenada 4. Determinar se está em ordem ou não:
Exemplo: Lista Ordenada
Exercício 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. Informar todos os valores na tela
Exercício 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” 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.
Exercício 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.
Exercício 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"