Você está aqui: Python ::: Desafios e Lista de Exercícios Resolvidos ::: Resistência dos Materiais - Tensões, Deformações e Lei de Hooke |
|
Uma barra de aço de 12,7 mm de diâmetro suporta uma carga de 7.000 kg. a) Qual é a tensão atuante na barra? b) Qual será a deformação? - Desafio de Programação Resolvido em PythonQuantidade de visualizações: 367 vezes |
|
Pergunta/Tarefa: Uma barra de aço de 12,7 mm de diâmetro suporta uma carga de 7.000 kg. a) Qual é a tensão atuante na barra? b) Qual será a deformação? (Módulo de elasticidade do aço = 205.000 MPa). Sua saída deverá ser parecida com: A área da seção circular é: 1.2667686977437442 cm2: A força em kN é: 68646.55 A tensão na barra é: 541.9027966373587 MPa A deformação na barra é: 2.6434282762797987 mm/m Além da aplicação da Lei de Hooke, fique atento(a) às conversões de milímetros quadrados para metros quadrados, quilograma para quilonewton, quilonewton por centímetro quadrado para megapascal e metros para milímetros. A maioria dos alunos e profissionais de engenharia erram os cálculos por culpa dessas conversões. Veja a resolução comentada deste exercício usando Python:
|
|
Link para compartilhar na Internet ou com seus amigos: | |
Python ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o seno de um número ou ângulo em Python usando a função sin() do módulo MathQuantidade de visualizações: 1176 vezes |
Em geral, quando falamos de seno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função seno disponível nas linguagens de programação para calcular o seno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria. No entanto, é sempre importante entender o que é a função seno. Veja a seguinte imagem: Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles. Assim, o seno é a razão entre o cateto oposto (oposto ao ângulo theta) e a hipotenusa, ou seja, o cateto oposto dividido pela hipotenusa. Veja a fórmula: \[\text{Seno} = \frac{\text{Cateto oposto}}{\text{Hipotenusa}} \] Então, se dividirmos 20 por 36.056 (na figura eu arredondei) nós teremos 0.5547, que é a razão entre o cateto oposto e a hipotenusa (em radianos). Agora, experimente calcular o arco-cosseno de 0.5547. O resultado será 0.9828 (em radianos). Convertendo 0.9828 radianos para graus, nós obtemos 56.31º, que é exatamente o ângulo em graus entre o cateto oposto e a hipotenusa na figura acima. Pronto! Agora que já sabemos o que é seno na trigonometria, vamos entender mais sobre a função sin() da linguagem Python. Este método, que faz parte do módulo Math, recebe um valor numérico e retorna um valor, também numérico) entre -1 até 1 (ambos inclusos). Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # importamos a biblioteca Math import math as math def main(): print("Seno de 0 = ", math.sin(0)) print("Seno de 1 = ", math.sin(1)) print("Seno de 2 = ", math.sin(2)) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Seno de 0 = 0.0 Seno de 1 = 0.8414709848078965 Seno de 2 = 0.9092974268256817 Note que calculamos os senos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função seno mostrada abaixo: |
Python ::: Dicas & Truques ::: Ordenação e Pesquisa (Busca) |
Como usar a busca binária em Python - Pesquisa binária na linguagem PythonQuantidade de visualizações: 519 vezes |
A busca binária, ou pesquisa binária, é um algoritmo eficiente para encontrar um item em uma lista (vetor ou array) ordenada. Sim, os itens devem, obrigatoriamente, estar ordenados. O processo é bem simples. A busca binária começa a partir do meio da lista e compara o item nesta posição com o valor sendo pesquisado. Se o valor não for encontrado e for menor que o item no meio da lista, o algoritmo passa para a porção à esquerda da lista, eliminando, assim, metade dos elementos do vetor ou array (a porção maior que o valor pesquisado). Se o valor não for encontrado e for maior que o item no meio da lista, então a busca reinicia a partir da metade da sub-lista à direita (os itens maiores que o valor pesquisado). Essa divisão continua até que o valor seja encontrado ou não seja mais possível dividir a lista pela metade. Se um array ou vetor possuir 100 elementos e usarmos a busca binária nele, precisaremos efetuar no máximo 7 tentativas para encontrar o valor desejado. Se a lista possuir 4 bilhões de itens nós teremos que fazer no máximo 32 tentativas. Isso acontece porque a pesquisa binária é executada em tempo logarítmico, ou seja, log2 n, onde n é a quantidade de itens no vetor. Dessa forma, se tivemos 1.000 itens em um array, log2 1000 = 10 tentativas. Lembre-se de que, na programação log e log2 retornam resultados diferentes: log(10) = 2.302585092994046 enquanto log2(10) = 3.321928094887362. Na análise da busca binária nós usamos sempre log2. Vamos agora ver como podemos codificar a busca binária em Python. Veja o código a seguir: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # função principal do programa def main(): # vamos criar uma lista ordenada de inteiros valores = [3, 5, 7, 8, 9, 12, 43, 50, 52, 60] print("Os valores da lista são: {0}".format(valores)) # vamos pedir o item a ser pesquisado numero = int(input("Informe o número a ser pesquisado: ")) # agora vamos pesquisar o número no array usando a pesquisa # binária # a variável esquerda aponta para o primeiro elemento do vetor esquerda = 0 # a variável direita aponta para o último elemento do vetor direita = len(valores) - 1 # para indicar se o valor foi encontrado encontrado = False # enquanto houver mais de um elemento a ser comparado while esquerda <= direita: # obtemos o elemento na metade da lista meio = (esquerda + direita) // 2 # fazemos a comparação if numero == valores[meio]: print("O número foi encontrado no índice {0}".format( meio)) encontrado = True break # sai do laço # o item atual é maior que o valor pesquisado? if valores[meio] > numero: direita = meio - 1 # o item atual é menor que o valor pesquisado? else: esquerda = meio + 1 # o valor foi encontrado? if not encontrado: print("O valor pesquisado não foi encontrado") if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Os valores da lista são: [3, 5, 7, 8, 9, 12, 43, 50, 52, 60] Informe o número a ser pesquisado: 9 O número foi encontrado no índice 4 |
Python ::: Dicas & Truques ::: Lista (List) |
Como pesquisar um item em uma lista Python e retornar seu índice usando a função index()Quantidade de visualizações: 10756 vezes |
Em algumas situações nós precisamos pesquisar um item em uma List do Python e retornar o índice de sua primeira ocorrência. Para isso nós podemos usar o método index(), que aceita uma string, um number, um object, etc, e retorna o índice da primeira posição do item dentro da lista. Veja um exemplo de seu uso: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- """ Este exemplo mostra como pesquisar um item em uma lista. Se o item for encontrado, seu índice é retornado. Do contrário uma exceção do tipo ValueError é levantada. """ def main(): # cria uma lista de inteiros valores = [2, 5, 12, 2, 3, 32, 18] try: indice = valores.index(13) except ValueError: print("O valor pesquisado nao foi encontrado") else: print("O valor foi encontrado no índice", indice) if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: O valor pesquisado não foi encontrado. Note que no exemplo nós usamos um bloco try..except para tratar a exceção ValueError, disparada quando o item pesquisado por meio da função index() não for encontrado na List. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- Exception has occurred: ValueError 13 is not in list |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |