Escolar Documentos
Profissional Documentos
Cultura Documentos
Parte1 Modulo1
Parte1 Modulo1
NOTAS_DE_AULA_ENCONTRO1_PARTE1_MODULO_1
Curso: SISTEMAS DE INFORMAÇÃO Turma: 1º período
Disciplina: PROJETO DE CURSO Data: 24/05/2021
1.1. Introdução
O computador é uma máquina que realiza uma variedade de tarefas de acordo com instruções específicas. É
uma máquina de processamento de dados, que recebe dados através de um dispositivo de entrada e o
processador os manipula de acordo com um programa.
O computador tem dois componentes principais. O primeiro é o Hardware que é a parte palpável (que se
pode tocar) do computador. Ele é composto de partes eletrônicas e mecânicas.
O segundo componente principal é o Software que é a parte impalpável (não se pode tocar) do computador.
Ele é composto de dados e dos programas de computador.
O software é um programa que o computador usa para funcionar. Ele é armazenado em algum dispositivo de
hardware como um disco rígido, mas é em si mesmo intangível. Os dados que o computador usa podem ser
qualquer coisa que o programa precise. Os programas agem como instruções para o processador.
Alguns tipos de programas de computador:
1. Programas de Sistemas: Programas necessários para que o hardware e o software funcionem juntos
corretamente. Exemplos: Sistemas Operacionais como Linux e outros.
2. Aplicativos: Programas que as pessoas usam para realizar determinado trabalho. Exemplos:
Processadores de Textos, Jogos, Planilhas Eletrônicas entre outros.
A memória, onde se encontram os dados e as instruções que a CPU precisa para realizar suas tarefas,
dividida em diversos locais de armazenamento que possuem seus respectivos endereços lógicos. A CPU
acessa a memória pelo uso destes endereços.
Na linguagem comum, entende-se por instruções “um conjunto de regras ou normas definidas para a
realização ou emprego de algo”.
Em informática, porém, instrução é a informação que indica a um computador uma ação elementar a
executar.
Convém ressaltar que uma ordem isolada não permite realizar o processo completo, para isso é necessário
um conjunto de instruções colocadas em ordem sequencial lógica.
Por exemplo, se quisermos fazer uma omelete de batatas, precisaremos colocar em prática uma série de
instruções: descascar as batatas, bater os ovos, fritar as batatas, etc...
É evidente que essas instruções tem que ser executadas em uma ordem adequada – não se pode descascar
as batatas depois de fritá-las.
Dessa maneira, uma instrução tomada em separado não tem muito sentido; para obtermos o resultado,
precisamos colocar em prática o conjunto de todas as instruções, na ordem correta.
Instruções são um conjunto de regras ou normas definidas para a realização ou emprego de algo. Em
informática, é o que indica a um computador uma ação elementar a executar.
Capítulo 2. Scratch
2.1. Introdução ao Scratch
Scratch é uma nova linguagem de programação desenvolvida pelo Lifelong Kindergarten Group no MIT Media
Lab (http://llk.media.mit.edu), com o apoio financeiro da National Science Foundation, Microsoft, Intel
Foundation, Nokia, e consórcios de investigação do MIT Media Lab.
O Scratch permite criar as tuas próprias histórias interativas, animações, jogos, música e arte - e compartilhar-
las através de websites.
A programação é efetuada através da criação de sequências de comandos simples, que correspondem a
blocos de várias categorias, encaixados e encadeados de forma a produzirem as ações desejadas. Os
projetos Scratch são baseados em objetos gráficos chamados Sprites. Pode-se mudar a aparência de um
Sprite, dando-lhe um novo traje, ou fazê-lo parecer-se com uma pessoa, um objeto ou até mesmo um animal.
Ainda, Pode usar qualquer imagem como traje: podes desenhar no "Editor de Pintura", importar uma imagem
do disco rígido, ou arrastar uma imagem a partir de um site.
Pode-se dar instruções a um Sprite, indicando-lhe para se mover, reproduzir música ou reagir a outros
Sprites. Para isso basta criar sequências de comandos, arrastando-os e encaixando-os em blocos, tal como
se fossem peças de Lego ou de um puzzle. Quando clicar duas vezes (duplo-clique), o Scratch executa os
blocos a partir do topo do script para o final.
Em resumo, o Scratch é um software que permite criar histórias, jogos e animações. Isto tudo de forma
simples, animando o movimento de objetos.
Quando abrimos o Scratch, entramos diretamente para o modo de Edição, que nos permite criar ou modificar
projetos. Veremos agora um pouco sobre a tela do Scratch e os seus principais Funções. Observe a figura a
seguir a área de trabalho do Scratch.
Sprite – personagem que pode receber animação, incluindo movimentação, sons, mudança de tamanho,
falas, etc.
Categoria de comandos _ Os comandos são divididos em categorias e são elas: Movimento, aparência,
som, caneta, controle, sensores, operadores, variáveis;
Blocos de comandos da categoria _ Onde estão agrupados os comandos de uma categoria selecionada;
Opções para o sprite _ Opções principalmente para área de Scripts, trajes e sons;
Área de edição e conexão de Scripts (Área de Scripts ou Área de comandos) _ Nesta área é feita a
programação e a união dos blocos, os blocos devem ser arrastados para esta área;
Palco _ onde os objetos são colocados e onde é possível ver o resultado da programação criada. O objeto
inicial que aparece no palco é o gato;
2.2.2.2. Palco
O palco é onde ficará e mostrará as histórias, jogos e animações. Os Sprites podem moverse e interagir uns
com os outros no palco.
O palco tem 480 unidades de largura e 360 unidades de altura e está dividido entre as coordenadas X e Y . O
centro do palco tem as coordenadas 0 em "X" e 0 em "Y" .
Para saber a posição de um determinado ponto dentro do palco, mova o mouse até o ponto desejado e
observe logo abaixo do palco no canto inferior direito. Pela imagem abaixo, indica-se que o cursor está no
ponto X:100 e Y: 50.
Categoria de comandos
Como foi dito anteriormente, temos um grupo de 8 categorias de comandos e elas são:
Dentro das categorias disponíveis na Paleta de Comandos, há três tipos principais de comandos:
Comandos Simples Estes comandos têm encaixes no topo e no fundo, como . Alguns
destes comandos têm áreas onde se pode escrever números ( ) ou escolher um item
a partir do menu pull-down (tal como "miau" no bloco ). Alguns destes comandos têm um formato em
forma de "C", onde podes inserir outros comandos, como por exemplo .
retangulares .
Alguns valores têm uma check-box junto aos mesmos. Assinalando a check-box, o valor fica visível no Palco,
sendo atualizado dinamicamente à medida que for mudando. Os valores podem ser mostrados em diversos
formatos: um pequeno mostrador com o nome do indicador; um mostrador largo, sem qualquer nome;
com um slider que permite alterar o valor (apenas disponível para variáveis).
Os blocos são divididos por categoria. A seguir mostramos os blocos de cada uma das categorias destinadas
ao mBot e personagens, lembrando que as categorias mudam conforme o tipo de dispositivo.
2.3.1 Movimento
A categoria movimento permite andar determinada quantidade de passos, virar determinados graus, ir para
posição aleatória, deslizar durante alguma quantidade de segundos, apontar em uma direção e mudar as
coordenadas x e y para valores determinados. Além disso, permite incrementar a posição atual do
personagem, isso é feito adicionando valores as coordenadas x e y. Outro recurso que é muito utilizado nessa
categoria é o bloco “se tocar na borda, volte”, que permite ao personagem identificar quando toca na borda.
Figura 1: blocos relacionados a “Movimento”
2.3.2 Aparência
A categoria aparência contém blocos que alteram a aparência do ator ou do dispositivo, a Figura 15
mostra os blocos de Aparência para um ator. Inicialmente deve-se clicar sobre o ator e em seguida, clica-se
na categoria Aparência para ver todos os blocos disponíveis.
Na Figura 3 vemos um programa inicial para o personagem Panda, o primeiro item que inserimos foi o
evento para que o programa saiba quando o usuário quer iniciar a ação do personagem (sempre
deve haver um evento que inicie). Quando o usuário clicar na bandeira abaixo do palco (apontado pela seta
vermelha na Figura 4), o programa inicia sua execução, que no caso fará com que o Panda diga “Olá” por
dois segundos, pois usamos o bloco conforme pode ser visto na Figura 4. O botão
vermelho interrompe a ação dos personagens.
Figura 3: primeiro programa – mudando a aparência do personagem
2.3.3 Som
Essa categoria existe apenas para atores. Ela permite tocar, iniciar e parar o som, alterar o efeito,
definir e limpar todos os efeitos, alterar o volume.
Essa categoria contém blocos para que o personagem ou mBot perceba a ocorrência de alguma coisa
no ambiente, por exemplo, “quando” a bandeira verde for clicada, ou a tecla de espaço for pressionada, ou o
botão integrado for pressionado, ou mesmo quando o personagem receber mensagens. As duas categorias
são parecidas para o mBot e para o ator, conforme pode ser observado na Figura 21. Geralmente estes
eventos iniciam a ação do dispositivo ou ator. Na Figura 7, o Panda diz “Olá” por 2 segundos, altera seu
tamanho em 10% e em seguida pensa “Humm” durante dois segundos, o ator Alladin tem seu próprio script e
tem ações diferentes do Panda.
Essa categoria permite ao ator testar várias situações relativas ao ambiente: quando o personagem
tocar o ponteiro do mouse ou o limite do palco, ou uma cor, ou mesmo um outro personagem; existe também
a possibilidade enviar e receber mensagens, verificar teclas pressionadas, usar um cronometro etc.
Nas versões mais recentes do scratch foram adicionados sensores de ruído, número do cenário, ano, número
de dias e nome do usuário.
Os blocos da categoria sensores sempre são utilizados em conjunto com blocos da categoria
Controle, pois é necessário testar as diferentes situações e reagir de maneira diferente conforme observado
no ambiente. Por exemplo, um personagem deve caminhar até encontrar o fim do palco.
2.3.6 Controle
Essa categoria é uma das mais importantes pois contém estruturas de decisão e controle de fluxo. As
estruturas de decisão consistem do teste de uma determinada condição e execução de um bloco de
comandos ou de outro mediante o resultado do teste. Também há estruturas de repetição para que um
determinado na conjunto de bloco de comandos seja repetido, também é possível ter um laço de repetição
infinito usando o bloco “repetir para sempre”, este bloco é particularmente útil pois força o ator a ter uma
rotina. Há, ainda, blocos para fazer com que se espere por determinado tempo ou parar.
Na Figura 10, fizemos com que o Panda, após fazer o cumprimento, passasse a andar 50 passos, virando 15º
em seguida, e estas duas ações são repetidas infinitamente ou até que o usuário clique no botão vermelho de
interromper a execução, logo abaixo do palco. É importante observar que o personagem não caminha dando
passos, mas apenas alterando sua posição ao longo do palco, isso associado a virada de 15º faz com que o
Panda rodopie na tela.
Na Figura 11 usamos o bloco de comando se-senão em que o personagem panda anda 50 passos,
vira 15º e em seguida verifica se tocou no Aladdin, caso isso ocorra, o Panda emitirá uma mensagem
“Desculpe amigo”.
2.3.7 Operadores
Essa categoria consiste de operadores lógicos (e, ou, não), aritméticos (+, -, *, /) e relacionais (>,<,=),
além de funções de que podem ser aplicadas a palavras (juntar palavras, selecionar uma letra dentro de uma
palavra, verificar se a palavra contém uma determinada letra etc. Há ainda o resto da divisão,
arredondamento, valor absoluto e escolha de números aleatórios.
Na Figura 13 vemos um exemplo de uso do operador “>”. O operador precisa ser encaixado dentro de
um teste condicional. No caso, após o panda andar 50 passos, se o número aleatório (entre 1 e 10) gerado
for maior que 5, o Panda vira 30°, senão, o Panda vira 15º. Todo operador possui operandos, alguns são
binários pois recebem dois operandos, é o caso do operador > em que nós precisamos de dois números para
saber se um é maior que o outro, neste exemplo usamos o número gerado aleatoriamente (ao acaso) e o
valor 5.
Essa categoria permite criar uma variável ou criar uma lista. Uma variável é uma informação que vai
ficar guardada na memória durante a execução do programa, podendo esta informação ser um número ou
texto. Muitas vezes queremos registrar o número de vezes que um personagem deve executar uma ação,
neste caso podemos usar a variável. Além disso, há algumas operações para alterar o valor da variável e
ainda bloco para mostrar e ocultar o valor da variável.
Essa categoria permite criar seu próprio bloco. Quando você cria seu próprio bloco, pode reutilizá-lo
quantas vezes precisar, por exemplo, um personagem operado por meio das setas de navegação do teclado
é algo muito comum e em programas é usual que se use esse recurso, assim é mais útil produzir a sequência
de blocos que geram a movimentação e reutilizar.
Figura 15: blocos relacionados a “Meus Blocos”
Os Sprites, ou atores, são os personagens que executarão as ações. No Scratch é possível utilizar
personagens como animais, pessoas, plantas, adereços, fantasias, comidas, edifícios etc. Quando o Scratch
é aberto, no palco já está aparecendo o gato. Mas nem sempre se deseja usa-lo e então é possível inserir ou
criar um novo objeto: um ator pode ser adicionado clicando no botão adicionar, logo abaixo do palco, a Figura
17 mostra quando paramos o ponteiro do mouse sobre o botão adicionar, as opções de selecionar ator,
pintar, surpresa e enviar ator são mostradas. Quando o usuário clica sobre o botão adicionar, será aberta a
janela da Figura 18, com as diversas categorias de atores. Após a escolha do personagem, deve ser
construído um script para o mesmo, este script deverá conter ações, decisão, uso de sensores etc.
Normalmente, um ator possui mais de uma “fantasia”, uma fantasia é uma variação no personagem, usada
para simular movimentos de uma dança ou andar ou situações diversas, o Panda possui duas fantasias para
simular que está andando, mas para produzir este efeito é preciso criar um script com o bloco que alterne de
fantasia, logo falaremos disso.
De agora em diante vamos começar a estudar primeiramente os comandos básicos do scratch e depois
passar a conhecer melhor suas funções. Primeiramente devemos (como mostra a figura ao lado) mover, ou
arrastar um comando para a área de scripts. Para isso é só clicar em cima do objeto desejado, segurar e
movê-lo para a área de Script.
Para executar este simples comando, clique sobre ele. Observará que após o clique no comando “mova 10
passos”, nosso Sprite se moverá. Observe que as coordenadas mudarão também. Observe que alguns
comandos, como os do exemplo acima tem campos de edição, por exemplo e para alterar o valor, clica-se na
no espaço da área branca e escreve o novo número. Portanto pratique clicando no número “10”, e altere para
“-10”. Pressione novamente o comando e perceberá que nosso Sprite e as coordenadas voltarão para o lugar
de origem.
Esta aba é realmente onde podemos fazer nossos Sprites andarem, ou seja se movimentarem pelo palco.
Começaremos a usar o comando mais comum e primordial para o Scratch, ou seja o “mova”. O comando
mova, como visto acima, é o comando que dá o movimento para frente ou para trás do nosso Sprite. Se for
para frente, colocar o passo positivo, por exemplo “mova 10 passos”, caso para trás, ou seja, de “costas” no
caso do nosso Sprite padrão, coloca-se “mova -10 passos”. Para testar, altere o número de passos do
comando que está na área de Script e observe o que acontece na área do sistema de coordenadas. Para
altera-lo, clique uma vez em cima do numeral “10” e substitua por “-10”.
Percebe-se que com o mova, o nosso objeto somente se movimenta no eixo X (ou seja, para frente e para
trás). Precisamos de alguma ferramenta que faça com que ele faça o movimento entre o eixo Y também. Para
isso iremos utilizar a rotação através do comando “Vire.” Lembre-se que temos um sistema de coordenadas e
de direção. Visto estes 2 sistemas anteriormente, podemos dizer que o comando mova está diretamente
ligado ao sistema de coordenadas e o comando vire está ligado diretamente ligado ao sistema de direção, ou
seja, com o vire trabalhamos o giro. Este giro será dado em graus. Para testar, mova os dois comandos de
vire (Figura abaixo) para a área de Script. Faça o teste clicando algumas vezes no primeiro vire e observe
que nosso Sprite vai girando. Observe também em quantos graus está o objeto nas informações do Sprite.
Atenção: Volte para o tópico “Mostrando sistema de coordenadas e orientações” e perceba que o sistema de
graus, não corresponde ao que normalmente usamos. Tente girar ora para um lado, hora para o outro e veja
por fim o que acontece. Após fazer os testes, deixe o Sprite na direção 90.
Fontes:
Apostila e-jovem “Lógica de programação: scratch e python”
PIBIC JÚNIOR - Programação Orientada a blocos: aprendendo a programar com o mBot. Carolinna
Élida Gomes de Morais.