Compre o e-book deste material aqui!
Na programação estruturada, os comandos de programação são executados em sequência, um novo comando só iniciado após o término do processamento do comando anterior. Em Python, cada linha consiste em um comando, o programa tem início na primeira linha e término na última linha do código. Instruções de ramificação permitem a seleção on-the-fly de blocos de comandos, enquanto que instruções de repetição permitem a execução repetida de um bloco. A definição de função permite a criação de um sub-código (sub-programa) do código.
Uma estrutura de ramificação é uma instrução if-[elif-...-elif-else] para a tomada de decisões durante a execução de um programa.
Por exemplo, o código abaixo computa as raízes reais do polinômio
(19) |
com , e alocados no início do código.
x1 = -1.0 x2 = 2.0
Neste código, o bloco de comandos (linhas 7-10) só é executado, se o discriminante do polinômio seja não-negativo. Verifique! Troque os valores de , e de forma que tenha raízes complexas.
(Indentação.) Nas linhas 7-10 do código anterior, a indentação dos comandos é obrigatória. O bloco de comandos indentados indicam o escopo da instrução if.
Vamos modificar o código anterior, de forma que as raízes complexas sejam computadas e impressas, quando for o caso.
x1 = (2-2j) x2 = (2+2j)
(Número Complexo.) Em Python, números complexos podem ser alocados como objetos da classe complex. O número imaginário é denotado por 1j e um número completo por a + b*1j.
A instrução elif é uma conjunção de uma sequência de instruções textttelse-if. Vamos modificar o código anterior, de forma a computar o caso de raízes reais duplas de forma própria.
x1 = -1.0 x2 = -1.0
Desenvolva um código para computar a raiz do polinômio
(20) |
com dados e . O código deve lidar com todos os casos possíveis, a saber:
única raiz ().
infinitas raízes ().
não existe raiz ( e ).
Desenvolva um código em que dados três pontos , e no plano, verifique se determina um triângulo. Caso afirmativo, classifique-o como um triângulo equilátero, isósceles ou escaleno.
Estruturas de repetição são instruções que permitem que a execução repetida de um bloco de comandos. São duas instruções disponíveis while e for.
A instrução while permite a repetição de um bloco de comandos, enquanto uma dada condição for verdadeira.
Por exemplo, o seguinte código computa e imprimi os elementos da sequência de Fibonacci55endnote: 5Leonardo Fibonacci, 1170 - 1250, matemático italiano. Fonte: Wikipédia: Leonardo Fibonacci., enquanto forem menores que .
Verifique!
Use while para imprimir os dez primeiros números ímpares.
Uma aplicação do Método Babilônico66endnote: 6Matemática Babilônica, matemática desenvolvida na Mesopotâmia, desde os Sumérios até a queda da Babilônia em 539 a.C.. Fonte: Wikipédia. para a aproximação da solução da equação , consiste na iteração
(21) | |||
(22) |
Faça um código com while para computar aproximação , tal que .
A instrução for permite a execução iterada de um bloco de comandos. Dado um objeto iterável, a cada laço um novo item do objeto é tomado. Por exemplo, o seguinte código computa e imprime os primeiros elementos da sequência de Fibonacci.
Verifique!
A função range([start,]stop[,sep]) é particularmente útil na construção de instruções for. Ela cria um objeto de classe iterável de start (incluído) a stop (excluído), de elementos igualmente separados por sep. Por padrão, start=0, sep=1 caso omitidos. Por exemplo, o código anterior por ser reescrito como segue.
Verifique!
Com dado, desenvolva um código para computar o valor da soma harmônica
(23) |
Desenvolva um código para computar o fatorial de um dado número natural . Dica: use math.factorial para verificar seu código.
Em Python, uma função é definida pela instrução def. Por exemplo, o seguinte código implementa a função
(24) |
e imprime o valor de .
f(2) = 2
Para funções pequenas, pode-se utilizar a instrução lambda de funções anônimas. Por exemplo,
f(3) = 3
(Função com Parâmetros.) O seguinte código, implementa o polinômio de primeiro grau
(25) |
com parâmetros predeterminados e (função identidade).
Implemente uma função para computar as raízes de um polinômio de grau 2 .
Implemente uma função que computa o produto escalar de dois vetores
(26) | |||
(27) |
Dica: considere que os vetores são alocados com lists.
Implemente uma função que computa o determinante de matrizes . Dica: considere que a matriz está alocada com um list encadeado.
Implemente uma função que computa a multiplicação matriz - vetor , com matriz e um vetor de dois elementos. Assuma que a matriz e o vetor estão alocados usando list.
As informações preenchidas são enviadas por e-mail para o desenvolvedor do site e tratadas de forma privada. Consulte a Política de Uso de Dados para mais informações. Aproveito para agradecer a todas/os que de forma assídua ou esporádica contribuem enviando correções, sugestões e críticas!