Mostrando postagens com marcador Perl básico. Mostrar todas as postagens
Mostrando postagens com marcador Perl básico. Mostrar todas as postagens

Números e Operações Matemáticas em Perl

Neste tutorial de nossa apostila Perl Progressivo, vamos aprender como lidar com números e as operações matemáticas.

Baixar apostila de Perl em PDF
Baixar e estudar pela apostila em PDF

Tipos de dados numéricos em Perl

O Perl suporta os mais variados tipos de valores numéricos, como por exemplo:
2112                     # inteiro
-2112                    # inteiro negativo
12345.67              # float, fluatuante ou decimal
6.02E23               # em notação científica
0xffff                   # hexadecimal, começa sempre com 0x
0377                    # octal , começa sempre com 0
0b10011101        # binário, começa com 0b
4_294_967_296  # números grandes organizados por underline

Internamente, porém, o Perl trabalha como se todos fossem do tipo float, com precisão dupla.
Ou seja, não tem um valor 7 e sim um 7.0, por exemplo.
Se você já estudou linguagens como C, C++ ou Java, por exemplo, é como se o Perl tratasse todos os números como sendo do tipo double.

E note bem isso: em valores float (decimais), usamos o ponto e não a vírgula para separar a unidade da parte decimal.

Operações Matemáticas em Perl

O computador nada mais é que uma calculadora, bem rápida e que faz vários cálculos ao mesmo tempo. Então, vamos usar um pouco o Perl pra fazer nossa máquina calcular ?

As principais operações matemáticas são:
  • adição: usando o operador +
  • subtração: usando o operador -
  • multiplicação: usando o operador * (asterisco e não o x)
  • divisão: usando o operador /
  • exponenciação: usando o operador **
  • resto da divisão ou módulo: usando o operador %

Vamos fazer um script simples que pega dois números, 21 e 12, e faz todas essas operações:
#!/usr/bin/perl
print 21 + 12, "\n"; # Adição
print 21 - 12, "\n"; # Subtração
print 21 * 12, "\n"; # Multiplicação
print 21 / 12, "\n"; # Divisão
print 21 **12, "\n"; # Exponenciação
print 21 % 12, "\n"; # Resto da divisão
O resultado vai ser:
Operações matemáticas no Perl

Veja que o Perl imprimiu diretamente o resultado das operações, ele leu e interpretou que aquilo eram operações e resolveu elas, mostrando o valor resultante.

Lembrando que resto da divisão é aquele 'resto' que sobrava, quando você fazia continhas de divisão na escola:

Curso de Perl online grátis


Note que ao final de cada linha tem um símbolo de jogo da velha # e algo escrito.
O nome disso é comentário, serve única e exclusivamente para programadores lerem, o Perl ignora totalmente isso, ok? É apenas para explicar e organizar melhor os scripts em Perl.

Precedência de Operadores

Calcule, de cabeça, a seguinte operação:

  • 1 + 2 * 3


Para alguns o resultado pode ser 9: 1+2=3, 3*3=9
Para outros, pode ser 7: 2*3 = 6, 1+6=7

E aí, qual o certo?
Vamos deixar o Perl resolver:
#!/usr/bin/perl
print (1 + 2 * 3);
E o resultado que ele mostra é 7. E o motivo é a precedência de operadores.

O operador de multiplicação tem precedência maior na operação.
Agora crie um script para calcular:

  • (1+2)*3

#!/usr/bin/perl
print ( (1 + 2)*3 );
Veja que o resultado foi 9. Mudou só por conta de um par de parêntesis, confere?
Isso porque os parêntesis tem uma precedência maior que o operador de multiplicação.

Existe uma tabela de importância de precedência de operadores.
Ela é (de cima pra baixo, e na mesma linha da esquerda pra direita):
( )
++ --
**
*   /   %
+   -
<   <=   >   >=
==   !=
=   +=   -=   *=   /=   %=   **=

Os operadores que você não conhece, não se preocupe, vamos estudar com calma ao longo de nossa apostila de Perl.

Imprimindo informações na Tela: PRINT e SAY em Perl

Neste tutorial de Perl, vamos aprender como exibir informações no terminal de comando, usando as funções print e say, do Perl.

Baixar apostila de Perl em PDF
Baixar e estudar pela apostila em PDF

Imprimindo informações no terminal de comando

print, em inglês, significa imprimir.

Imprimir, pra gente, lembra muito fazer uma impressão, numa impressora, né?
Na verdade, é um termo mais amplo, significa exibir.

Assim, quando falamos em imprimir ou printar, estamos falando em simplesmente mostrar alguma informação, um texto, um número ou qualquer coisa.

É a primeira maneira que aprenderemos sobre como trocar informações entre a máquina e a pessoa que está utilizando ela. Todos os comandos e operações, ocorrem 'escondidos', no hardware de seu computador, então usamos algum comando que exibe pra gente esses resultados.

As maneiras mais comuns de exibir dados de informação são através das função print e say, em Perl, que simplesmente mostram na tela do terminal de comando as informações que quisermos, vamos lá aprender como usá-las ?

A função print do Perl

Essa função (comando que faz alguma coisa específica) nós já usamos no tutorial de como programar o script Olá, mundo! em Perl.

Basta digitar o comando print e escrever qualquer coisa entre aspas duplas ou simples e terminar o comando com o ponto-e-vírgula ;
Prontinho. Vai aparecer na tela o que você digitou entre as aspas.

Esses textos, em Perl, são chamados de strings.

Teste:
#!/usr/bin/perl
print "Curso Perl Progressivo";
O resultado vai ser:
Curso Perl Progressivo

Porém ficou feio, pois ficou 'colado' com uma linha de texto do terminal de comando.

Caractere de quebra de linha: \n

Parece resolvermos esse problema, basta darmos um 'enter' dentro da string.

O enter, em computação, é simbolizado por: \n
Sempre que o Perl lê esse comando, ele dá um pulo, uma quebra de linha.

Experimente:
#!/usr/bin/perl
print "Curso Perl Progressivo \n";
O resultado foi o que vimos no tutorial passado, bem mais bonitinho e organizado, não é?

E para exibir o resultado abaixo:
Curso de Perl online grátis

Como você programaria o script em Perl abaixo ?
Você pode fazer tanto assim:
#!/usr/bin/perl
print "Bem vindos ao curso: \n";
print "Perl Progressivo \n";
Como tudo em uma linha só, veja:
#!/usr/bin/perl
print "Bem vindos ao curso:\nPerl Progressivo\n";

A função SAY do Perl

Programador é um bicho preguiçoso. Gosta de fazer tudo da maneira mais rápida, simples e econômica possível, quanto menos trabalho, melhor.

Como se a função print já não fosse simples o bastante, inventaram a função say.
Troque print por say e veja o resultado:
#!/usr/bin/perl
use v5.010;
say "Curso Perl Progressivo";
Notou?
Ela, automaticamente, já dá a quebra de linha ao final, não precisa usar o caractere \n de quebra de linha.
Bacana, não?

Exercícios de PRINT em Perl

1. Frase na tela - Implemente um programa que escreve na tela a frase "O primeiro programa a gente nunca esquece!".

2. Etiqueta - Elabore um programa que escreve seu nome completo na primeira linha, seu endereço na segunda, e o CEP e telefone na terceira.

3. Letra de música - Faça um programa que mostre na tela uma letra de música que você gosta (proibido letras do Justin Bieber).

4. Mensagem - Escreva uma mensagem para uma pessoa de quem goste. Implemente um programa que imprima essa mensagem, tire um print e mande pra essa pessoa. Diga que foi um vírus que algum hacker instalou em seu computador.

5. Ao site - Faça um programa que mostre na tela o que você deseja fazer usando seus conhecimentos de Perl.



6. Quadrado - Escrever um programa que mostre a seguinte figura:

XXXXX
X   X
X   X
X   X
XXXXX

7. Tabela de notas - Você foi contrato por uma escola pra fazer o sistema de boletim dos alunos. Como primeiro passo, escreva um programa que produza a seguinte saída:
ALUNO(A)          NOTA
=========         =====
ALINE              9.0  
MÁRIO              DEZ
SÉRGIO             4.5    
SHIRLEY            7.0

8. Letra grande - Elabore um programa para produzir na tela a letra P, de Perl Progressivo. Se fosse
‘L’, seria assim:
L
L
L
LLLLL

9. Menu - Elabore um programa que mostre o seguinte menu na tela:
Cadastro de Clientes
0 - Fim
1 - Inclui
2 - Altera
3 - Exclui
4 - Consulta
Opção: 

10. Pinheiro  - Implemente um programa que desenhe um "pinheiro" na tela, similar ao abaixo.
Enriqueça o desenho com outros caracteres, simulando enfeites.
       X
      XXX
     XXXXX
    XXXXXXX
   XXXXXXXXX
  XXXXXXXXXXX
 XXXXXXXXXXXXX
XXXXXXXXXXXXXXX
       XX
       XX
      XXXX

Escreva seus scripts nos comentários!

Como Programar em Perl - Hello, world!

Agora que já te apresentamos a linguagem de programação Perl, vamos te mostrar o que é necessário fazer para, de fato, começar a programar em Perl.

Ou seja, vamos ver o que tem que faz, baixar, onde escrever, como rodar e tudo mais.
Baixar apostila de Perl em PDF
Baixar e estudar pela apostila em PDF

Como instalar o Perl

Primeiro passo é, obviamente, instalar o Perl.
Se você estiver usando um sistema Unix, como o Linux, ele já tem o Perl instalado por padrão.
Linux é, de longe, o melhor sistema operacional para programadores. Não é difícil, nem complexo, nem precisa ser um gênio ou hacker para usar o Linux.

Aliás, acho até mais fácil e intuitivo usar Linux.
Se quer levar a sério a profissão de programador, sugiro que instale alguma distribuição do Linux, como o Ubuntu e comece a aprender.

