Técnicas de Programação - Paulo Roberto Bernardo 1 - Aulas 57, 58, 59 e 60 - Técnicas de programação. Funções Um programa pode possuir determinados processos realizados repetidas vezes ao longo da execução do programa. Estes processos podem se agrupar em uma função, definida para que não tenhamos que repetir código em nossos programas. Portanto, podemos ver uma função como uma série de instruções que englobamos dentro de um mesmo processo. É uma prática comum utilizar funções. Além das que podemos escrever, também utilizamos as que já estão definidas, pois todas as linguagens de programação possuem funções para realizar processos habituais como, por exemplo, obter a hora, imprimir uma mensagem na tela ou converter variáveis de um tipo a outro. Um exemplo do uso de uma função em javascript é quando necessitamos imprimir algo na tela - document.write(). Na verdade estamos chamando a função write(). - Como se escreve uma Função Uma função consiste de uma palavra “function” seguida pelo nome da função. Sempre existem parênteses após o nome da função. As instruções que formam a função ficam nas linhas seguintes entre chaves. <script type="text/javascript"> function nomedafuncao() { instruções da função; } </script> O exemplo abaixo, representa uma função que escreve na página uma mensagem. <html> <head> <title>Funções</title> <script type="text/javascript"> function boasvindas() { document.write("Olá a todos"); } </script> </head> <body onload="boasvindas();"> </body> </html> Técnicas de Programação - Paulo Roberto Bernardo 2 - Como executar uma Função. Para executar uma função, é necessário chamá-la. Para executar a função utilizamos seu nome seguido dos parênteses - NomeDaFuncao(). <script type="text/javascript"> teste(); // chamando a função function teste() { window.alert("Minha primeira função!"); } </script> A localização da chamada de uma função é indiferente, desde que a função tenha sido criada no mesmo bloco <script></script> onde esteja sendo chamada. <script type="text/javascript"> teste(); // chamando a função function teste() { window.alert("Minha primeira função!"); } teste(); // chamando a função </script> O exemplo acima funciona corretamente porque a função está declarada no mesmo bloco em que está sendo chamada. Em javascript é possível chamar uma função praticamente em qualquer ponto da página, desde que a chamada esteja entre tags <script></script>. <html> <head> <title>Funções</title> <script type="text/javascript"> teste(); // chamando a função function teste() { window.alert("Minha primeira função!"); } </script> </head> <body> <script> teste();// chamando a função </script> </body> </html> Técnicas de Programação - Paulo Roberto Bernardo 3 As funções declaradas no cabeçalho, ou seja, entre as tags <head></head>, estarão prontas para serem utilizadas na medida em que forem solicitadas. As funções também podem ser inseridas em qualquer parte da página, desde que estejam entre as tags <script></script>. <html> <head> <title>Funções</title> </head> <body> <script> function teste() //declarando a função { window.alert("Minha primeira função!"); } </script> <script> teste(); // chamando a função </script> </body> </html> Quando a chamada de uma função e sua declaração estiverem em blocos <script></script> separados, a chamada deverá ser executada após a declaração para que a função seja executada. <html> <head> <title>Funções</title> </head> <body> <script> function teste() //declarando a função { window.alert("Minha primeira função!"); } </script> <script> teste(); // chamando a função </script> </body> </html> Técnicas de Programação - Paulo Roberto Bernardo 4 - Parâmetros As funções também têm uma entrada e uma saída, que se podem utilizar para receber e devolver dados. Os parâmetros são os valores de entrada e são utilizados para enviar valores à função, com os quais ela trabalhará para realizar as instruções. Para definirmos um parâmetro na função temos que inserir o nome da variável que armazenará o dado que será enviado. Essa variável terá como conteúdo o dado que passarmos a esta função quando ela for chamada. <script type="text/javascript"> boasvindas("Airton Senna"); // chamando a função com argumento function boasvindas(nome) // parâmetro da função { window.alert("Olá " + nome + "!"); } </script> <script type="text/javascript"> for (x=0; x<=2; ++x) { boasvindas("Airton Senna"); } function boasvindas(nome) { document.write("Olá " + nome + "!" + "<br>"); } </script> . <script type="text/javascript"> var a, b; a = parseInt(window.prompt("Informe o primeiro número!")); b = parseInt(window.prompt("Informe o segundo número!")); teste(a,b); function teste(x,y) { var soma; soma = x + y; document.write("O valor da soma é = " + soma); } </script> Técnicas de Programação - Paulo Roberto Bernardo 5 Exercício Desenvolva um algoritmo em javascript que receba dois valores numéricos inteiros e a operação a ser realizada (+, -, *, /). O algoritmo deverá realizar a operação escolhida e apresentar o resultado, conforme a exibição: O primeiro número informado foi 6 O segundo número informado foi 8 O resultado da operação é = 48 Crie funções para: - Entrada de dados; - Verificar qual operação escolhida; - Soma; - Subtração; - Multiplicação; - Divisão; - Impressão.