59
Introdução à Lógica de Introdução à Lógica de Programação Utilizando Perl Programação Utilizando Perl Thiago Yukio Kikuchi Oliveira [email protected]

Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Embed Size (px)

Citation preview

Page 1: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Introdução à Lógica de Introdução à Lógica de Programação Utilizando PerlProgramação Utilizando Perl

Thiago Yukio Kikuchi [email protected]

Page 2: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Lógica de ProgramaçãoLógica de Programação

A lógica de programação é necessária para pessoas que desejam trabalhar com desenvolvimento de sistemas e programas, ela permite definir a seqüência lógica para o desenvolvimento.

Então o que é lógica?

Lógica de programação é a técnica de encadear pensamentos para atingir determinado objetivo.

Page 3: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

O que é um algoritmo?O que é um algoritmo?

Um algoritmo é formalmente uma seqüência finita de passos que levam a execução de uma tarefa. Podemos pensar em algoritmo como uma receita, uma seqüência de instruções que dão cabo de uma meta específica. Estas tarefas não podem ser redundantes nem subjetivas na sua definição, devem ser claras e precisas.

Exemplo de um algoritmo:

Faça um algoritmo que mostre como buscar uma garrafa de água na geladeira partindo do sofá da sala.

Levantar do sofá;

Andar até a porta da cozinha;

Andar até a geladeira;

Abrir a porta da geladeira;

Retirar a garrafa d'água da geladeira;

Fechar a porta da geladeira;

Andar até o sofá;

Sentar-se no sofá;

Page 4: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

ProgramasProgramas

Os programas de computadores nada mais são do que algoritmos escritos numa linguagem de computador (Perl, Pascal, C, Cobol, Fortran, Java entre outras) e que são interpretados e executados por uma máquina, no caso um computador.

Notem que dada esta interpretação rigorosa, um programa é por natureza muito específico e rígido em relação aos algoritmos da vida real.

Page 5: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Linguagem PerlLinguagem Perl

Perl: The Practical Extraction and Report Language

Desenvolvida em 1987 por Larry Wall

Características:

Linguagem script

Disponível sob a GPL

Perl tira as melhores características de linguagens como C, awk, sed, sh, e BASIC, entre outras.

Sua interface de integração com base de dados (DBI) suporta muitos bancos de dados

Perl é extensível (+ de 5.000 modulos).

Portada para mais de 100 diferentes plataformas

Ultilizada para criação de conteúdo dinâmico na Web

Larry Wall

Page 6: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Um simples programa em PerlUm simples programa em Perl

#!/usr/bin/perl

# O simbolo "#" indica um comentário no código# Meu primeiro programa em perl

# O "\n" ao final indica uma quebra de linha no terminal do linux.

print "Olá mundo!\n";

Arquivo: exemplo.pl

Page 7: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

VariáveisVariáveis

Na matemática:

X = 1

Y = 2

Então:

X + Y = 3

Nos algoritmos, as variáveis podem guardar textos além de números.

X = 4

X = "Linux"

Em Perl, existem 3 tipos de variáveis:

- Escalares (sempre começam com o simbolo "$")

- "Arrays" (sempre começam com o simbolo "@")

- "Hashes" (sempre começam com o simbolo "%")

Page 8: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Variaveis do tipo "Escalar"Variaveis do tipo "Escalar"

Guardam somente uma informação. Essa informação pode ser um número ou um texto.

Identificadas com o símbolo "$" no início.

Exemplos:

$valor = 10;

$nome = "Thiago";

$nome2 = $nome;

$frase = "Hoje é dia 14 de Fevereiro";

Page 9: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Declarando VariáveisDeclarando Variáveis

Declarando uma variavel em Perl:

my $[NOME DA VARIAVEL];

Exemplo:

my $idade;

my $nome;

$idade = 11;

$nome = “Rafael”;

OBS: A declaração de variáveis em perl não é obrigatória, mas é uma boa prática de programação!

Page 10: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Usando variáveis no programaUsando variáveis no programa

#!/usr/bin/perl

# Declarando a variável.my $frase;

$frase = "Olá mundo!\n";print $frase;

Arquivo: exemplo.pl

Page 11: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 1Exercício 1

"Escreva um algoritmo em Perl com duas variáveis que recebam, respectivamente, o seu nome e a sua idade e escreva o conteúdo das variáveis na tela."

Page 12: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 1Exercício 1

"Escreva um algoritmo em Perl com duas variáveis que recebam, respectivamente, o seu nome e a sua idade e escreva o conteúdo das variáveis na tela."

#!/usr/bin/perl# Declarando as variáveismy $nome;my $idade;

$nome = "Thiago Yukio Kikuchi Oliveira";$idade = 25;

# Mostrando na telaprint $nome;print $idade;

Page 13: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

OperadoresOperadores

Os operadores são meios pelo qual incrementamos, decrementamos, comparamos e avaliamos dados dentro do computador. Temos três tipos de operadores:

Operadores Aritméticos

Operadores Relacionais

Operadores Lógicos

Page 14: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Operadores AritméticosOperadores Aritméticos

Os operadores aritméticos são os utilizados para obter resultados numéricos. Além da adição, subtração, multiplicação e divisão, podem utilizar também o operador para exponenciação.

Os símbolos para os operadores aritméticos, em Perl, são:

Hierarquia das Operações Aritméticas

1 º ( ) Parênteses

2 º Exponenciação

3 º Multiplicação, divisão (o que aparecer primeiro)

4 º + ou – (o que aparecer primeiro)

Operação SímboloAdição +Subtração -Multiplicação *Divisão /Exponenciação **

Page 15: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Usando operadores AritméticosUsando operadores Aritméticos

#!/usr/bin/perl# Script que calcula a nota média de duas provas.

# Declarando as variáveis.my $nota_1;my $nota_2;my $media;

$nota_1 = 9;$nota_2 = 7;

# Calculando a média.$media = ($nota_1 + $nota_2)/2;

print “A média das notas é: $media \n”;

Arquivo: calcula_media.pl

Page 16: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 2Exercício 2

"Escreva um algoritmo em Perl que receba a distância inicial, a distância final, o tempo inicial, o tempo final, calcule a velocidade média e mostre na tela."

Vm = S2 – S1 t2 - t1

Lembre-se:

Page 17: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 2Exercício 2

"Escreva um algoritmo em Perl que receba a distância inicial, a distância final, o tempo inicial, o tempo final, calcule a velocidade média e mostre na tela."

Vm = S2 – S1 t2 - t1

Lembre-se:

#!/usr/bin/perl

# Declarando as variáveis.my ($S1, $S2, $T1, $T2, $velocidade_media);

$S1 = 0;$S2 = 350;$T1 = 0;$T2 = 5;

# Calculando a velocidade média.$velocidade_media = ($S2 - $S1)/($T2 - $T1);

print “A velocidade média é: $velocidade_média Km/h \n”;

Page 18: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Operadores RelacionaisOperadores Relacionais

Os operadores relacionais são utilizados para comparar caracteres (texto) e números. Os valores a serem comparados podem ser caracteres ou variáveis.

Os símbolos para os operadores relacionais, em Perl, são:

Exemplos:

$nota = 6

$nota > 5 (verdadeiro)

$nota < 5 (falso)

Operação==

Diferente de !=Maior que >Menor que <

>=<=

Símbolo p/ números Símbolo p/ textoIgual a eq

neq

Maior ou igual aMenor ou igual a

$nome = “thiago”$nome eq “carlos” (falso)$nome eq “thiago” (verdadeiro)

Page 19: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Condicionais (Se.. senão/If.. else)Condicionais (Se.. senão/If.. else)

.

#!/usr/bin/perl

# Declarando as variáveis.my $media = 9;

if ($media >= 5){print “Aprovado \n”;

}else {

print “Reprovado \n”;}

media = 9

Se (media >= 5) EntãoEscreva “Aprovado”

SenãoEscreva “Reprovado”

FimSe

AlgoritmoAlgoritmo escrito em Perl

SE MEDIA >= 5.0 ENTÃO ALUNO APROVADO SENÃO REPROVADO

Se (condição) Então[ executa instruções]

Senão[ executa outra instruções]

FimSe

Se (condição) Então[ executa instruções]

FimSe

Page 20: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 3Exercício 3

"Escreva um algoritmo em Perl que receba dois valores quaisquer, some-os e mostre na tela se a soma deles é maior ou menor que 10."

Page 21: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 3Exercício 3

"Escreva um algoritmo em Perl que receba dois valores quaisquer, some-os e mostre na tela se a soma deles é maior ou menor que 10."

