Ruby – dias da semana

200px-Ruby_logo.svg

Podemos dizer que Ruby é uma linguagem de script interpretada, assim como Python e Scratch por exemplo, já que basta um arquivo-fonte escrito em alto nível e o ambiente de interpretação do script.

Para ilustrar a estrutura de seleção múltipla em Ruby, veja este exemplo em que cada dia da semana está associado a um número inteiro.  Por influência da Bíblia e da língua portuguesa, sábado é o sétimo dia, assim como segunda-feira é o segundo dia, e assim por diante.

rb_case

Observe que a estrutura começa com case e finaliza com end.  As cláusulas when seguidas pelos valores possíveis da variável day são separadas das respectivas instruções pelo ponto-e-vírgula, por then ou adicionando-se uma nova linha, como pode ser visto nas duas últimas opções.

Por que puts pode ser usado com parênteses e aspas duplas ou sem parênteses e aspas simples? Vamos descobrir?

Dialetos do BASIC – nota do aluno

A sintaxe da estrutura de seleção múltipla em BASIC, em geral, é a seguinte:

Select Case expressão

Case lista1

instruções1

Case listaN

instruçõesN

Case Else | Default

instruçõesDefault

End Select

onde lista pode ter os seguintes formatos:

  • uma constante. Ex.: Case 3
  • uma variável.  Ex.: Case x
  • constantes e variáveis separadas por vírgula.  Ex.: Case 3, x
  • uma ou mais strings separadas por vírgula.  Ex.: Case “carro”, “moto”
  • expressões com Is operador constante |variável*.  Ex.: Case Is < x
  • expressões do tipo valor1 To valor2, sendo que valor1 pode ser omitido.  Ex.: Case x To y

*os quatro primeiros exemplos, na verdade, têm o formato Case Is = constante | variável, mas Is = é omitido, ou seja Case 3 é o mesmo que Case Is = 3.

Vejamos a seguir exemplos em alguns dialetos do BASIC.

QB64

qb64_select

JustBASIC

jbas_select

Observe que a expressão (nota) está após as cláusulas case, e são permitidas expressões conectadas (neste caso, com o operador booleano and).

FreeBASIC

fbas_select

RC BASIC

rcbas_select

Neste caso, usa-se default em vez de case else.

BASIC-256

bas256_select

Neste caso, a estrutura não é select, mas case apenas, entre begin e end; e a opção default é apenas else.  E, como em JustBASIC, a expressão (nota) está após as cláusulas case, sendo permitidas expressões conectadas (neste caso, com o operador booleano and).

sdlBASIC, no Linux

sdlbas_select

GamBAS, no Linux

gambas_select

Dúvidas?

Pascal – Triângulos

lazarus

A sintaxe da estrutura de seleção múltipla em Pascal é a seguinte:

case (seletor ou expressão de controle) of

etiqueta1 : bloco1 de instruções;

etiquetaN : blocoN de instruções;

else/otherwise blocoDefault de instruções;

end;

Veja a seguir um exemplo de aplicativo para calcular o perímetro de um triângulo uma vez informados seu tipo e o(s) valor(es) do lado(s).

lazarus_case

Neste caso o seletor é a variável escolha, as etiquetas são 1, 2 e 3 e foi usada a cláusula otherwise em vez de else (para não se confundir com as cláusulas else das estruturas de controle condicional if).  Observe que os blocos começam com begin e terminam com end;.

Kotlin – Rodízio em São Paulo

kotlin

Kotlin é uma linguagem nova, de 2010, destinada a rivalizar com Java, e já tem suporte para Android desde 2017.  A seleção múltipla em Kotlin usa um bloco when, similar a switch, como vemos no exemplo a seguir.  Neste caso, foi escrito um aplicativo de console para retornar o dia de rodízio em São Paulo para uma licença, ou placa, informada.  O aplicativo rodou no Lubuntu via Firefox diretamente no site https://try.kotlinlang.org/

kotlin2

Observe a placa informada (ABC1234) e o dia da semana retornado (Terça-feira).

Não se preocupe agora com o código, mas observe o bloco when entre as linhas 21 e 27.  A cláusula else não foi utilizada e o aplicativo rodou normalmente.  Notou que não é necessário usar o ponto-e-vírgula ao final das instruções?

JavaScript – Dias, Meses, Estações, Anos

200px-Unofficial_JavaScript_logo_2.svg

Com HTML e JavaScript, vamos finalizar a série dos últimos 3 posts em C++, C# e Java sobre dias, meses, estações e anos usando a estrutura seletiva múltipla.

Observe a seguir o código HTML (HyperText Markup Language) com CSS (Cascading Style Sheets) no cabeçalho (head) e com JavaScript no corpo (body).

js_html0

Esse documento é assim apresentado pelo browser:

js_html1

O evento onclick, disparado pelo clique do mouse no botão Ok, chama a função data(), cujo script é o seguinte:

javaScriptSwitch

A seguir estão as caixas de diálogo prompt e alert apresentadas:

js_html2js_html3js_html4js_html5

Dúvidas?

Então vamos refletir um pouco sobre o que disse Julian Assange: “Uma guerra furiosa pelo futuro da sociedade está em andamento; para a maioria, essa guerra é invisível”.