1 / 88

PERL

CURSO DE VERÃO EM BIOINFORMÁTICA ESTRUTURAL. PERL. Raquel C. de Melo Minardi raquelcm@dcc.ufmg.br. Primeiro programa em perl. Abra um editor de texto e escreva o programa A primeira linha deveria ser $!/ usr /bin/ perl

baruch
Download Presentation

PERL

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CURSO DE VERÃO EM BIOINFORMÁTICA ESTRUTURAL PERL Raquel C. de MeloMinardi raquelcm@dcc.ufmg.br

  2. Primeiro programa em perl Abra um editor de texto e escreva o programa A primeiralinhadeveria ser $!/usr/bin/perl parainformaraosistemaqueisto é um programaemperl e parainformar o caminhopara o interpretadorperl no sistema Unix Escreva o código, porexemplo print “Este é meuprimeiroprogramaemperl.”; Salve com a extensão.pl Dêpermissão de execução chmod +x programa.pl Execute o programachamando ./programa.pl ouperl programa.pl Raquel C. de Melo Minardi 2/88

  3. Primeiro programa em perl Aodigitar ./programa.pl ouperl programa.pl o programaseráinterpretado Se háerros de sintaxe no código, o interpretadoriráinformar e nãoexecutará o programa Raquel C. de Melo Minardi 3/88

  4. Primeiro programa em perl Raquel C. de Melo Minardi 4/88

  5. Primeiro programa em perl A opção–wnalinha #!/usr/bin/perl é umacondição de permissão de alertas (allow warnings) e é muitoútilnadepuração do seucódigo Comumenteusa-se também a linha use strict; queindicaque o interpretadoriráchecarosnomes das variáveisparaverificar se foramanteriormentedeclaradas Raquel C. de Melo Minardi 5/88

  6. Variáveis Variáveissãonomesassociados a posições de memóriaquepodecontervalores Emperl, variáveisescalarespodemconternúmeros (inteirosou de pontoflutuante) oucadeias de caracteres (strings) e sãoidentificadasporcomeçarem com “$” $a, $b e $resultadosãoexemplos de variáveis Nomes de variáveisválidoscomeçam com umaletra e a seguirtêmumasequência de letrasnúmeros e underscores $a $nome $primeiro_nome $ultimoNome $bloco12 $c22e Raquel C. de Melo Minardi 6/88

  7. Estados de variáveis Variáveisemperltêmtrêsestados exists:variávelfoideclaradamasnão tem valor defined:variáveltêm um valor quepode ser true ou false true:variável tem valor diferente de 0 ou “” Raquel C. de Melo Minardi 7/88

  8. Literais e atribuições Literaissãovaloresconstantescomo2, 5 e “palavra”, porexemplo Valoressãoatribuídos a variáveisatravés do símbolo“=” $resultado = $a + $b; $t = “palavra”; Raquel C. de Melo Minardi 8/88

  9. Números Internamente, osnúmerossãosemprearmazenadosempontoflutuantemasháváriaspossíveisrepresentações $a = 134; $a = -2004; $a = 56.79; $a – 56.78989; $a = 13e34; $a = -12E29; NUNCA COMEÇE UM NÚMERO COM ZERO! O NÚMERO SERÁ RECONHECIDO COMO UM NÚMERO EM OCTAL Raquel C. de Melo Minardi 9/88

  10. Caracteres especiais Raquel C. de Melo Minardi 10/88

  11. Operadores Perl suporta as operaçõesaritméticasbásicas Raquel C. de Melo Minardi 11/88

  12. Operadores Parêntesespodem ser usadospara se indicarprecedênciadiferentedapadrão Existemabreviaçõesparaosoperadores Raquel C. de Melo Minardi 12/88

  13. Operadores Raquel C. de Melo Minardi 13/88

  14. Cadeias de caracteres (strings) Stringssãosequências de caracteres Strings sãodelimitadasporaspasduplas A string maiscurta é “” A string maislonga é tãocompridaquanto a memória do computadorpermitir Raquel C. de Melo Minardi 14/88

  15. Operadores para strings A concatenação é a operaçãomaisconhecida entre strings O operador é o “.” A funçãolength é umafunçãopredefinidaqueretorna o comprimento de uma string Raquel C. de Melo Minardi 15/88

  16. Cadeias de caracteres Raquel C. de Melo Minardi 16/88

  17. Cadeias de caracteres Raquel C. de Melo Minardi 17/88

  18. Strings entre aspas Certos caracteres quando precedidos de contrabarra entre aspas duplas têm um siginifcado especial \n→ nova linha \t → tabulação Variáveis são interpolaladas quando dentro de aspas duplas Se você quer usar “ como um literal dentro de uma string entre aspas duplas, use \” Raquel C. de Melo Minardi 18/88

  19. Função split A função split quebra uma string de acordo com a posição de um conjunto de delimitadores O delimitador é escrito entre barras: /PADRÃO/ Raquel C. de Melo Minardi 19/88

  20. Função split Raquel C. de Melo Minardi 20/88

  21. Função split Raquel C. de Melo Minardi 21/88

  22. Função split Raquel C. de Melo Minardi 22/88

  23. Função split Raquel C. de Melo Minardi 23/88

  24. Função substr A função substr extrai uma substring de uma string Recebe três argumentos: uma string a posição inicial o número de caracteres a serem retornados a partir da posição inicial Raquel C. de Melo Minardi 24/88

  25. Função substr Raquel C. de Melo Minardi 25/88

  26. Função substr Raquel C. de Melo Minardi 26/88

  27. Interpolação Raquel C. de Melo Minardi 27/88

  28. Interpolação Raquel C. de Melo Minardi 28/88

  29. Entrada pelo console <STDIN> denota a entradapadrão Durante a execução de um programaperl, todavezque <STDIN> é invocado, o programapara e esperaque o usuáriodigiteumasequência de caracteresseguida de enter <STDIN> conteráentão a sequêncialida e pode ser atribuído a um escalar Raquel C. de Melo Minardi 29/88

  30. Entrada pelo console Raquel C. de Melo Minardi 30/88

  31. Impressão formatada A funçãoprintfpermiteformatar a umaimpressão Especificando o número de casasdecimais de um número Estabelecendoumaestrutura tabular atravésdainclusão de espaços e tabulações printf FILEHANDLE FORMATO, LISTA FORMATO contémuma string de controle LISTA contém a lista de variáveisqueserãoimpressassegundososformatosestabelecidos Raquel C. de Melo Minardi 31/88

  32. Impressão formatada Raquel C. de Melo Minardi 32/88

  33. Impressão formatada Raquel C. de Melo Minardi 33/88

  34. Arranjos Como visto, umavariávelescalarcontém um valor numéricoouuma string Um arranjo é umaestrutura de dados composta e pode ser heterogênea Elecontémumalista de valoresnuméricos, ouumalista de strings ouumamistura deles A ordem é importante Emperl, arranjossãodefinidos com um símbolo “@” antes do nome Portanto, em um mesmoprogramapodemosterumavariávelescalar $var e um arranjo @var Raquel C. de Melo Minardi 34/88

  35. Arranjos Raquel C. de Melo Minardi 35/88

  36. Arranjos Raquel C. de Melo Minardi 36/88

  37. Arranjos A funçãopushadiciona um valor ao final de umaarranjo A funçãoshiftrecupera o primeiro valor de um arranjo A funçãopop recupera o último valor de um arranjo Raquel C. de Melo Minardi 37/88

  38. Arranjos Raquel C. de Melo Minardi 38/88

  39. Arranjos Raquel C. de Melo Minardi 39/88

  40. Arranjos A funçãopré-definida sort ordenaelementos de umaarranjo $a<=>$b : paracomparação entre números cmp : paracomparação entre strings 0 se sãoiguais 1 se $a>$b -1 se $b>$a Raquel C. de Melo Minardi 40/88

  41. Arranjos Raquel C. de Melo Minardi 41/88

  42. Arquivos A conexão entre um programaperl e arquivos de entrada e saídasãoosfilehandles Diferentemente das variáveis, filehandlesnão tem um prefixodefinidomassãonormalmenteescritos com letrasmaiúsculas Antes de se utilizar um filehandle, eledeve ser aberto: open (IF, $nomeArquivoEntrada): aberturaparaleitura open (OF, “>$nomeArquivoSaida”): aberturaparaescrita open (OF, “>>$nomeArquivoSaida”): aberturaparaescrita Fecharapós o uso close(IF) Raquel C. de Melo Minardi 42/88

  43. Arquivos É recomendadotestarsempre se a abertura do arquivofoirealizada com sucesso e usar a funçãodieparaencerrar o programacasoalgumproblematenhaocorrido open (IF, $nomeArquivoEntrada) or die (“Nãofoipossívelabrir o arquivo”); Raquel C. de Melo Minardi 43/88

  44. Arquivos Raquel C. de Melo Minardi 44/88

  45. Arquivos Raquel C. de Melo Minardi 45/88

  46. Arquivos Raquel C. de Melo Minardi 46/88

  47. Arquivos Raquel C. de Melo Minardi 47/88

  48. Arquivos Raquel C. de Melo Minardi 48/88

  49. Arquivos Raquel C. de Melo Minardi 49/88

  50. Estruturas de controle Estruturas de controlesãoaquelasquepodemalterar o fluxo de execução do programa Hábasicamentedoismecanismos: Estruturascondicionais Estruturas de repetição Raquel C. de Melo Minardi 50/88

More Related