Ling Programacao

Embed Size (px)

Citation preview

  • 5/9/2018 Ling Programacao

    1/33

    L6gica de-prograrnagao

  • 5/9/2018 Ling Programacao

    2/33

    Algumas Publlcaeoes TecnocienclaSe voce gosta de acompanhar os assuntos tecno16gicos a Tecnociencia possui uma publicacaoideal para voce.Atualmente sao produzidos em PDF, exc1usivo para assinantes os t6picos abaixo:Capacitacao Tecnolegica

    Uma publicacao seqiiencial abordando treinamento tecnico nas areas deeletronica, informatica e gestae.~ Tecnologia Pas so a Passo

    Uma serie que trata de divers as montagens e configuracoesonde orientado, passo a passo, 0 leitor podera aplicar em suarotina pro fissional ou lazer.

    Empreendimentos Tecnologlcos.

    Se voce deseja abrir urn neg6cio tecno16gico como uma Lan House, provedorde internet Wireless e qualquer outro empreendimento que envolva tecnologia.Leia a publicacao Empreendimento Tecno16gico.~

    Treinamento em manutencao

    Uma serie de treinamentos independentes, abordando divers as manutencoes,para 0 aperfeicoamento pro fissional do tecnico de manutencao.~

    Receba gratuitamente artigos em seu e-mailUma das publicacoes gratuitas disponiveis para os usuarios daComunidade Tecnociencia, e 0 recebimento de artigos no formato PDFpara livre distribuicao e impressao.

    http://artigopdf.tecnociencia.jor.br/

    http://artigopdf.tecnociencia.jor.br/http://artigopdf.tecnociencia.jor.br/
  • 5/9/2018 Ling Programacao

    3/33

    L6gica d e p rog rama

  • 5/9/2018 Ling Programacao

    4/33

    Portugues estruturadoUma forma bern didatica para absorver a Iogica de programacao consiste no uso de algoritmos emlingua portuguesa para que 0aluno consiga fixar a Iogica do desenvolvimento de softwares.Depois de fixar esta Iogica, fica muito facil programar em qualquer linguagem. Por este motivoiremos neste primeiro contato com a Iogica de programacao trabalhar com 0portugues estruturado.

    Criando seu primeiro programa em portugues estruturadoAmelhor mane ira de aprender sobre Iogica de programacao e programando. Por este motivo vamosmisturar aula pratica com teoria e criar urn ambiente mais interativo para 0 aprendizado daprogramacao de softwares.Os softwares se dividem conforme sua forma de execucao, basicamente existem duas formas defuncionamento do software, a primeira e a compilacao e a segunda e a interpretacao.Os softwares que funcionam baseados em interpretadores, atualmente sao aqueles da internet.Quando voce abre 0 seu browser e navega em uma pagina da internet 0 que ocorre e que 0browserinterpreta a informacao e mostra para 0usuario as imagens e informacoes conforme 0 algoritmo einterpretado.Os softwares compilados sao aqueles que rodam na sua maquina e normalmente possuem a extensao.EXE no windows, como 0 instal1.exe e diversos outros.o software e escrito em urn editor especifico para a linguagem e depois que esta pronto e compiladopara ser distribuido.Neste nosso primeiro contato vamos usar urn editor para a linguagem do portugues estruturado e aoinves de compilar 0editor vai interpretar as orientacoes do algoritmo que voce escrever.Baixe 0 Interpretador IPE atraves da secao de downloads do seu curso, instale a ferramenta e passepara a proxima aula onde vamos iniciar nosso primeiro algoritmo.

    Manipulando 0 IPE.Apos baixar e instalar 0 Interpretador do Portugues Estruturado IPE 0 aluno deve tentar executar aferramenta. Pode ocorrer do atalho nao fixar 0 endereco do aplicativo, neste caso 0 aluno deveraentrar na pasta arquivo de programas achar 0diretorio IPE e criar urn atalho do executavel "ipe.exe"para 0desktop.Agora que 0 aplicativo esta instalado execute 0 atalho para abrirmos 0 editor de programacao que esemelhante it tela a baixo:

    # ""tc~, Fe~"~nd,,,L~"",ff- Il"t'" 1.4f7/~OO~

  • 5/9/2018 Ling Programacao

    5/33

    Assim que 0 aplicativo e aberto 0 editor vai iniciar com as expressoes "Algoritmo" e"FimAlgoritmo". Todos os comandos devem ser inseridos entre estas Express5es.Vamos criar urn algoritmo em portugues estruturado que calcula a media entre tres numeros.Escreva 0 c6digo abaixo e clique no botao play conforme imagem:

    Algoritmo MediaEscreva( "Digite tres numeros" )Leia( nl, n2, n3 )med =(nl + n2 + n3) / 3Escreva( "Media =",med )FimAlgoritmo

    j Arquivo E ditar E xecuter Ajuda"l l o t _ X 1 . 4 ' 1 ~ I I ~ . . . . . . I I vI C f B ~ ~ . @ l 1 l i < v I

    ~ _j L in h a: 1 0Algori tm .o Media VariavellValorEscreva ( r rD ig it e e re s n l. .U Yl er os "I Botao para EXECUTAR 0 algoritme n3Leia( nl, n2, n3 I n2 1 6rued = (nl + n2 + n3) I 3 1 6screva ( "Meda = " rued) n1

    FimAlgo ritm.o med 1 6

    ~_j ~ILinha [Erro

    1:1 I IP E - Interpreador d e P or tu eu es E st ru tu r a do

    No algoritmo acima as palavras em negrito sao expressoes da linguagem portugues estruturado,vamos dar uma olhada no significado destas express5es.Algoritmo - Marca 0 inicio do c6digo, e seguido pelo nome do programa.Escreva - Sempre que for necessario mostrar na tela alguma informacao e usada esta expressao.Leia - Usamos 0 comando leia para inserir alguma informacao dentro do algoritmo. 0 comandoleia vai pedir ao usuario que insira uma informacao que sera passada para uma variavel.FimAlgoritmo - indica para 0 interpretador dos comandos que 0 algoritmo chegou ao seu final.As informacoes dentro dos parenteses ou que nao estao em negrito sao criadas pelo usuarioenquanto os comandos em negrito sao determinados pelo interpretador e nao podem sermodificados. Basicamente urn algoritmo funciona atraves de urn determinado comando seguidode uma informacao.

  • 5/9/2018 Ling Programacao

    6/33

    Observe que no algoritmo escrito anteriormente 0 comando ESCREVA e seguido pela informacao"DIOITE TRES NUMEROS".o comando Leia e seguido pela informacao variavel nl,n2,n3. vamos estudar as variaveis maisadiante.Neste primeiro contato com 0 editor de programas em portugues estruturado 0 importante e 0aluno exceutar 0 programa para ter uma nocao do funcionamemento do editor. Pode parecer urnpouco confuso neste primeiro momenta as informacoes estudadas ate aqui.Nao se preocupe, na medida em que 0 estudante for se avancando as aulas tudo sera esc1arecido.Abra 0 seu editor IPE e execute 0 algoritmo comentado observando 0 funcionamento doaplicativo eo resultado do algoritmo.Nas proximas paginas vamos entrar no universo da l6gica de programacao.

    Desenvolvendo algoritmosOs algoritmos sao descritos em uma linguagem chamada pseudoc6digo. Este nome e uma alusaoit posterior implementacao em uma linguagem de programacao, ou seja, quando formosprogramar em uma linguagem, por exemplo Pascal, estaremos gerando c6digo em Pascal.Por isso os algoritmos sao independentes das linguagens de programacao.o algoritmo deve ser facil de se interpretar e facil de codificar. Ou seja, ele deve ser 0intermediario entre a linguagem falada e a linguagem de programacao.Para escrever urn algoritmo precisamos descrever a sequencia de instrucoes, de mane irasimples e objetiva. Para isso utilizaremos algumas tecnicas:- Usar somente urn verbo por frase- Imaginar que voce esta desenvolvendo urn algoritmo para pessoas que nao trabalhamcom informatica- Usar frases curtas e simples- Ser objetivo- Procurar usar palavras que nao tenham sentido dubioNo capitulo anterior vimos que ALOORITMO e uma sequencia l6gica de instrucoes quepodem ser executadas.E importante ressaltar que qualquer tarefa que siga determinado padrao pode ser descritaPor urn algoritmo, como por exemplo: Calcular a media de tres numeros.Entretanto ao montar urn algoritmo, precisamos primeiro dividir 0 problema apresentadoem tres fases fundamentais.ENTRADA: Sao os dados de entrada do algoritmo.PROCESSAMENTO: Sao os procedimentos utilizados para chegar ao resultado final.SAIDA: Sao os dados ja processados.

  • 5/9/2018 Ling Programacao

    7/33

    Exemplo de AlgoritmoImagine 0seguinte problema: Calcular amedia final dos alunos do curso de 16gica.Os alunosrealizarao tres provas: PI, P2, P3. Onde amedia final e conseguida atraves da soma de todas as notasdas provas e depois dividindo por tres.Paramontar 0algoritmo proposto, faremos tres perguntas:a)Quais sao os dados de entrada?R: Os dados de entrada sao nota 1,nota 2 enota 3.b) Qual sera 0processamento a ser utilizado?R: 0 procedimento sera somar todos os dados de entrada e dividi -los por 3 (tres).c) Quais serao os dados de saida?R: 0 dado de saida sera amedia final.

    Vejao Algoritmo:Leia a nota daprovalLeia a nota deprova2Leia a nota deprova3Some todas as notas e divida 0resultado por 3Escreva 0resultado da divisao.

    Vejao algoritmo emportugues estruturado:Leia( nl, n2, n3)med =(nl + n2 + n3) / 3Escreva( "Media =",med )A variavel "med "vai receber 0 resultado do calculo ap6s 0 sinal de igual (=).

    Diagrama de Blocoo diagrama de blocos e uma forma padronizada e eficaz para representar os passos 16gicos deurn determinado processamento.Com 0 diagrama podemos definir uma sequencia de simbolos, com significado bern definido,portanto, sua principal funcao e a de facilitar a visualizacao dos passos de urn processamento.Existem diversos simbolos em urn diagrama de bloco. No decorrer do treinamento observaremosos mais utilizados.

    OBMAXA melhor Onidirecional de 8 Obi.Eficiencia para sua empresa. db xecnologlQ

  • 5/9/2018 Ling Programacao

    8/33

    Veja no quadro abaixo alguns dos simbolos que iremos utilizar:

    Ind ic a 0 I N I I IC I I0 1 0 l! J F I M I de urn pmcessam en to

    TIERMl l lNA l

    PROGESSAMI I tNTOInd i l c a entrada de dados a t r8 i \N 3 S dlo Tedado

    EN ITRADA IDE IDADOI M A I N I U A I L

    I t X I I I I B , I I I RC 'v e ' I 'n 1 1 1 1o: M , l f il S ' : " r e 0 ' I l ' " n ' ' ; - I I I I I ~ . . : : l , d ' 0 ' Id , 0 " 1 f " ~ ' 1 c 1 1 1 1 1 0 'L,A, IF' ','" "rlU,U " I I O : ; ; Q U UO, ", ',' !La U ,.

    I N I I C I O

    Veja na imagem ao lado 0 algoritmo que calcula amedia de tres notas desenvolvido na forma dediagrama em bloco.Ca1iu' larIMJed i~= i(n~+ in :2+n3) ,~'J

    c _ ~ F I _ M )

  • 5/9/2018 Ling Programacao

    9/33

    Entendendo as variaveis, constantes e tipos de dadosVariaveis e constantes sao os elementos basicos que urn programa manipula. Uma variavel eurn espaco reservado na memoria do computador para armazenar urn tipo de dado determinado.Variaveis devem receber nomes para poderem ser referenciadas e modificadas quandonecessario. Urn programa deve conter declaracoes que especificam de que tipo sao as variaveisque ele utilizara e as vezes urn valor inicial. Tipos podem ser por exemplo: inteiros, reais,caracteres, etc. As expressoes combinam variaveis e constantes para calcular novos valores.Podemos afirmar que aVariavel e a representacao simbolica dos elementos de urn certo conjunto.Cada variavel corresponde a uma posicao de memoria, cujo conteudo pode se alterado ao longodo tempo durante a execucao de urn programa. Embora uma variavel possa assumir diferentesvalores, ela so pode armazenar urn valor a cada instante.Quando preenchemos urn formulario onde e pedido 0 nome e a idade, podemos dizer que 0campo "Nome" e "Idade" sao variaveis. Observe que cada pessoa responde a estes campos cominformacoes diferentes.o nome pode ser Jose, Joao, Batista e assim por diante. 0mesmo ocorre com a idade que podeser 10,20,37 anos, etc.Normalmente todo formulario ou ficha cadastral e repleto de campos com solicitacao de dadoscomo RO, endereco, estado, situacao civil, etc. todos estes campos podemos considerar dadosvariaveis.Em nosso primeiro algoritmo usamos as variaveis nl ,n2 e n3 para receber os numeros e avariavel "med" para receber 0 resultado da soma das notas dividida por 3.Constante:Constante e urn determinado valor fixo que nao se modifica ao longo do tempo, durante aexecucao de urn programa. Conforme 0 seu tipo, a constante e c1assificada como sendonumerica, Iogica e literal.Exemplo de constantes:Em nosso algoritmo dividimos as variaveis nl,n2 e n3 pelo numero 3.Observe que 0 numero tres nao muda quando 0 programa e executado, dizemos entao que 0numero 3 e uma constante.

    Tipos de VariaveisAs variaveis e as constantes podem ser basicamente de quatro tipos: Numericas, caracteres,Alfanumericas ou Iogicas.Numericas: Especificas para armazenamento de numeros, que posteriormente poderao serutilizados para calculos. Podem ser ainda c1assificadas como Inteiras ou Reais.As variaveis do tipo inteiro sao para armazenamento de numeros inteiros e as Reais sao para 0armazenamento de numeros que possuam casas decimais.Caracteres: Especificas para armazenamento de conjunto de caracteres que naocontenham numeros (literais). Ex: nomes.Alfanumericas: Especificas para dados que contenham letras e/ou numeros. Pode emdeterminados momentos conter somente dados numericos ou somente literais. Se usado somentepara armazenamento de numeros, nao podera ser utilizada para operacoes matematicas.

    Logicas: Armazenam somente dados Iogicos que podem ser Verdadeiro ou Falso.As variaveis so podem armazenar valores de urn mesmo tipo, de maneira que tambem saoc1assificadas como sendo numericas, Iogicas e literais.

  • 5/9/2018 Ling Programacao

    10/33

    OperadoresOs operadores sao meios no qual decrementamos, incrementamos, comparamos e avaliamos dadosdentro do computador. Temos tres tipos de operadores:- Operadores Aritmeticos:-Operadores Relacionais:-Operadores L6gicos

    OperadoresAritmeticos:Os operadores aritmeticos servem para obterresultados numericos.Os simbolos para os operadores aritmeticos sao:Adicao +Subtracao -Multiplicacao *Divisao /Exponenciacao * *As Operacoes Aritmeticas trabalham respeitando a hierarquia matematica, os calculos sao feitosconforme ordem abaixo:10 ( ) Parenteses2 0Exponenciacao30 Multiplicacao, divisao (0 que aparecerprimeiro)4 0+ ou (0 que aparecer primeiro)

    Operadores Relacionais:Os operadores relacionais sao utilizados para comparar String de caracteres e numeros.Estes operadores sempre retomam valores 16gicos (verdadeiro ou falso/ True ou False)Paraestabelecerprioridades sobre qual operacao executarprimeiro, utilize parenteses.Os operadores relacionais sao:Iguala =Diferente de ou #Maiorque>Menorque =Menor ouiguala

  • 5/9/2018 Ling Programacao

    11/33

    E muito importante compreender 0 funcionamento dos operadores. Os algoritmos dependemdiretamente de operadores para pleno funcionamento.Para sabermos se urn estudante passou ou nao com media satisfat6ria usaremos urn algoritmo quecompare qual amedia adequada. Veja urn exemplo:Semedia for maior ou igual a 7.0 entao estuante e aprovado se nao estudante e reprovado.Em portugues estruturado teremos:Se(med>=7)entaoescreva("Estudante Aprovado ")senaoescreva("Estudante Reprovado ")FimseNosso programa completo usando os operadores pode ser desenvolvido atraves do algoritomoabaixo, para testar escreva e execute 0algoritmo no IPE.

    Algoritmo MediaEscreva( "Digite tres numeros")Leia( nl, n2, n3 )med=(nl +n2+n3)/3Escreva( "Media = ",med )Se(med>=7)entao

    escreva("Estudante Aprovado ")senaoescreva("Estudante Reprovado ")Fimse

    FimAlgoritmo

    SimbioseI n f o r m a t ic a www.simbiose.com.br

    http://www.simbiose.com.br/http://www.simbiose.com.br/
  • 5/9/2018 Ling Programacao

    12/33

    Entendendo os comandos de repeti= 7 ENTAO ALUNO APROVADO

    SE ENTAO SENAOA estrutura de decisao "SE/ENTAO/SENAO", funciona exatamente como a estrutura "SE", comapenas uma diferenca, em "SE" somente podemos executar comandos caso a condicao verdadeira,diferente de "SE/SENAO" pois sempre urn comando sera executado independente da condicao, ouseja, caso a condicao seja "verdadeira" 0 comando da condicao sera executado, caso contrario 0comando da condicao "falsa" sera executado.Vejaexemplo abaixo::SE MEDIA>= 5.0 ENTAOALUNOAPROVADOSENAOALUNO REPROVADO

    CASO SELECIONEA estrutura de decisao CASO/SELECIONE e utilizada para testar, na condicao, uma unicaexpressao, que produz urn resultado, ou, entao, 0valor de uma variavel, em que esta armazenado urndeterminado conteudo. Compara-se, entao, 0resultado obtido noteste com osvalores fomecidos em cada clausula "Caso".No exemplo do diagrama de blocos abaixo, e recebida uma variavel "Op" e testado seu conteudo,caso uma das condicoes seja satisfeita, e atribuido para a variavel Titulo a String "Opcao X", casocontrario e atribuido a string "Opcao Errada".

    http://tecnociencia.jor.br/vagner

    Vagner AraujoConhet;a melhor este autor evenha trocar opinioesacessando seus dados pe/o link eatme:

    http://tecnociencia.jor.br/vagnerhttp://tecnociencia.jor.br/vagner
  • 5/9/2018 Ling Programacao

    13/33

    Comand os de R ep eti< ;aoUtilizamos os comandos de repeticao quando desejamos que urn detenninado conjunto deinstrucoes ou comandos sejam executados urn numero definido ou indefinido de vezes, ou enquantourn detenninado estado de coisas prevalecer ou ate que seja alcancado.

    Veja abaixo alguns modelos de comandos de repeticao::-Enquanto x, processar:-Ate que x, processar ...:-Processar ,Enquanto x:-Processar .Ate que x:-Para ...Ate Seguinte

    Enquanto x, ProcessarNeste caso, 0bloco de operacoes sera executado enquanto a condicao x forverdadeira. 0 teste da condicao sera sempre realizado antes de qualquer operacao.Enquanto a condicao for verdadeira 0processo se repete. Podemos utilizar essa estruturapara trabalhannos com contadores.

    Ate que x, processar ...Neste caso, 0bloco de operacoes sera executado ate que a condicao sejasatisfeita, ou seja, somente executara os comandos enquanto a condicao for falsa.

    Processar ..., Enquanto xNeste caso primeiro sao executados os comandos, e somente depois erealizado 0teste da condicao. Se a condicao forverdadeira, os comandos saoexecutados novamente, caso seja falso e encerrado 0comando DO.

    Processar ...,Ate que xNeste caso, executa-se primeiro 0bloco de operacoes e somente depois e realizado 0teste de condicao. Se a condicao for verdadeira, 0 fluxo do programa continua nonnalmente. Casocontrario e processado novamente os comandos antes do teste da condicao.

    ...I'

    CIINCIA E TECNOLOG I

    http://jsilva.tecnociencia.jor.brJeferson Luis da Silva - Registro 62 - ID Jsilva

    http://jsilva.tecnociencia.jor.br/http://jsilva.tecnociencia.jor.br/
  • 5/9/2018 Ling Programacao

    14/33

    Apresenta

  • 5/9/2018 Ling Programacao

    15/33

    A B arra de T arefasContem os comandos mais utilizados no VisuAlg (estes comandos tambem podem ser acessadospelo menu ou por atalhos no tec1ado).

    Salvar Imprimir de textn Ref

  • 5/9/2018 Ling Programacao

    16/33

    Ajuda

    Executar (F9): Inicia (ou continua) a execucao automatica do pseudoc6digo.Executar com timer (Shift-F9): Insere urn atraso (que pode ser especificado no intervalo ao lado)antes da execucao de cada linha. Tambem realca em fundo azul 0 comando que esta sendoexecutado, da me sma forma que na execucao passo a passo.Intervalo do timer: Atraso em cada linha, para quando se desej a executar 0pseudoc6digo comtimer.Passo (F8): Inicia (ou continua) a execucao linha por linha do pseudoc6digo, dando ao usuario aoportunidade de acompanhar 0 fluxo de execucao, os valores das variaveis e a pilha de ativacaodos subprogramas.Parar (Ctrl-F2): Termina imediatamente a execucao do pseudoc6digo. Evidentemente, este botaofica desabilitado quando 0 pseudoc6digo nao esta sendo executado.Liga/desliga breakpoint (F5): Insere/remove urn ponto de parada na linha em que esteja 0 cursor.Estes pontos de parada sao ute is para a depuracao e acompanhamento da execucao dospseudoc6digos, pois permitem a verificacao dos valores das variaveis e da pilha de ativacao desubprogramas.Desmarcar todos os breakpoints (Ctrl-F5): Desativa todos os breakpoints que estejam ativadosnaquele momento.Executar em modo DOS: Com esta opcao ativada, tanto a entrada como a saida-padrao passa aser umajanela que imita 0DOS, simulando a execucao de urn programa neste ambiente.Gerar valores aleat6rios: Ativa a geracao de valores aleat6rios que substituem a digitacao dedados. A faixa padrao de valores gerados e de 0 a 100 inclusive, mas pode ser modificada (bastaalterar intervalo ao lado). Para a geracao de dados do tipo caractere, nao ha uma faixa pre-estabelecida: os dados gerados serao sempre strings de 5 letras maiusculas.Intervalo dos valores aleat6rios: Faixa de valores que serao gerados automaticamente, quandoesta opcao estiver ativada.Perfil (F7): Ap6s a execucao de urn pseudoc6digo, exibe 0 numero de vezes que cada umas dassuas linhas foi executada. E util para a analise de eficiencia (por exemplo, nos metodos deordenacao) .Mostrar pilha de ativayao (Ctrl-F3): Exibe a pilha de subprogramas ativados num dadomomento. Convem utilizar este comando em conjunto com breakpoints ou com a execucao passoa passo.Ajuda (Fl): Possibilita acesso as paginas de ajuda e as informacoes sobre 0VisuAlg.

    Quadro de VariaveisE formado por uma grade na qual sao mostrados 0 escopo de cada variavel (se for do programaprincipal, sera global; se for local, sera apresentado 0 nome do subprograma onde foi declarada),seus nomes (tambem com os indices, nos casos em que sejam vetores), seu tipo ("I" para inteiro,"R" para real, "C" para caractere e "L" para 16gico) e 0 seu valor corrente. A versao atual doVisuAlg permite a visualizacao de ate 500 variaveis (contando individualmente cada elementodos vetores).

  • 5/9/2018 Ling Programacao

    17/33

    A B arra de Statu sSituada na parte inferior da tela, esta barra contem dois paineis: 0primeiro mostra a linha e a colunaonde 0 cursor esta, e 0 segundo mostra a palavra Modificado no caso em que 0pseudoc6digo tenhasido alterado desde que foi carregado ou salvo pela ultima vez. Nesta barra, ha ainda urn terceiropainel disponivel, que ainda nao tern urn uso especifico na atual versao.

    Menu do VisuAlgArquivo: Possui os comandos para se abrir, salvar e imprimir algoritmos:Novo: Cria urn novo "esqueleto" de pseudoc6digo, substituindo 0 texto existente no editor. Seeste texto anterior tiver sido modificado, 0VisuAlg pedira sua confirmacao para salva-lo antesque seja sobreposto.Abrir: Abre 0 texto de urn pseudoc6digo anteriormente gravado, substituindo 0 texto existente noeditor. Se este tiver sido modificado, 0VisuAlg pedira sua confirmacao para salva-lo antes queseja sobreposto.Salvar: Salva imediatamente 0 texto presente no editor. Caso seja a prime ira vez que urn novotexto e gravado, 0VisuAlg pedira 0 nome do arquivo e sua Iocalizacao.Salvar como: Permite salvar 0 texto presente no editor exibindo antes uma jane1a na qual se podeescolher 0 nome do arquivo e sua Iocalizacao.Enviar por email: Permite 0 envio por email do texto presente no editor.Imprimir: Permite a impressao do algoritmo corrente, mostrando antes a jane1a de configuracaode impressao (0 correspondente botao da barra de tarefas imprime imediatamente 0 texto dopseudoc6digo na impressora padrao).Sair: Abandona 0VisuAlg.Editar: Alem dos conhecidos comandos de urn editor de texto (copiar, cortar, colar, desfazer,refazer, selecionar tudo, localizar, localizar de novo, substituir), ha tambem as seguintes opcoes:Corrigir indentacao: Corrige automaticamente a indentacao do pseudoc6digo, tabulando cadacomando intemo com espacos it esquerda.Gravar bloco de texto: Permite a gravacao em arquivo de urn texto selecionado no editor. Aextensao sugerida para 0 nome do arquivo e .inc.Inserir bloco de texto: Permite a insercao do conteudo de urn arquivo. A extensao sugerida para 0nome do arquivo e .inc.Exibir: Possui os comandos para ativar/desativar as seguintes caracteristicas:Numero de linhas: Ativa/desativa a exibicao da numeracao das linhas na area it esquerda doeditor. A numeracao corrente da posicao do cursor tambem e mostrada na primeira parte da barrade status, situada na parte inferior da tela. Por motivos tecnicas, a numeracao e desativada durantea execucao do pseudoc6digo, voltando it situacao anterior logo em seguida.Variaveis modificadas: Ativa/desativa a exibicao da variavel que esta sendo modificada. Como 0numero de variaveis pode ser grande, muitas podem estar fora dajanela de visualizacao; quandoesta caracteristica esta ativada, 0VisuAlg rola a grade de exibicao de modo que cada variavelfique visivel no momenta em esta sendo modificada. Este recurso e especialmente util quando seexecuta urn pseudoc6digo passo a passo. Por questoes de desempenho, a configuracao padraodesta caracteristica e desativada, quando 0 pseudoc6digo esta sendo executado automaticamente.No entanto, basta c1icar este botao para executa-lo automaticamente com a exibicao ativada. Nofinal da execucao, a configuracao volta a ser desativada.Pseudoc6digo: Contem os comandos relativos it execucao do algoritmo:Executar: Inicia (ou continua) a execucao automatica do pseudoc6digo.Passo a passo: Inicia (ou continua) a execucao linha por linha do pseudoc6digo, dando ao usuarioa oportunidade de acompanhar 0 fluxo de execucao, os valores das variaveis e a pilha de ativacaodos subprogramas.Executar com timer: Insere urn atraso (que pode ser especificado) antes da execucao de cadalinha. Tambem realca em fundo azul 0 comando que esta sendo executado, da mesma forma quena execucao passo a passo.Parar: Termina imediatamente a execucao do pseudoc6digo. Evidentemente, este item ficadesabilitado quando 0 pseudoc6digo nao esta sendo executado.

  • 5/9/2018 Ling Programacao

    18/33

    A L in gu agem d e P ro gram a< ;ao d o V isu A lgA linguagem que 0VisuAlg interpreta e bern simples: e uma versao portuguesa dos pseudocodigoslargamente utilizados nos livros de introducao it programacao, conhecida como "Portugol". Tomei aliberdade de acrescentar-lhe alguns comandos novos, com 0 intuito de criar facilidades especificaspara 0 ensino de tecnicas de elaboracao de algoritmos. Inicialmente, pensava em criar uma sintaxemuito simples e "liberal", para que 0usuario se preocupasse apenas com a Iogica da resolucao dosproblemas e nao com as palavras-chave, pontos e virgulas, etc. No entanto, cheguei depois itconclusao de que alguma formalidade seria nao so necessaria como util, para criar urn sentido dedisciplina.na elaboracao do "codigo-fonte".A linguagem do VisuAlg permite apenas urn comando por linha: desse modo, nao ha necessidade detokens separadores de estruturas, como 0ponto e virgula em Pascal. Tambem nao existe 0 conceitode blocos de comandos (que correspondem ao begin e end do Pascal e ao {e } do C), nem comandosde desvio incondicional como 0 goto. Na versao atual do VisuAlg, com excecao das rotinas deentrada e saida, nao ha nenhum subprograma embutido, tal como Inct), Sqtt), Ordr), Chrt), Post),Copyt) ou outro.

    Importante: para facilitar a digitacao e evitar confusoes, todas as palavras-chave do VisuAlgforam implementadas sem acentos, cedilha, etc. Portanto, 0 tipo de dados Iogico e definido comologico, 0 comando se..entao ..senao e definido como se..entao ..senao, e assim por diante. 0VisuAlg tambem nao distingue maiusculas e minusculas no reconhecimento de palavras-chave enomes de variaveis.

    Formato Basico do Pseudocodigo e Inclusao de Comentariosalgoritmo "semnome"II Funcao :IIAutor :II Data:II Secao de Declaracoes1ll1ClOII Secao de Comandosfimalgoritmo

    A primeira linha e composta pela palavra-chave algoritmo seguida do seu nome delimitado poraspas duplas. Este nome sera usado como titulo nas janelas de leitura de dados (nas futurasversoes do VisuAlg, talvez utilizemos este dado de outras formas). A secao que se segue e a dedeclaracao de variaveis, que termina com a linha que contem a palavra-chave inicio. Deste pontoem diante esta a secao de comandos, que continua ate a linha em que se encontre a palavra-chavefimalgoritmo. Esta ultima linha marca 0 final do pseudocodigo: todo texto existente a partir delae ignorado pelo interpretador.o VisuAlg permite a inclusao de comentarios: qualquer texto precedido de "II" e ignorado, ate seatingir 0 final da sua linha. Por este motivo, os comentarios nao se estendem por mais de umalinha: quando se deseja escrever comentarios mais longos, que ocupem varias linhas, cada umadelas devera comecar por "II".

  • 5/9/2018 Ling Programacao

    19/33

    Tipos de Dadoso VisuAlg preve quatro tipos de dados: inteiro, real, cadeia de caracteres e l6gico (ou booleano).As palavras-chave que os definem sao as seguintes (observe que elas nao tern acentuacao):- inteiro: define variaveis numericas do tipo inteiro, ou seja, sem casas decimais.- real: define variaveis numericas do tipo real, ou seja, com casas decimais.- caractere: define variaveis do tipo string, ou seja, cadeia de caracteres.- logico: define variaveis do tipo booleano, ou seja, com valor VERDADEIRO ou FALSO.o VisuAlg permite tambem a declaracao de variaveis estruturadas atraves da palavra-chavevetor, como sera explicado a seguir.Nomes de Variaveis e sua Dec1arayao:Os nomes das variaveis devem comecar por uma letra e depois conter letras, numeros ouunderline, ate urn limite de 30 caracteres. As variaveis podem ser simples ou estruturadas (naversao atual, os vetores podem ser de uma ou duas dimensoes). Nao pode haver duas variaveiscom 0mesmo nome, com a natural excecao dos elementos de urn mesmo vetor.A secao de declaracao de variaveis comeca com a palavra-chave var, e continua com as seguintessintaxes: : : vetor "[""]" de Na , os nomes das variaveis estao separados por virgulas. Na , os sao separados por virgulas, e tern a seguinte sintaxe:: .. Na versao atual do VisuAlg, tanto como devem ser inteiros. Alemdisso, exige-se evidentemente que seja maior do que .Exemplos:Var a: inteiroValor!, Valor2: realvet: vetor [1..10] de realmatriz: vetor [0..4,8 ..10] de inteironome do aluno: caracteresinalizador: logico

    Note que nao ha necessidade de ponto e virgula ap6s cada declaracao: basta pular linha. Adeclaracao de vetores e analoga it linguagem Pascal: a variavel vet acima tern 10 elementos, comos indices de [1] a [10], enquanto matriz corresponde a 15 elementos com indices [0,8], [0,9],[0,10], [1,8], [1,9], [1,10], ... ate [4,10]. 0numero total de variaveis suportado pelo VisuAlg e500 (cada elemento de urn vetor e contado individualmente).

    Conhe~ame/hor este autor! In

    http://tecnociencia.jor.br/cabeloAlessandro de Oliveira Faria - Registro 23360 - ID Cabelo

    http://tecnociencia.jor.br/cabelohttp://tecnociencia.jor.br/cabelo
  • 5/9/2018 Ling Programacao

    20/33

    Constantes e C om an do de A tribui< ;aoo VisuAlg tern tres tipos de constantes:- Numericos: sao valores numericos escritos na forma usual das linguagens de programacao.Podem ser inteiros ou reais. Neste ultimo caso, 0 separador de decimais e 0 ponto e nao avirgula, independente da configuracao regional do computador onde 0VisuAlg esta sendoexecutado. 0 VisuAlg tambem nao suporta separadores de milhares.- Caracteres: qualquer cadeia de caracteres delimitada por aspas duplas (").- L6gicos: admite os valores VERDADEIRO ou FALSO.A atribuicao de valores a variaveis e feita com 0 operador

  • 5/9/2018 Ling Programacao

    21/33

    Operadores de Caracteres+ Operador de concatenacao de strings (isto e , cadeias de caracteres), quando usado com doisvalores (variaveis ou constantes) do tipo "caractere". Por exemplo: "Rio" + " de Janeiro" = "Riode Janeiro".

    Operadores Relacionais=, , =, Respectivamente: igual, menor que, maior que, menor ou igual a, maiorou igual a, diferente de. Sao utilizados em express5es 16gicas para se testar a relacao entre doisvalores do mesmo tipo. Exemplos: 3 = 3 (3 e igual a 3?) resulta em VERDADEIRO ; "A" > "B"("A" esta depois de "B" na ordem alfabetica") resulta em FALSO.

    Importante: No VisuAIg, as comparacoes entre strings nao diferenciam as letras maiusculas dasminusculas. Assim, "ABC" e igual a "abc". Valores 16gicos obedecem it seguinte ordem:FALSO < VERDADEIRO.Operadores L6gicos

    nao Operador unario de negacao. nao VERDADEIRO = FALSO, e nao FALSO =VERDADEIRO. Tern a maior precedencia entre os operadores 16gicos. Equivale ao NOT doPascal.ou Operador que resulta VERDADEIRO quando urn dos seus operandos 16gicos forverdadeiro. Equivale ao OR do Pascal.

    e Operador que resulta VERDADEIRO somente se seus dois operandos 16gicos foremverdadeiros. Equivale ao AND do Pascal.

    xou Operador que resulta VERDADEIRO se seus dois operandos 16gicos forem diferentes, eFALSO se forem iguais. Equivale ao XOR do Pascal.

    Comandos de Saida de Dadosescreva lista-de-express5esEscreve no dispositivo de saida padrao (isto e , na area it direi ta da metade inferior da tela doVisuAIg) 0 conteudo de cada uma das expressoes que comp5em . Asexpressoes dentro desta lista devem estar separadas por virgulas; depois de serem avaliadas, seusresultados sao impressos na ordem indicada. E equivalente ao comando write do Pascal.De modo semelhante a Pascal, e possivel especificar 0 numero de espacos no qual se desejaescrever urn determinado valor. Por exemplo, 0 comando escreva(x:5) escreve 0 valor davariavel x em 5 espacos, alinhado-o it direita. Para variaveis reais, pode-se tambem especificar 0numero de casas fracionarias que serao exibidas. Por exemplo, considerando y como umavariavel real, 0 comando escreva(y:6:2)escreve seu valor em 6 espacos colocando 2 casasdecimais.escreval lista-de-express5es.Idem ao anterior, com a unica diferenca que pula uma linha em seguida. E equivalente ao writelndo Pascal.

  • 5/9/2018 Ling Programacao

    22/33

    Exemp1os:a1goritmo "exemp1o"var x: realy: inteiroa: caractere1:logico1ll1ClOX

  • 5/9/2018 Ling Programacao

    23/33

    Comando de Desvio Condicionalse entaofimseAo encontrar este comando, 0VisuAlg analisa a . Se 0 seu resultado forVERDADEIRO, todos os comandos da (entre esta linha e a linhacom fimse) sao executados. Se 0 resultado for FALSO, estes comandos sao desprezados e aexecucao do algoritmo continua a partir da primeira linha depois do fimse.se entaosenaofimseNesta outra forma do comando, se 0 resultado da avaliacao de forVERDADEIRO, todos os comandos da (entre esta linha e a linhacom senao) sao executados, e a execucao continua depois a partir da primeira linha depois dofimse. Se 0 resultado for FALSO, estes comandos sao desprezados e 0 algoritmo continua a serexecutado a partir da prime ira linha depois do senao, executando todos os comandos da (ate a linha com fimse).Estes comandos equivalem ao if...then e if...then ...else do Pascal. Note que nao ha necessidadede delimitadores de bloco (como begin e end), pois as seqiiencias de comandos ja estaodelimitadas pelas palavras-chave senao e fimse. VisuAlg permite 0 aninhamento dessescomandos de desvio condicional.

    Comando de Sele

  • 5/9/2018 Ling Programacao

    24/33

    Comand os de R ep eti< ;aoo VisuAlg implementa as tres estruturas de repeticao usuais nas linguagens de programacao: 0Iaco contado para ...ate ...faca (similar ao for...to do do Pascal), e os Iacos condicionadosenquanto ...faca (similar ao while ...do) e repita ate (similar ao repeaL.until). A sintaxe destescomandos e explicada a seguir.para ... fayaEsta estrutura repete uma sequencia de comandos urn determinado numero de vezes.para de ate [passo ] facafimparaImportante: Se, logo no inicio da primeira repeticao, for maior que (ou menor, quando for negativo), 0 Iaco nao sera executado nenhuma vez. 0exemplo a seguir nao imprime nada.enquanto ... fayaEsta estrutura repete uma sequencia de comandos enquanto uma determinada condicao(especificada atraves de uma expressao Iogica) for satisfeita.enquanto facafimenquantoImportante: Como 0 Iaco enquanto ...faca testa sua condicao de parada antes de executar suasequencia de comandos, esta sequencia podera ser executada zero ou mais vezes.rep ita ... ateEsta estrutrura repete uma sequencia de comandos ate que uma determinada condicao(especificada atraves de uma expressao Iogica) seja satisfeita.rep itaate Importante: Como 0 Iaco repita ...ate testa sua condicao de parada depois de executar suasequencia de comandos, esta sequencia podera ser executada uma ou mais vezes.Comando Interrompa:

    As tres estruturas de repeticao acima permitem 0 usa do comando interrompa, que causa umasaida imediata do Iaco. Embora esta tecnica esteja de certa forma em desacordo com osprincipios da programacao estruturada, 0 comando interrompa foi inc1uido no VisuAlg por serencontrado na literatura de introducao it programacao e mesmo em linguagens como 0 ObjectPascal (Delphi/Kylix), Clipper, VB, etc. Seu usa e exemplificado na proxima pagina,

    Conhe~a melhor este autor! CltNCIA E TECNOLOG IA

    http://tecnociencia.jor.br/jairsJair Strack - Registro 21255 - ID jairs

    http://tecnociencia.jor.br/jairshttp://tecnociencia.jor.br/jairs
  • 5/9/2018 Ling Programacao

    25/33

    Algoritmo "Numeros de 1 a 10 (com interrompa)"var x: inteiro1ll1ClOx

  • 5/9/2018 Ling Programacao

    26/33

    ProcedimentosEm VisuAlg, procedimento e urn subprograma que nao retoma nenhum valor (corresponde aoprocedure do Pascal). Sua declaracao, que deve estar entre 0 final da declaracao de variaveis e alinha inicio do programa principal, segue a sintaxe abaixo:procedimento [(

  • 5/9/2018 Ling Programacao

    27/33

    Fun

  • 5/9/2018 Ling Programacao

    28/33

    Passagem de Parametros por ReferenciaHa ainda uma outra forma de passagem de parametres para subprogramas: e a passagem porreferencia, Neste caso, 0 subprograma nao recebe apenas urn valor, mas sim 0 endereco de umavariavel global. Portanto, qualquer modificacao que for realizada no conteudo deste parametroafetara tambem a variavel global que esta associada a ele. Durante a execucao do subprograma,os parametres passados por referencia sao analogos as variaveis globais. No VisuAlg, de formaanaloga a Pascal, essa passagem e feita atraves da palavra var na declaracao do parametro.Voltando ao exemplo da soma, 0 procedimento abaixo realiza a mesma tarefa utilizandopassagem de parametres por referencia:procedimento soma (x,y: inteiro; var result: inteiro)1ll1ClOresult

  • 5/9/2018 Ling Programacao

    29/33

    Comando Aleat6rioMuitas vezes a digitacao de dados para 0 teste de urn programa toma-se uma tarefa entediante.Com 0 uso do comando aleatorio do VisuAlg, sempre que urn comando leia for encontrado, adigitacao de valores numericos e/ou caracteres e substituida por uma geracao aleat6ria. Estecomando nao afeta a leitura de variaveis l6gicas: com certeza, uma coisa pouco usual emprogramacao ...Este comando tern as seguintes sintaxes:aleatorio [on]Ativa a geracao de valores aleat6rios que substituem a digitacao de dados. A palavra-chave on eopcional. A faixa padrao de valores gerados e de 0 a 100 inclusive. Para a geracao de dados dotipo caractere, nao ha uma faixa pre-estabelecida: os dados gerados serao sempre strings de 5letras maiusculas.aleatorio [, ]Ativa a geracao de dados numericos aleat6rios estabelecendo uma faixa de valores minimos emaximos. Se apenas < valor1> for fomecido, a faixa sera de 0 a inclusive; casocontrario, a faixa sera de a inclusive. Se for menor que , 0VisuAlg os trocara para que a faixa fique correta. Importante: e devem serconstantes numericas, e nao express5es.aleatorio offDesativa a geracao de valores aleat6rios. A palavra-chave off e obrigat6ria.

    Comando ArquivoMuitas vezes e necessario repetir os testes de urn programa com uma serie igual de dados. Paracasos como este, 0VisuAlg permite 0 armazenamento de dados em urn arquivo-texto, obtendodeles os dados ao executar os comandos leia.Esta caracteristica funciona da seguinte maneira:1) Se nao existir 0 arquivo com nome especificado, 0VisuAlg fara uma leitura de dadosatraves da digitacao, armazenando os dados lidos neste arquivo, na ordem em que foremfomecidos.2) Se 0 arquivo existir, 0VisuAlg obtera os dados deste arquivo ate chegar ao seu fim. Dai emdiante, fara as leituras de dados atraves da digitacao.3) Somente urn comando arquivo pode ser empregado em cada pseudoc6digo, e ele deveraestar na secao de declaracoes (dependendo do "sucesso" desta caracteristica, em futuras vers5esela podera ser melhorada ...).4) Caso nao seja fomecido urn caminho, 0VisuAlg ira procurar este arquivo na pasta detrabalho corrente (geralmente, e a pasta onde 0 programa VISUALG.EXE esta). Este comandonao preve uma extensao padrao; portanto, a especificacao do nome do arquivo deve sercompleta, inclusive com sua extensao (por exemplo, .txt, .dat, etc.).A sintaxe do comando e:arquivo e uma constante caractere (entre aspas duplas).Veja 0 exemplo a seguir:algoritmo "lendo do arquivo"arquivo "teste. txt"var x,y: inteiro1ll1ClOpara x de 1 ate 5 facaleia (y)fimparafimalgoritmo

  • 5/9/2018 Ling Programacao

    30/33

    C om ando T im erEmbora 0VisuAlg seja urn interpretador de pseudoc6digo, seu desempenho e muito born: 0tempo gasto para interpretar cada linha digitada e apenas uma fracao de segundo. Entretanto, pormotivos educacionais, pode ser conveniente exibir 0 fluxo de execucao do pseudoc6digocomando por comando, em "camera lenta". 0 comando timer serve para este prop6sito: insereurn atraso (que pode ser especificado) antes da execucao de cada linha. Alem disso, realca emfundo azul 0 comando que esta sendo executado, da mesma forma que na execucao passo apasso.Sua sintaxe e :timer onAtiva 0 timer.timer Ativa 0 timer estabelecendo seu tempo de atraso em milissegundos. 0 valor padrao e 500, queequivale a meio segundo. 0 argumento deve ser uma constante inteira comvalor entre a e 10000. Valores menores que a sao corrigidos para 0, e maiores que 10000 para10000.timer offDesativa 0 timer.

    Ao longo do pseudoc6digo, pode haver varios comandos timer. Todos e1es devem estar na secaode comandos. Uma vez ativado, 0 atraso na execucao dos comandos sera mantido ate se chegarao final do pseudoc6digo ou ate ser encontrado urn comando timer off.

    Com an dos de D ep ura< ;aoNenhum ambiente de desenvolvimento esta completo se nao houver a possibilidade de se inserirpontos de interrupcao (breakpoints) no pseudoc6digo para fins de depuracao. VisuAlgimplementa dois comandos que auxiliam a depuracao ou analise de urn pseudoc6digo: 0comando pausa e 0 comando debug.Comando PausaSua sintaxe e simplesmente:PausaEste comando insere uma interrupcao incondicional no pseudoc6digo. Quando ele e encontrado,o VisuAlg para a execucao do pseudoc6digo e espera alguma acao do programador. Nestemomento, e possivel: analisar os valores das variaveis ou das saidas produzidas ate 0momento;executar 0pseudoc6digo passo a passo (com F8); prosseguir sua execucao normalmente (comF9); ou simplesmente termina-lo (com Ctrl-F2). Com excecao da alteracao do texto dopseudoc6digo, todas as funcoes do VisuAlg estao disponiveis.

    Com ando D ebugSua sintaxe e:debug Se a avaliacao de resultar em valor VERDADEIRO, a execucao dopseudoc6digo sera interrompida como no comando pausa. Dessa forma, e possivel a insercao deurn breakpoint condicional no pseudoc6digo.

  • 5/9/2018 Ling Programacao

    31/33

    Comando EeoSua sintaxe e:eco on I offEste comando ativa (eco on) ou desativa (eco off) a impressao dos dados de entrada na saida-padrao do VisuAlg, ou seja, na area a direi ta da parte inferior da tela. Esta caracteristica pode serutil quando houver uma grande quanti dade de dados de entrada, e se deseja apenas analisar asaida produzida. Convem utiliza-la tambem quando os dados de entrada provem de urn arquivoja conhecido.

    Comando Cron6metroSua sintaxe e:cronometro on I offEste comando ativa (cronometro on) ou desativa (cronometro off) 0 cronometro intemo doVisuAlg. Quando 0 comando cronometro on e encontrado, 0VisuAlg imprime na saida-padrao ainformacao "Cronometro iniciado.", e comeca a contar 0 tempo em milissegundos. Quando 0comando cronometro off e encontrado, 0VisuAlg imprime na saida-padrao a informacao"Cronometro terminado. Tempo decorrido: xx segundo(s) e xx ms". Este comando e util naanalise de desempenho de algoritmos (ordenacao, busca, etc.).

    Comando LimpatelaSua sintaxe eLimpatelaEste comando simplesmente limpa a tela DOS do Visualg (a simulacao da tela do computador).Ele nao afeta a "tela" que existe na parte inferior direita da jane1a principal do Visualg.Nesta pagina estao todas as palavras-chave da linguagem de programacao do VisuAlg. Em cadauma delas, ha urn link para sua correspondente secao dentro das paginas de ajuda.

    Fun

  • 5/9/2018 Ling Programacao

    32/33

    Fun

  • 5/9/2018 Ling Programacao

    33/33

    Fun< ;5 es para manipu la< ;ao de cadeias de caracteres (strin gs)Asc (s : caracter) : Retoma urn inteiro com 0 c6digo ASCII do primeiro caracter da expressao.Carac (c : inteiro) : Retoma 0 caracter cujo c6digo ASCII corresponde it expressao.Caracpnum (c : caracter) : Retoma 0 inteiro ou real representado pela expressao. Corresponde aStr'Iolntt) ou StrToFloatO do Delphi, Valt) do Basic ou Clipper, etc.Compr (c : caracter) : Retoma urn inteiro contendo 0 comprimento (quantidade de caracteres) daexpressao.Copia (c : caracter; p, n : inteiro) : Retoma urn valor do tipo caracter contendo uma c6pia parcialda expressao, a partir do caracter p, contendo n caracteres. Os caracteres sao numerados daesquerda para a direi ta, comecando de 1. Corresponde a Copyt) do Delphi, Mid$O do Basic ouSubstrt) do Clipper.Maiusc (c : caracter) : Retoma urn valor caracter contendo a expressao em maiusculas.Minusc (c : caracter) : Retoma urn valor caracter contendo a expressao em minusculas.Numpcarac (n : inteiro ou real) : Retoma urn valor caracter contendo a representacao de n comouma cadeia de caracteres. Corresponde a Int'IoStrf) ou FloatToStrO do Delphi, Stn') do Basic ouClipper.Pos (subc, c : caracter) : Retoma urn inteiro que indica a posicao em que a cadeia subc seencontra em c, ou zero se subc nao estiver contida em c. Corresponde funcionalmente a Post) doDelphi, Instrt) do Basic ou AtO do Clipper, embora a ordem dos parametres possa ser diferenteem algumas destas linguagens.A seguir temos alguns exemplos que ilustram 0 uso destas funcoes.algoritmo "exemplo _funcoes2"vara, b, c : caracter1ll1ClOa