![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Você está aqui: Cards de Cards de Hidrologia |
||
|
||
|
|
||
Python ::: Itertools ::: Iteradores de Combinação e Permutação |
Como gerar permutações de uma string em Python usando o objeto permutations do módulo ItertoolsQuantidade de visualizações: 1307 vezes |
|
Nesta dica mostrarei como podemos usar o objeto permutations do módulo Itertools para gerar as permutações simples de uma string. Na permutação simples, quando os elementos não se repetem, a quantidade de conjuntos gerados a partir do conjunto analisado equivale a n!, onde n é a quantidade de elementos no conjunto a partir do qual a permutação ocorrerá. Dessa forma, para a palavra LOTE, a quantidade de permutações possíveis (sem repetição) é 4! = 24. Veja o código Python completo que gera as permutações simples para a palavra LOTE:
# vamos importar o objeto permutations do Itertools
from itertools import permutations
def main():
# palavra contendo os caracteres que queremos
# gerar a permutação. Veja que não vamos usar
# caracteres repetidos
palavra = "LOTE"
# agora obtemos uma lista com as permutações possíveis
permutacoes = [''.join(p) for p in permutations(palavra)]
# e mostramos o resultado
print("As permutações para a palavra {0} são:\n".format(palavra))
print(permutacoes)
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: As permutações para a palavra LOTE são: ['LOTE', 'LOET', 'LTOE', 'LTEO', 'LEOT', 'LETO', 'OLTE', 'OLET', 'OTLE', 'OTEL', 'OELT', 'OETL', 'TLOE', 'TLEO', 'TOLE', 'TOEL', 'TELO', 'TEOL', 'ELOT', 'ELTO', 'EOLT', 'EOTL', 'ETLO', 'ETOL'] |
JavaScript ::: Dicas & Truques ::: Strings e Caracteres |
Como retornar o tamanho de uma string em JavaScript usando a propriedade length do objeto StringQuantidade de visualizações: 11096 vezes |
Em algumas situações precisamos saber a quantidade de caracteres contidos em uma frase ou texto. Para isso podemos usar a propriedade length do objeto String. Esta propriedade retorna o tamanho da string, ou seja, a quantidade de caracteres contidos na mesma. Veja um exemplo:
<html>
<head>
<title>Estudos JavaScript</title>
</head>
<body>
<script type="text/javascript">
// vamos declarar uma string
var nome = "Osmar";
// vamos obter a quantidade de caracteres nesta string
var tam = nome.length;
// vamos exibir o resultado
window.alert("A string contém " + tam + " caracteres.");
</script>
</body>
</html>
Esta dica foi escrita e testada no Internet Explorer 8 e Firefox 3.6. |
Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular o determinante de uma matriz 3x3 usando a Método de Sarrus em Python - Python para Álgebra LinearQuantidade de visualizações: 6309 vezes |
|
Os estudos da Geometria Analítica e Álgebra Linear envolvem, em boa parte de seus cálculos, a magnitude de vetores, ou seja, o módulo, tamanho, comprimento ou intensidade dos vetores. E isso não é diferente em relação às matrizes. Quando uma matriz é envolvida nos cálculos, com muita frequência precisamos obter o seu determinante, que nada mais é que um número real associado à todas as matrizes quadradas. Nesta dica mostrarei como obter o determinante de uma matriz quadrada de ordem 3, ou seja, três linhas e três colunas, usando o Método de Sarrus (somente matrizes 3x3). Note que é possível obter o mesmo resultado com o Teorema de Laplace, que não está restrito às matrizes quadradas de ordem 3. Veja também que não considerei as propriedades do determinante, o que, em alguns casos, simplifica muito os cálculos. Então, vamos supor a seguinte matriz 3x3: ![]() O primeiro passo é copiarmos a primeira e a segunda colunas para o lado direito da matriz. Assim: ![]() Agora dividimos a matriz em dois conjuntos: três linhas diagonais descendentes e três linhas diagonais ascendentes: ![]() Agora é só efetuar cálculos. Multiplicamos e somamos os elementos de cada conjunto, subtraindo o segundo conjunto do primeiro. Veja: (1 x 5 x 9 + 2 x 6 x 7 + 3 x 4 x 8) - (7 x 5 x 3 + 8 x 6 x 1 + 9 x 4 x 2) = 0 Como podemos ver, o determinante dessa matriz é 0. E agora veja o código Python no qual declaramos e instanciamos uma matriz 3x3, em seguida, calculamos o seu determinante:
# importamos a bibliteca NumPy
import numpy as np
# função principal do programa
def main():
# vamos criar uma matriz 3x3
m = np.array([(1, 2, 3), (2, 5, 2), (1, 3, 1)])
# calcula o determinante usando a Regra de Sarrus
det = ((m[0][0] * m[1][1] * m[2][2]) + (m[0][1]
* m[1][2] * m[2][0]) + (m[0][2] * m[1][0] * m[2][1])) - ((m[2][0]
* m[1][1] * m[0][2]) + (m[2][1] * m[1][2] * m[0][0]) + (m[2][2]
* m[1][0] * m[0][1]))
# mostramos o resultado
print("O determinante da matriz é: %f" % det)
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: O determinante da matriz é: 2.0 É possível também obter o determinante de uma matriz (não restrita à dimensão 3x3) usando o método linalg.det() da biblioteca NumPy do Python. Veja o código a seguir:
# importamos a bibliteca NumPy
import numpy as np
# função principal do programa
def main():
# vamos criar uma matriz 3x3
m = np.array([(1, 2, 3), (2, 5, 2), (1, 3, 1)])
# calcula o determinante usando apenas NumPy
det = np.linalg.det(m)
# mostramos o resultado
print("O determinante da matriz é: %f" % det)
if __name__== "__main__":
main()
Veja que usei a mesma matriz e, usando apenas o método linalg.det() nós obtemos o mesmo resultado. |
PHP ::: Fundamentos da Linguagem ::: Tipos de Dados |
Como usar o tipo de dados object da linguagem PHPQuantidade de visualizações: 8278 vezes |
|
O PHP, especialmente a partir da versão 5.0, suporta a programação orientada a objetos (OOP). A programação OOP promove um design modular limpo, simplifica a depuração e manutenção e facilita a reutilização de códigos. As classes são os pontos cruciais de um design orientado a objetos. Uma classe é uma definição de uma estrutura que contém propriedades (variáveis) e métodos (funções). Classes são definidas com a palavra-chave class:
class Pessoa{
public $nome = '';
function nome($novo_nome = NULL){
if(!is_null($novo_nome)){
$this->nome = $novo_nome;
}
return $this->nome;
}
}
Uma vez que uma classe é definida, qualquer número de objetos podem ser construídos a partir dela por meio do uso da palavra-chave new, e as propriedades e métodos do objeto podem ser acessadas com a construção ->. Veja:
$pessoa = new Pessoa;
$pessoa->nome('Osmar J. Silva');
printf("Olá, %s<br>", $pessoa->nome);
Se quisermos saber se uma variável é do tipo object, podemos usar a função is_object(). Veja:
<?
class Pessoa{
public $nome = '';
function nome($novo_nome = NULL){
if(!is_null($novo_nome)){
$this->nome = $novo_nome;
}
return $this->nome;
}
}
$pessoa = new Pessoa;
if(is_object($pessoa)){
echo 'A variável $pessoa é do tipo object.';
}
?>
Ao executarmos este código PHP nós teremos o seguinte resultado: A variável $pessoa é do tipo object. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Como corrigir o erro ArrayIndexOutOfBoundsException ao usar um laço for para percorrer os elementos de um arrayQuantidade de visualizações: 12939 vezes |
|
Pergunta/Tarefa: Observe o seguinte trecho de código:
public static void main(String[] args){
// um vetor de inteiros contendo cinco elementos
int valores[] = {5, 32, 9, 10, 6};
// vamos usar um laço for para exibir os valores dos elementos
// do vetorz
for(int i = 0; i <= 5; i++){
System.out.println("O valor do " + (i + 1) + "º elemento é " + valores[i]);
}
}
O valor do 1º elemento é 5 O valor do 2º elemento é 32 O valor do 3º elemento é 9 O valor do 4º elemento é 10 O valor do 5º elemento é 6 Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 at javaapplication1.Main.main(Main.java:14) Java Result: 1 Resposta/Solução:
O erro no código é de lógica. Como temos cinco elementos no vetor
e o índice do último elemento é 4 (o índice do primeiro elemento é 0),
o valor da variável de controle do laço for não pode ultrapassar 4. No
código acima o valor da variável i vai até 5, o que provoca um erro
ao tentar acessar um elemento do vetor que não existe.
Para corrigir o erro, basta alterar a linha:
for(int i = 0; i <= 5; i++){
para:
for(int i = 0; i < 5; i++){
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
|
JavaScript - Como testar se uma string termina com uma determinada substring em JavaScript usando a função endsWith() |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |








