\( \newcommand{\abcp}[3]{\frc{#1+\sqrt{#2}}{#3}} \newcommand{\chao}[1]{\left\lfloor #1 \right\rfloor } \newcommand{\nPr}[2]{{}^{#1}A_{#2} } \newcommand{\combin}[2]{{}^{#1}C_{#2} } \newcommand{\cmod}[3]{#1 \equiv #2\left(\bmod {}{#3}\right)} \newcommand{\frc}[2]{\displaystyle\frac{#1}{#2}} \newcommand{\mdc}[2]{\left( {#1},{#2}\right)} \newcommand{\mmc}[2]{\left[ {#1},{#2}\right]} \newcommand{\cis}{\mathop{\rm cis}} \newcommand{\ImP}{\mathop{\rm Im}} \newcommand{\ReP}{\mathop{\rm Re}} \newcommand{\sen}{\mathop{\rm sen}} \newcommand{\tg}{\mathop{\rm tg}} \newcommand{\cotg}{\mathop{\rm cotg}} \newcommand{\cosec}{\mathop{\rm cosec}} \newcommand{\cotgh}{\mathop{\rm cotgh}} \newcommand{\cosech}{\mathop{\rm cosech}} \newcommand{\sech}{\mathop{\rm sech}} \newcommand{\sh}{\mathop{\rm sh}} \newcommand{\ch}{\mathop{\rm ch}} \newcommand{\th}{\mathop{\rm th}} \newcommand{\senEL}[1]{\mathop{\rm sen}^{#1}} \newcommand{\tgEL}[1]{\mathop{\rm tg}^{#1}} \newcommand{\cotgEL}[1]{\mathop{\rm cotg}^{#1}} \newcommand{\cosecEL}[1]{\mathop{\rm cosec}^{#1}} \newcommand{\shEL}[1]{\mathop{\rm sh^{#1}}} \newcommand{\chEL}[1]{\mathop{\rm ch^{#1}}} \newcommand{\thEL}[1]{\mathop{\rm th^{#1}}} \newcommand{\cotghEL}[1]{\mathop{\rm cotgh^{#1}}} \newcommand{\cosechEL}[1]{\mathop{\rm cosech^{#1}}} \newcommand{\sechEL}[1]{\mathop{\rm sech^{#1}}} \newcommand{\senq}{\senEL{2}} \newcommand{\tgq}{\tgEL{2}} \newcommand{\cotgq}{\cotgEL{2}} \newcommand{\cosecq}{\cosecEL{2}} \newcommand{\cotghq}{\cotghEL{2}} \newcommand{\cosechq}{\cosechEL{2}} \newcommand{\sechq}{\sechEL{2}} \newcommand{\shq}{\shEL{2}} \newcommand{\chq}{\chEL{2}} \newcommand{\arctg}{\mathop{\rm arctg}} \newcommand{\arcsen}{\mathop{\rm arcsen}} \newcommand{\argsh}{\mathop{\rm argsh}} \newcommand{\argch}{\mathop{\rm argch}} \newcommand{\argth}{\mathop{\rm argth}} \newcommand{\Var}{\mathop{\rm Var}} \newcommand{\vect}[1]{\overrightarrow{#1}} \newcommand{\tr}[1]{ \textnormal{Tr}\left({#1}\right)} \newcommand{\C}{\mathbb{C}} \newcommand{\E}{\mathbb{E}} \newcommand{\H}{\mathbb{H}} \newcommand{\I}{\mathbb{I}} \newcommand{\N}{\mathbb{N}} \newcommand{\P}{\mathbb{P}} \newcommand{\Q}{\mathbb{Q}} \newcommand{\R}{\mathbb{R}} \newcommand{\Z}{\mathbb{Z}} \newcommand{\til}{\sim} \newcommand{\mdc}{\mathop{\rm m.d.c.}} \newcommand{\mmc}{\mathop{\rm m.m.c.}} \newcommand{\vect}[1]{\overrightarrow{#1}} \newcommand{\dfrc}{\displaystyle\frac} \newcommand{\Mod}[1]{\ (\mathrm{mod}\ #1)} \)
Mostrar mensagens com a etiqueta Hexagonos. Mostrar todas as mensagens
Mostrar mensagens com a etiqueta Hexagonos. Mostrar todas as mensagens

terça-feira, 22 de julho de 2025

Hexágonos do passado

 Enquanto escrevo isto, o meu pai está no serviço de urgências. 
E eu tenho uma consulta médica daqui a umas horas, devia estar a dormir...

Estou deitado, na cama, acordado.

O facebook continua a achar que eu estou interessado em apicultura.

Num dos posts anteriores, eu disse que "Python é só a linguagem da moda".

Bem, é verdade sim.
Recentemente alguns conhecidos meus passaram a entreter-se com 'uma consola' dos anos 80.

O Zx Spectrum.

Eu nunca tive um Spectrum. Nem vou comprar esta nova versão.
 Um familiar meu teve, colegas meus do (agora) 3°ciclo tiveram, e na altura eu fiquei com a vaga ideia do que era. A primeira vez que vi código – sem perceber patavina daquilo – foi num ZX Spectrum.

Sim, aquilo era programável! Podia-se gravar  código em cassetes e carregar código a partir de cassetes!

Eu fiquei com dificuldades em chamar consola àquilo. Aquilo para mim, era um computador.

A primeira vez que escrevi código meu foi para uma calculadora. Foi nessa altura que percebi o verdadeiro potencial do Spectrum. 

Escrever código meu para Spectrum, só o fiz muitissimo mais tarde, só depois de ter abandonado a Universidade da Madeira, e só por curiosidade.

O Sinclair Basic é muito semelhante a algum do    código que escrevi para algumas calculadoras.

Na verdade, não foi bem para um Spectrum, foi para um emulador de Spectrum. 

Não me apetece gastar dinheiro num Spectrum, em primeiro lugar, porque neste momento, não estou a trabalhar, e em segundo lugar, porque consigo emular legalmente num Raspberry Pi que me saiu bem mais barato que aquela 'consola'.

Também não quero me por a gastar muito tempo num Spectrum mas... sabem? Consegue-se programar uma pavimentação de hexágonos num Spectrum (Pronto, num emulador).

Eu não vou escrever sinclair basic no telemovel, mas posso partilhar screenshots que tenho de outras coisas que copiei de livros para um emulador, enquanto aprendia o essencial...
Estes screenshots vieram de um Raspberry Pi.






O "Espaçoporto" é do livro "Programming your Zx Spectrum" de Tim Hartnell e Dylwin Jones.
Eu tive acesso a uma versão em português, mas, as minhas experiencias com livros de Matemática mostraram-me que versões originais, são sempre  melhores do  que traduções por isso acabei a adquirir a versão original, online.

Será que ainda consigo converter o programa de pavimentações que escrevi na calculadora para o Spectrum? 
Parece que sim! - Não foi escrito no smartphone. Foi escrito em alguns minutos, num emulador a correr no Raspberry Pi, olhando para o código da calculadora e reutilizando código antigo.
Não está optimizado, foi mesmo só para mostrar, que até num Spectrum se faz.
Usa o mesmo algoritmo que criei para a calculadora...

PS: 
  • Também é fácil criar um "Espaçoporto" na calculadora, mas ... tenham juizo.
  • Obviamente, à excepção do "Hello World", nenhum dos códigos Sinclair Basic está completo nas imagens.
    No código da pavimentação, as linhas 6,7,8 e 9 podem ser apagadas. Foram usadas para testes...
  • Não "colem" linguagens de programação a Matemática. Matemática transcende isso. Pode-se e deve-se recorrer a tudo o que ajude a ensinar Matemática. Só que deve-se distinguir uma coisa da outra. Quem não faz ideia do que diz, que feche a boca e informe-se primeiro.
  • O meu pai teve alta no princípio da manhã, e eu lá tive a minha consulta com 1h30m de atraso. Nem reclamo. Já tive piores!

segunda-feira, 14 de julho de 2025

Os hexágonos continuam: Pavimentações com hexágonos

 

A foto é de uma pavimentação na Camacha, Madeira, onde passo (quase) diariamente.


O tapete de hexágonos é do snack-bar Pinoco, no centro da Camacha. O pé é meu.

Há muito mais hexágonos para além das abelhas.
O pavimento que eu usei na imagem dos robôs do post anterior, escrevi-o em Python.

O que me leva à questão: sem  recorrer a inteligência artificial, modelos de linguagem e afins, como elaboraria um algoritmo para gerar uma pavimentação de hexágonos? Pode ser em pseudo-código. Python é só 'a linguagem da moda' e não gosto da ideia de ficarmos presos a ela. 

Se eu me lembrar a por uma calculadora na mochila, amanhã, volto ao assunto.

Havendo hexágonos em tanto lado, até em V'ger e C'quer ( C'quer é a versão de V'ger num    universo paralelo, onde a Terra em vez de sondas Voyager mandou sondas Conqueror... quem estiver interessado nessa versão pode jogar Star Trek Online ou então ver os meus vídeos no canal Youtube 'CPauloF Joga').

Eu posso partilhar a minha versão de um algoritmo, só que em vez de um mundo de utilizadores (também são necessários, não me interpretem mal), prefiro um  mundo com gente criativa.
Pense um bocado.
Como geraria uma pavimentação de hexágonos?

  • Com lápis, régua, compasso e esquadro?
  • Com papel, lapis, régua, compasso, mas sem esquadro?
  • E informaticamente.  [Em pseudocodigo, num computador, numa calculadora, em BASIC, sem Python]

E...? Está bem. Não pergunto mais hoje. Não vou dar soluções. Posso mostrar fotos, só para terem noção que as soluções existem.

(update de 15 de Julho de 2025)



Estão a ver? Eu não estou a perguntar nada que não tenha já feito. A Casio 9860GII não tem Python.

O que interessa não é a linguagem, nem mesmo saber programar. É a capacidade de conceber um algoritmo, 'uma receita' para fazer isto. Depois, numa linguagem que o leitor conheça, o leitor escreve a receita, e uma máquina que conheça a linguagem... executa.

Eu poderia fazer mais perguntas, vou deixar para outro dia.


PS: Para escrever o codigo BASIC usado para gerar as pavimentações na calculadora... fiz os cálculos mentalmente, mas houve apenas um (até simples) que foi escrito num guardanapo, no café.

domingo, 13 de julho de 2025

Hexágonos e Abelhas.

 Em 2006 ao chegar a Lisboa, uma pessoa disse-me:
 "Eu conheço uma discoteca da Madeira. Acho que se chama 'As abelhas'."

Eu cerrei os olhos, olhei para ele. Não será "Vespas?"

Respondeu-me: "Sim, era um bicho com asas."

Nos últimos tempos o facebook bombardeou-me com vídeos e informações sobre abelhas. Eu não consumo nem sou obrigado a consumir tudo o que o facebook quer que eu consuma. Coloquei vários 'não estou interessado', mas lá o algoritmo dele continua a bombardear-me com o assunto.

Porquê? Bem...

Na minha página de facebook, "Carlos Paulo Freitas, matemático, professor e explicador", até Setembro de 2024 eu partilhei algumas imagens com tentativa de humor, com alguns dos meus robôs de lego.

Esta, foi a última, é do dia 6 de Setembro de 2024, (o dia em que uma crise convulsiva 'que surgiu do nada' me levou às urgências).

O cenário bem... é a minha sala de explicações, modificada. Substitui as persianas por hexágonos. 

Os hexágonos aparecem em todas.

Porquê hexágonos? Bem... hexágonos aparecem em vários ambientes de ficção científica.

Por exemplo, esta imagem é de 'Star Trek the motion picture' de 1979.

Sendo de 1979, espero não estar a dar novidades a ninguém, mas pronto, cá vai um alerta de spoiler para o próximo parágrafo.

O filme não foi muito bem recebido pela crítica, por boas razões, mas eu gostei do conceito. Uma sonda Voyager da Nasa, lançada no século XX ganha consciência e regressa à Terra, no século XXIII para conhecer o seu criador. A sonda agora sob o nome V'ger (contracção de Voyager) é uma criança birrenta no corpo de um ser muito poderoso, a causar destruição pelo espaço conhecido, rumo à Terra... O resto e o contexto da imagem, bem se quiserem, vão ter de ver o filme e digerir os efeitos especiais da altura.

Por outro lado, de facto é uma forma utilizada pelas abelhas que são bem mais inteligentes do que eu tinha noção.
Há um episódio de "Cosmos: Possible Worlds" que eu vi durante a pandemia (mas não encontro no Disney+?) especificamente sobre as abelhas e que até envolve Matemática.
As abelhas de facto subiram muito na minha consideração depois desse episódio.

O episódio tem o título "The search for intelligent life on Earth" 
A piada é, que como eu disse... não é sobre seres humanos.
Tomem lá um link para o youtube sobre o assunto


Mas cuidado. Não vá o facebook pensar que estão interessados em apicultura e bombardear-vos com informações sobre abelhas.


Espero que o José Carlos Pereira não se chateie por eu partilhar esta parte de uma das nossas conversas. Ele contribuiu com o emoji.

Um dia desenho-vos uma abelha Maia. 
E volto a falar de hexágonos e abelhas.
Os meus robôs também vão voltar.