jogos de grupo para programação de computadores teach (funcional ou imperativas)
-
19-09-2019 - |
Pergunta
(veja no final de resumo do atualizados questão.)
eu quero transmitir a grupos de pessoas (crianças ou adultos) como um programa de computador escritos em uma linguagem de alto nível obras, e qual é a relação desse programa para o computador como um consumidor dispositivo como eles sabem disso (a caixa que "faz" digitação e "internet" TV-like).
Eu quero fazê-lo sem computadores. Não porque eu não tê-los, mas porque eu quero um divertimento, atividade física que envolve as pessoas a maneira de agir, dança, música, esportes e capture-the-flag são divertidos.
Eu li , sem computadores aqui em stackoverflow; sua referência a Computer Science Unplugged mais se aproxima, mas a maioria das atividades não são demasiado complexos, exigem muitos adereços , ou foco em conceitos de ciência da computação específicos.
Também li que Fundamentals ensinar programação mas quase nada combinando minha descrição no meu primeiro parágrafo acima.
E apenas para uma boa medida, eu li Should funcional estaria programando ensinou antes de programação imperativa? por isso estou aberto a atividades para ensinar qualquer um desses.
Tenha em mente estes requisitos, alguns dos quais são subjetivas:
- física
- há adereços (ou muito poucos)
- fun
- envolve o maior número de sentidos possível
- simula a experiência de escrever um programa e executá-lo em um computador
- não computadores em qualquer lugar na imagem
- é um jogo (competitiva ou cooperativa)
Ocorre-me que uma fonte de material pode ser os jogos de team-building que as empresas enviar-lhe em. Mas aqueles são projetados para formação de equipe, não ensinar o que escrever e executar um programa de computador é. Mas talvez você começa a idéia. Outra maneira de olhar para esta questão é para sugerir o que termos de pesquisa devo usar para encontrar mais respostas - embora eu geralmente pode pegar bons termos de pesquisa, um implícito "ou" de "computadores" e "jogos" não vai encontrar o que eu quero porque essa combinação é reservado para algo totalmente diferente.
Update:
- Obrigado por respostas até agora!
- Eu já esclareceu que estou interessado em simular o funcionamento de um programa de alto nível da linguagem, em vez de tanto como a máquina funciona (1 e 0) ou conceitos específicos
- Com esse esclarecimento, você será capaz de dizer especificamente se sua sugestão jogo ou partida descobrir ensina sobre funcional ou sobre programação imperativo
- Com esse esclarecimento, por favor, também respondem à parte sobre jogos para ensinar a relação de um programa de computador para computador. O que precisa ser ensinado é que outros dispositivos de consumo que, fisicamente parecem semelhantes não têm "programas" - por que
- As suas respostas diretas são muito apreciados; Se você também pode encontrar mais fontes de ready-to-use para além Computer Science Unplugged que será grande demais
- Veja meus comentários sobre as respostas até agora, todos os quais são feitos no espírito de agradecimento para o que você escreveu, e não pretende ser crítico de qualquer forma.
Solução
Fundamentalmente, os computadores só fazer algumas coisas, muito simples:
- Eles podem fazer matemática básica,
- Eles podem mover dados de um lugar para outro,
- Eles podem loop, e
- Eles podem tomar decisões simples.
O poder dos computadores reside no fato de que eles podem fazer essas coisas simples milhões de vezes por segundo.
No nível de jogo físico, eu acredito que isso é tudo que você pode ensinar. Além disso, eu acredito que simulações de computador e / ou multimédia apresentações são obrigados (ou, pelo menos, um quadro branco).
Outras dicas
1. Bolha humana Sort
Apenas teste da bolha Humano Sort => pedir a um grupo de pessoas - eu recomendo a partir min. 4 a máx. infinito :-) - para classificar-se no princípio da Bubble Sort, com base na ordem alfabética do seu nome de família.
Exemplo: https://www.youtube.com/watch?v=8QD- R_MfDsQ
Obras para crianças e adultos.
2. Frenzy humana do robô
Com as pessoas físicas, folhas de papel e setas + símbolos escritos sobre eles, reproduzir o princípio da Robot Frenzy na vida real. Procure por "Lightbot" no Google - Eu não posso postar mais de dois links ainda. Acabei de criar a minha conta para responder aqui: -)
3. Primo
Para crianças muito jovens (depois de 4 anos de idade), eu realmente gosto Primo, um pequeno brinquedo programável você colocar em movimento em uma grade => http://www.primotoys.com/
Você poderia demonstrar bloqueio fio por ter duas equipas concorrentes para obter duas metades de uma chave que abre a porta para alguma recompensa (doces para as crianças etc.). Cada equipe pega metade da chave de cada um e, em seguida, não pode abrir a porta. Se eles cooperam em seguida, ambos começam a recompensa.
Este pode ser um pouco avançado -. Não tenho certeza agora tendo re-lê-lo
Foi realmente divertido no CS Classe: The Living Máquina de Turing.
Você precisa:
-
Alguns lugar para colocar as regras formais da máquina, no início, de puro caos :-D
-
Seres humanos:
a. Um grupo de pessoas que estão na fila e simulam a memória linear, você só precisa encontrar uma maneira de distinguir entre 'uns' e 'zeros'. Fizemos isso por estar em primeiro plano ou em segundo plano, mas eu também podia imaginar outras maneiras ...
b. Uma pessoa para cada estado da máquina
c. A 'cabeça de leitura', que se move para a esquerda ou direita na memória.
Agora você só precisa programas de exemplo, simplesmente começar, por exemplo, com invertendo um padrão. Depois ir para programas mais complexos como aumentar / diminuir.
Para inspiração: um exemplo de como as pessoas físicas podem materializar o algoritmo Bubble Sort através da dança => https : //www.youtube.com/watch? v = lyZQPjUT5B4