C++ Funções

O exemplo de uma função simples, que calcula a área de um quadrado ou de um círculo conforme a escolha do usuário e a entrada do lado ou do raio, agora é mostrado na linguagem C++ (ce plus plus).

Design-time:

Listagem do código C++ no editor Sublime Text 3

Runtime:

Execução do código em C++

Observações:

Depois dos posts anteriores sobre funções em C e em C#, não devem restar dúvidas sobre a definição e o uso de funções em C++, imagino. Observe particularmente a ordem em que são definidas as variáveis globais, e estão implementadas as funções obterValor (definida pelo usuário) e main (obrigatória). Em futuros posts, abordaremos essa “questão de ordem”.

Desta vez separamos os posts sobre funções em C, C# e C++ para não fazer nenhuma alusão ao CCC em um momento em que as hordas nazifascistas milicianas querem de volta aqueles tempos sombrios. É muito triste a constatação de que o Brasil, que era um sonho utópico, virou um pesadelo distópico.

Minitab – Funções

O Minitab não é exatamente uma linguagem de programação, como R ou MatLab, mas uma poderosa ferramenta para análise de dados e interpretação de resultados, muito utilizada em universidades e empresas desde 1972. Visite o site para saber mais e baixar uma licença gratuita para 30 dias. A seguir há um exemplo daquela função que calcula a área do quadrado e do círculo conforme as entradas do usuário em uma planilha do Minitab.

Design-time e Runtime:

Menu Calc > Caixa de diálogo Calculadora
Você pode salvar os comandos da sessão Histórico como uma macro
Você pode executar a macro salva anteriormente

Observações:

Você pode usar a caixa de diálogo Calculadora para usar uma função já definida pelo programa ou criar uma função nova introduzindo sua expressão na devida área de texto e atribuí-la como uma fórmula. Se existirem as colunas ‘1-Quadrado 2-Circulo’ (ou ‘QC’), ‘Lado/Raio’ (ou ‘LR’) e ‘Area’ (ou ‘F’), esta última terá automaticamente o resultado da área de acordo com os valores informados nas colunas anteriores. Alternativamente, em vez de usar a Calculadora, você pode entrar diretamente com os comandos necessários na seção Linha de Comando (precedidos por formula ou let) e depois clicar no botão Ensaio. Exemplo genérico: formula ‘C3’ = ‘C1’ + ‘C2’ ou let ‘C3’ = ‘C1’ + ‘C2’, onde entre aspas simples estão os nomes das colunas ou campos.

Fácil, não? Difícil é não reconhecer o que veio de bom depois do golpe de 2016: Bolsonaro deu dignidade aos ignorantes, elevou a autoestima dos idiotas, valorizou a estupidez, deu voz aos imbecis e cargo aos canalhas.

Portugol Studio – Funções

As funções são sub-rotinas com funcionalidades específicas e, portanto, executam uma determinada tarefa dentro do programa. Uma das vantagens de sua criação e uso é a reutilização de parte do código, tornando menor e menos repetitivo o programa. Vejamos em Portugol Studio o exemplo do cálculo da área do quadrado e do círculo. Se não quiser instalar esse aplicativo gratuito, rode-o em seu navegador através do Portugol WebStudio.

Design-time e Runtime:

Observações:

As variáveis opcao, val, resultado e PI são globais porque são declaradas no início do programa e são acessíveis em todo o seu escopo. Se o valor da variavel opcao for 1 ou 2, então esse valor é passado como argumento à função obterValor, cujo único parâmetro tem que ser uma variável do tipo Caracter. Essa função nada (vazio) retorna, mas obtém o valor da dimensão (lado ou raio), calcula a área conforme o valor passado em sua chamada, e escreve na tela o valor da variável resultado. Simples, não?

Só não é simples justificar por que o Brasil é o segundo país no mundo em número total de infectados e de mortos pelo coronavírus, além de ser o campeão em números diários. A explicação é simples: não temos governo. O que temos no Planalto é um representante das hordas milicianas e nazifascistas.

C# – Definindo e chamando métodos

Como em Java, em C# (c sharp) as funções são denominadas métodos. Neste exemplo, além do método principal Main, obrigatório, há 2 métodos definidos pelo usuário: ObterDados e CalcularArea.

O método Main está sem parâmetros e nada (void) retorna, mas chama o método ObterDados passando-lhe a variável userInput, a entrada do usuário. Por sua vez, o método ObterDados também nada (void) retorna, mas chama o método CalcularArea passando-lhe a segunda variável informada pelo usuário, lado ou raio, conforme a primeira (que também é passada).

Design-time:

Versão com 2 métodos além de Main()

O método CalcularArea, que retorna o valor double da área do quadrado (a partir do lado informado) e ou do círculo (a partir do raio informado), poderia ser dispensado por sua simplicidade e para tornar menor o código. Dessa forma, o método ObterDados se encarregaria de fazer o cálculo e mostrar seu resultado, conforme se vê a seguir.

Versão com apenas um método além de Main()

Runtime:

saída de tela no prompt de comando

Observações:

Os métodos são blocos de código com funcionalidades especiais que podem ser chamados pelo próprio nome de qualquer parte do código. Entre as vantagens de serem usados está a melhor organização do código, a eliminação de trechos duplicados de código e a facilidade para a edição daquelas funcionalidades, conforme muito bem explica Bob Tabor.

Em pequenas aplicações os métodos não são necessários porque acabam aumentando o número de linhas de código. Neste exemplo, o mesmo resultado seria obtido da seguinte forma:

Uso das estruturas while e switch.

Você reparou que todos os métodos ilustrados neste exemplo são definidos com o modificador static? O que isto significa? Isto eu não sei te dizer agora, mas posso te dizer com certeza: não é de hoje que a nau conservadora faz água e o genocida do Planalto procura desesperadamente um bote salva-vidas.