Lembre-se: todo mundo sabe usar Windows ou Mac, não tem nada demais nisso, até minha avó usa.
Mas saber usar Linux é um tremendo e interessante diferencial, vai te colocar automaticamente na frente de muuuuuitos programadores e profissionais de TI.

Mas vamos voltar ao Linux, rapidinho.
Abra o terminal de comando e digite: perl -v
Esse comando vai exibir a versão do seu Perl.

Para quem usa outra plataforma, como Windows, acesse o site oficial da linguagem:
https://www.perl.org/

Depois vá em download and get started.
Escolha sua plataforma (Windows, Linux...)

Se for Windows, provavelmente vai ter duas opções: ActiveState Perl e Strawberry.
Escolha a versão Strawberry.

Baixe o executável, aguarde o download, rode como administrador e faça a instalação do Perl.

Como Programar o Primeiro Script em Perl

Abra um editor de textos, pode ser o bloco de notas.

Se preferir, até sugerimos usar algum do tipo Notepad++ ou Sublime, pois vão deixar seu código melhor formatado, organizado, coloridinho e tal, uma belezura só.

Digite o simples comando:

print "Hello, world \n";

Agora salve seu arquivo com o nome: hello.pl
É muito importante ter a extensão pl, de Perl, ok?

Cuidado que as vezes o bloco de notas pode querer salvar como: hello.pl.txt
Não deixe isso acontecer.

Sugerimos salvar na pasta: C:\perl
Logo, o endereço do seu script será: C:\perl\hello.pl

Como rodar um script em Perl

Abra o terminal de comandos, o MS DOS ou shell do Linux.
Se estiver no Windows, digite:
cd C:\perl

No meu Linux, eu salvei em:
/home/user/perl

Agora que está na pasta/diretório do script, dê o comando pro Perl interpretar:
perl hello.pl

Se não funcionar teste: perl -w hello.pl no Windows

O resultado é esse:

Como programar em Perl


E prontinho, vai aparecer a mensagem na tela: Hello, world
Se conseguiu, você já é, oficialmente, um programador Perl, afinal, já fez e rodou seu primeiro script.

A linha hash-bang no Linux e Windows

Se estiver usando um sistema Unix, como Linux ou Mac, pode ser interessante tornar seu script Perl em um executável.

Vamos lá, primeiro torne seu script hello.pl em um executável:
chmod +x hello.pl

Agora rode ele:
./hello.pl

E veja que vai ter um erro.
Isso ocorre porque o terminal vai tentar ler e interpretar o conteúdo, e vai usar (geralmente) o bash pra interpretar esses comandos.

Mas não queremos que o shell interprete isso, e sim o Perl.
Para isso, usamos na primeiríssima linha de código Perl, o comando de hash-bang, veja como fica nosso código:

#!/usr/bin/perl
print "Hello, world!\n";

Adicionamos ao script o código: #!/usr/bin/perl (chamado hash-bang)
Pronto. A primeira linha diz ao interpretador do shell que queremos que o Perl interprete o script, e dizemos onde esse interpretador está localizado (no diretório /usr/bin e se chama perl).

Isso ocorre por conta do código especial #!, chamado de shebang.

Se você estiver em outra plataforma, como o Windows, e se o interpretador se chama 'perl.exe' e está localizado na pasta  C:\perl\bin, sua hash-bang será:

#!C:\perl\bin\perl.exe

Agora tente rodar e veja que vai sair a mensagem "Hello world!" lindíssima na tela do terminal de comando.

Em nosso curso de Perl, vamos usar a linha shebang do Linux, pois é nosso sistema operacional e a maioria das redes e sistemas também usam Linux.

Mais uma vez: instale o Linux, é simples de baixar, instalar e usar. Vai ser um diferencial na sua carreira de programador, você tem poderes maiores e ilimitados nesse sistema operacional. Até minha avó sabe usar Windows, se diferencie, aprenda Linux também, você vai amar.

IDE Sublime Text

Agora que aprendemos como instalar, programar e executar nossos scripts, vamos aprender um 'truque', que é usar uma IDE, ou seja, ou um programinha mais bonitinho para programar.

Nós vamos usar o Sublime Text. Pesquise sobre ele no Google e se desejar usá-lo, baixe e o instale.
Abra o programa Sublime Text e vá em: Tools -> Build System -> New Build System

Escreva o seguinte comando no arquivo que vai aparecer:

{
    "cmd": ["perl", "-w", "$file"],
    "file_regex": ".* at (.*) line ([0-9]*)",
    "selector": "source.perl"
}

Salve como: "Perl.sublime-build" na pasta "~/.config/sublime-text-3/Packages/User" do Sublime.

Agora abra um novo arquivo, salve como ola.pl e dê control+B, para rodar o script.
O resultado vai aparecer logo abaixo.

Como programar em Perl no Sublime Text

Veja como o programa é mais bonitinho e organizado, ele vai te ajudar a indentar o código (dar espaçamento e quebras de linha corretamente), bem como colorir comandos, strings, etc, além de rodar o código diretamente lá sem precisar dar nenhum comando.

Uma verdadeira mão na roda programar em Perl no Sublime Text.