![]() |
|
|
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 Engenharia Civil - Construção Civil |
||
|
||
|
|
||
JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como filtrar os elementos de um array em JavaScript usando a função filter() - Vetores e matrizes em JavaScriptQuantidade de visualizações: 3058 vezes |
|
O método filter(), adicionado à linguagem JavaScript por meio do ECMAScript 5 (JavaScript 5, ECMAScript 2009, ES5) nos permite criar um novo vetor contendo apenas os elementos que passarem em um determinado teste, que pode ser uma função de usuário personalizada. Esta função é uma função de callback que será chamada uma vez para cada um dos elementos do vetor. Para melhor entendimento, comece analisando o trecho de código abaixo:
<script type="text/javascript">
function maiorQue10(valor){
return valor > 10;
}
// vamos criar um vetor de inteiros
var valores = [2, 6, 32, 9, 3, 21];
// vamos filtrar o vetor para obter apenas os
// valores maiores que 10
var maiores10 = valores.filter(maiorQue10);
// vamos mostrar o resultado
window.alert(maiores10);
</script>
Neste código usamos o método filter() para gerar um novo vetor contendo apenas os elementos com valores maiores que 10. Veja que fornecemos uma função como argumento para o método filter() e, dentro dessa função, nós retornamos true ou false para que a filtragem inclua ou não o valor sendo analisado no momento. Uma função passada para o método filter() pode conter os seguintes argumentos (nessa mesma ordem): a) O valor do item; b) O índice do item (opcional); c) O vetor a partir do qual o método filter() está sendo chamado (opcional). Veja mais um trecho de código no qual retornamos os elementos de um array maiores que 10 e precedidos de um número par:
<script type="text/javascript">
function maiorQue10PrecPar(valor, indice, vetor){
// o primeiro elemento não é precedido por
// outro. Vamos descartá-lo
if(indice == 0){
return false;
}
// é precedido por um número par?
if(vetor[indice - 1] % 2 == 0){
// é maior que 10?
return valor > 10;
}
// nenhuma das condições acima?
return false;
}
// vamos criar um vetor de inteiros
var valores = [2, 6, 32, 9, 3, 21];
// vamos filtrar o vetor para obter apenas os
// valores maiores que 10 e precedidos por um
// número par
var maiores10 = valores.filter(maiorQue10PrecPar);
// vamos mostrar o resultado
window.alert(maiores10);
</script>
Execute este código e verá que apenas o valor 32 será retornado, pois ele é o único maior que 10 e precedido por um número par. |
Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a transposta de uma matriz em Python - Python para Geometria Analítica e Álgebra LinearQuantidade de visualizações: 7815 vezes |
|
A matriz transposta de uma matriz A é a matriz AT. Tal matriz é obtida quando copiamos os elementos da matriz A para uma outra matriz (ou para ela mesma) e trocamos de posição as linhas e colunas. Dessa forma, a primeira linha da matriz A se transforma na primeira coluna da matriz transposta, a segunda linha da matriz A se transforma na segunda coluna da matriz transposta e assim por diante. Em termos de notação, podemos dizer, de forma algébrica, que: ATji = Aij Onde i representa as linhas e j representa as colunas, tanto na matriz original quanto na matriz transposta. É importante estar atento à quantidade de linhas e colunas na matriz original e na matriz transposta equivalente. Assim, se a matriz original for 3x2, a matriz transposta será 2x3. Antes de vermos o código Python, dê uma olhada na seguinte matriz de duas linhas e três colunas: \[A = \left[\begin{matrix} 3 & 5 & 7 \\ 1 & 2 & 9 \end{matrix}\right] \] Sua matriz transposta correspondente é: \[A^T = \left[\begin{matrix} 3 & 1 \\ 5 & 2 \\ 7 & 9 \end{matrix}\right] \] E agora veja o código Python que declara uma matriz 2x3 e gera a matriz transposta 3x2:
# importamos a bibliteca NumPy
import numpy as np
def main():
# vamos declarar e construir uma matrix
# 2x3 (duas linhas e três colunas
matriz = np.array([(3, 5, 7), (1, 2, 9)])
# vamos exibir os valores da matriz
print("Elementos da matriz:")
for i in range(np.shape(matriz)[0]):
for j in range(np.shape(matriz)[1]):
print("%7.2f" % matriz[i][j], end="")
print()
# como temos uma matriz 2x3, a transposta deverá ser
# 3x2, ou seja, três linhas e duas colunas
linhas = np.shape(matriz)[0] # linhas da matriz original
colunas = np.shape(matriz)[1] # colunas da matriz original
transposta = np.empty((colunas, linhas))
# e agora vamos preencher a matriz transposta
for i in range(np.shape(matriz)[0]):
for j in range(np.shape(matriz)[1]):
transposta[j][i] = matriz[i][j]
# vamos exibir os valores da matriz transposta
print("\nElementos da matriz transposta:")
for i in range(np.shape(transposta)[0]):
for j in range(np.shape(transposta)[1]):
print("%7.2f" % transposta[i][j], end="")
print()
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado:
Elementos da matriz:
3 5 7
1 2 9
Elementos da matriz transposta:
3 1
5 2
7 9
É possível também obter a matriz transposta de um outra matriz usando o método transpose() da biblioteca NumPy da linguagem Python. Veja:
# importamos a bibliteca NumPy
import numpy as np
def main():
# vamos declarar e construir uma matrix
# 2x3 (duas linhas e três colunas
matriz = np.array([(3, 5, 7), (1, 2, 9)])
# vamos exibir os valores da matriz
print("Elementos da matriz:")
for i in range(np.shape(matriz)[0]):
for j in range(np.shape(matriz)[1]):
print("%7.2f" % matriz[i][j], end="")
print()
# vamos transpor a matriz usando o método transpose()
transposta = matriz.transpose()
# vamos exibir os valores da matriz transposta
print("\nElementos da matriz transposta:")
for i in range(np.shape(transposta)[0]):
for j in range(np.shape(transposta)[1]):
print("%7.2f" % transposta[i][j], end="")
print()
if __name__== "__main__":
main()
Ao executar este novo código Python veremos que o resultado é o mesmo. |
Python ::: Dicas & Truques ::: Strings e Caracteres |
Como verificar se uma string está toda em letras minúsculas usando a função islower() da classe string do PythonQuantidade de visualizações: 8799 vezes |
|
Em algumas ocasiões nós precisamos verificar se uma palavra, frase ou texto contém apenas letras minúsculas. Para isso pode usar a função islower() da classe string do Python. Esta função True se a string contiver apenas letras minúsculas e False em caso contrário. Note que, mesmo que a string contenha números ela ainda pode estar em letras minúsculas. Veja o código completo:
# função principal do programa
def main():
frase = "ainda gosto do python_2.6"
if frase.islower():
print("A string está em letras minúsculas")
else:
print("A string não está em letras minúsculas")
if __name__== "__main__":
main()
Ao executar este código nós teremos o seguinte resultado: A string está em letras minúsculas |
Delphi ::: VCL - Visual Component Library ::: TListBox |
Como pesquisar e selecionar um item em uma ListBox do DelphiQuantidade de visualizações: 17220 vezes |
O trecho de código abaixo mostra como podemos usar a mensagem LB_SELECTSTRING da Windows API para pesquisar e selecionar um item em uma ListBox. Veja que aqui eu usei a função InputBox() para permitir ao usuário inserir o texto a ser pesquisado. Note também o valor -1 fornecido como wParam para a função SendMessage(). Este valor faz com que a busca se inicie no primeiro item da lista e continue até o final da lista. Veja o código:
procedure TForm1.Button2Click(Sender: TObject);
var
pesquisa: string;
begin
// vamos solicitar o texto a ser pesquisado na ListBox
pesquisa := InputBox('Pesquisar', 'Informe o texto', '');
// vamos pesquisar e selecionar o item encontrado
if SendMessage(ListBox1.Handle, LB_SELECTSTRING, - 1,
Longint(PChar(pesquisa))) <> LB_ERR then
begin
ShowMessage('O texto pesquisado foi encontrado no ' +
'índice: ' + IntToStr(ListBox1.ItemIndex));
end
else
begin
ShowMessage('O texto pesquisado não foi encontrado.');
end;
end;
Note que a busca efetuada por LB_SELECTSTRING não é sensitiva a maiúsculas e minúsculas. Assim, Osmar e OSMAR são tratadas igualmente. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como substituir substrings em strings C++ usando a função replace()Quantidade de visualizações: 11362 vezes |
Nesta dica mostrarei como podemos usar a função replace() da classe String do C++ para substituir parte de uma palavra, frase ou texto, ou seja, substituir uma substring em uma string. Para isso nós vamos usar a seguinte assinatura da função replace():string& replace(size_t pos1, size_t n1, const string& str); Veja o código C++ completo para o exemplo:
#include <string>
#include <iostream>
using namespace std;
int main(int argc, char *argv[]){
// vamos criar uma string
string frase = "Gosto de Java";
cout << "A frase e: " << frase << endl;
// vamos substituir Java por C++
frase.replace(9, 4, "PHP");
// e mostramos o resultado
cout << "Depois da substituicao: " << frase << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: A frase é: Gosto de Java Depois da substituição: Gosto de PHP |
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
|
Delphi - Como converter strings em valores TDateTime usando as funções StrToDate() e StrToDateDef() do Delphi Java - Estruturas de Dados em Java - Como inserir nós no início de uma lista singularmente ligada em Java |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