#!/usr/bin/perl

# Declarando as variáveis my ($valor1, $valor2, $soma);

# Atribuindo os valores.$valor1 = 20;$valor2 = 30;

# Somando$soma = $valor1 + $valor2;

If ($soma > 10) {print “A soma é maior que 10 \n”;

}else {

print “A soma é menor que 10 \n”;}

Page 22: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Operadores LógicosOperadores Lógicos

Os operadores lógicos servem para combinar resultados de expressões, retornando se o resultado final é verdadeiro ou falso.

Os símbolos para os operadores lógicos, em Perl, são:

Operação Símbolo E &&Ou ||Negação !

#!/usr/bin/perl# Declarando as variáveis.my $media = 9;my $faltas = 4;

if (($media >= 5) && ($faltas < 3)){print “Aprovado \n”;

}else {

print “Reprovado \n”;}

media = 9faltas = 4

Se (media >= 5 e faltas < 3) EntãoEscreva “Aprovado”

SenãoEscreva “Reprovado”

FimSe

AlgoritmoAlgoritmo escrito em Perl

SE MEDIA >= 5.0 E FALTAS < 3 ENTÃO ALUNO APROVADO

Page 23: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 4Exercício 4

"Escreva um algoritmo em Perl que receba o peso e a idade de uma pessoa. Se a pessoa tiver mais de 10 anos ou pesar mais de 50kg escreva que ela pode andar na montanha russa."

Page 24: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 4Exercício 4

"Escreva um algoritmo em Perl que receba o peso e a idade de uma pessoa. Se a pessoa tiver mais de 10 anos ou pesar mais de 50kg escreva que ela pode andar na montanha russa."

#!/usr/bin/perl

# Declarando as variáveis my ($idade, $peso);

# Atribuindo os valores.$idade = 15;$peso = 60;

If (($idade > 10) || ($peso > 50)) {print “Você pode andar na montanha russa!\n”;

}

Page 25: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

contador Para contador de 1 até 5

Escreva “Olá”contador = contador + 1

FimPara

Algoritmo

Algoritmo escrito em Perl

Para (inicio; condição;) [ executa instruções]incremento

FimPara

Page 26: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:

Page 27: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1

Page 28: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim

Page 29: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim Ola!

Page 30: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2

Page 31: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim

Page 32: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim Ola!

Page 33: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!

Page 34: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3

Page 35: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim

Page 36: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim Ola!

Page 37: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!

Page 38: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!4

Page 39: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!4 sim

Page 40: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!4 sim sim Ola!

Page 41: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!4 sim sim 4+1 = 5 Ola!

Page 42: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!4 sim sim 4+1 = 5 Ola!5

Page 43: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!4 sim sim 4+1 = 5 Ola!5 sim

Page 44: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!4 sim sim 4+1 = 5 Ola!5 sim sim Ola!

Page 45: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!4 sim sim 4+1 = 5 Ola!5 sim sim 5+1 = 6 Ola!

Page 46: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!4 sim sim 4+1 = 5 Ola!5 sim sim 5+1 = 6 Ola!6

Page 47: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Para/ForEstrutura de Laço: Para/For

#!/usr/bin/perl

# Declarando as variáveis.my $contador;

for ($contador=1; $contador<=5;){print “Olá \n”;$contador = $contador + 1;

}

Contador Contador <= 5 Print “Olá!” Contador++ Tela do computador:1 sim sim 1+1 = 2 Ola!2 sim sim 2+1 = 3 Ola!3 sim sim 3+1 = 4 Ola!4 sim sim 4+1 = 5 Ola!5 sim sim 5+1 = 6 Ola!6 não

Page 48: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 5Exercício 5

"Escreva um algoritmo em Perl que receba o seu nome e o escreva 20 vezes na tela."

Page 49: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 5Exercício 5

"Escreva um algoritmo em Perl que receba o seu nome e o escreva 20 vezes na tela."

#!/usr/bin/perl

# Declarando as variáveis my $contador;my $nome;

# Atribuindo os valores.$nome = “Thiago”;

for ($contador = 1; $contador <= 20;) {print “$nome \n”;$contador++;

}

Page 50: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 6Exercício 6

"Escreva um algoritmo em Perl que escreva todos os números de 1 a 100 na tela."

Page 51: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 6Exercício 6

"Escreva um algoritmo em Perl que escreva todos os números de 1 a 100 na tela."

#!/usr/bin/perl

# Declarando as variáveis my $contador;

for ($contador = 1; $contador <= 100; $contador++) {print “$contador \n”;

}

Page 52: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Estrutura de Laço: Enquanto/WhileEstrutura de Laço: Enquanto/While

#!/usr/bin/perl

# Declarando as variáveis.my $contador = 10;

while ($contador > 1){print “Olá \n”;$contador = $contador - 1;

}

contador = 10 Enquanto (contador > 2)

Escreva “Olá”contador = contador - 1

FimEnquanto

Algoritmo

Algoritmo escrito em Perl

Enquanto (condição) [ executa instruções]

FimEnquanto

Page 53: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Variaveis do tipo “Array”Variaveis do tipo “Array”

Variáveis responsáveis por guardar uma lista (vetor) de informações.

Exemplo:

@frutas = (“abacaxi”, “banana”, “pêra”);

Vetor:

Para acessar um valor específico na lista devemos dar o nome da variável seguido pelo índice do vetor:

print $frutas[0]; # Escreve “abacaxi” na tela

print $frutas[2]; # Escreve “pêra” na tela

print $frutas[1]; # Escreve “banana” na tela

print @frutas; # Escreve “abacaxibananapêra” na tela

0 1 2frutas abacaxi banana pêra

Page 54: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 7Exercício 7

"Escreva um algoritmo em Perl que receba 4 nomes em um array e escreva-os na tela um a um."

Page 55: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 7Exercício 7

"Escreva um algoritmo em Perl que receba 4 nomes em um array e escreva-os na tela um a um."

#!/usr/bin/perl

# Declarando as variáveis my @nomes = (“Maria”, “João”, “José”, “Pedro”);

print “$nomes[0] \n”;print “$nomes[1] \n”;print “$nomes[2] \n”;print “$nomes[3] \n”;

Page 56: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 7Exercício 7

"Escreva um algoritmo em Perl que receba 4 nomes em um array e escreva-os na tela um a um."

#!/usr/bin/perl

# Declarando as variáveis my $contador;my @nomes = (“Maria”, “João”, “José”, “Pedro”);

for ($contador = 0; $contador <=3 ; $contador++) {print “$nomes[$contador] \n”;

}

#!/usr/bin/perl

# Declarando as variáveis my @nomes = (“Maria”, “João”, “José”, “Pedro”);

print “$nomes[0] \n”;print “$nomes[1] \n”;print “$nomes[2] \n”;print “$nomes[3] \n”;

Page 57: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Variaveis do tipo “Hash”Variaveis do tipo “Hash”

Também conhecido como Array Associativo. Também guardar uma lista, mas utiliza texto como índice ao invés de números.

Exemplo:

%profissao = (“thiago” => “estudante”, “joao” => “médico”, “josé” => “advogado”);

Vetor:

Para acessar um valor específico na lista devemos dar o nome da variável seguido pelo índice textual entre “{ }” do vetor:

print $profissao{“thiago”}; # Escreve “estudante” na tela

print $profissao{“joão”}; # Escreve “médico” na tela

print $profissao{“josé”}; # Escreve “advogado” na tela

joãoprofissão estudante médico advogado

thiago josé

Page 58: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 8Exercício 8

"Escreva um algoritmo em Perl que receba o nome de 3 colegas do seu lado e sua respectiva idade. Armazene essas informações em um hash usando o nome como índice. Mostre a idade de cada um na tela."

Page 59: Introdução à Lógica de Programação Utilizando Perllgmb.fmrp.usp.br/cvbioinfo2008/extras/apresentacoes/thiago_logica.pdf · (Perl, Pascal, C, Cobol, Fortran, Java entre outras)

Exercício 8Exercício 8

"Escreva um algoritmo em Perl que receba o nome de 3 colegas do seu lado e sua respectiva idade. Armazene essas informações em um hash usando o nome como índice. Mostre a idade de cada um na tela."

#!/usr/bin/perl

# Declarando as variáveis my %colegas = (

“Maria” => 20,“João” => 23,“José” => 30

);

print “$colegas{“Maria”} \n”;print “$colegas{“João”} \n”;print “$colegas{“José”} \n”;