![]() |
|
|
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. |
||
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Passos Iniciais |
Machine Learning para iniciantes - Como usar a biblioteca NumPy em seus programas PythonQuantidade de visualizações: 2720 vezes |
|
Criada em 2005 por Travis Oliphant, a biblioteca NumPy é uma biblioteca Python que, embora escrita parcialmente em código Python, possui trechos de código C ou C++, principalmente as partes que requerem processamento ou computação mais veloz. Estudiosos, entusiastas e desenvolvedores de soluções envolvendo Data Science, Deep Learning, Machine Learning e Inteligência Artificial (IA) em geral, encontram nessa biblioteca muitas funções úteis para a criação e manipulação de vetores e matrizes, além de funções para trabalhar no domínio de algebra linear e transformação fourier. A biblioteca NumPy (Numerical Python) é um projeto open source e pode ser usada livremente em qualquer programa Python. Uma das razões para a sua adoção é a substituição das listas Python pelos vetores e matrizes NumPy, já que estes últimos são 50 vezes mais rápidas que as listas Python, que muitas vezes fazem o papel de arrays. Minha instalação do Python já possui a biblioteca NumPy? A melhor forma de descobrir se a NumPy já está disponível para os seus códigos Python é rodando o seguinte trecho de código: # importamos a bibliteca NumPy import numpy as np def main(): # construimos um vetor de cinco elementos vetor = np.array([20, 3, 87, 4, 120]) # imprimimos seu conteúdo print(vetor) if __name__== "__main__": main() Se você vir o resultado abaixo: [ 20 3 87 4 120] então sua instalação do Python já contém a biblioteca NumPy e você está pronto(a) para experimentar as demais dicas e truques dessa seção. Porém, se você ainda não tiver a NumPy, a seguinte mensagem de erro será exibida:
Exception has occurred: ModuleNotFoundError
No module named 'numpy'
File "C:\estudos_python\estudos.py", line 2, in <module>
import numpy as np
Não se desespere. Basta abrir uma janela de prompt e disparar o comando abaixo: pip install numpy Aguarde alguns minutos para que o Pip baixe e instale a biblioteca. Em seguida tente executar o código acima novamente. Agora é só aproveitar tudo que a biblioteca NumPy tem a nos oferecer. |
jQuery ::: Dicas & Truques ::: Atributos ou Propriedades HTML |
Como remover uma classe (ou classes) de um elemento HTML usando a função removeClass() do jQueryQuantidade de visualizações: 1285 vezes |
Muitas vezes precisamos remover uma ou mais classes de um elemento HTML. Para isso nós podemos usar o método removeClass() da biblioteca jQuery. Veja como isso pode ser feito no trecho de código abaixo:
<script type="text/javascript">
<!--
function removerClass(){
// remove a classe "destaque" do parágrafo
// com o id "parag"
$('#parag').removeClass("destaque");
}
//-->
</script>
Se quisermos remover mais de uma classe ao mesmo tempo, basta separá-las por espaços no argumento para o método. O retorno deste método é um objeto jQuery que pode ser usado para fins de encadeamento de chamadas de métodos. |
Delphi ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como usar arrays (vetores e matrizes) em DelphiQuantidade de visualizações: 74600 vezes |
|
Em programação de computadores, um array, também conhecido como vector (para arrays uni-dimensionais) ou matriz (para arrays bi-dimensionais), é uma das mais simples estruturas de dados. Os arrays mantêm uma série de elementos de dados, geralmente do mesmo tamanho e tipo de dados. Elementos individuais são acessados por sua posição no array. A posição é dada por um índice, também chamado de subscrição. O índice geralmente utiliza uma seqüência de números inteiros, (ao contrário de um array associativo) mas o índex pode ter qualquer valor ordinal. Alguns arrays são multi-dimensionais, significando que eles são indexados por um número fixo de números inteiros, por exemplo, por um seqüência (ou sucessão) finita de quatro números inteiros. Geralmente, arrays uni- e bi-dimensionais são os mais comuns. Os arrays podem ser considerados como as estruturas de dado mais simples que é possível imaginar. Têm a vantagem de que os seus elementos são acessíveis de forma rápida, mas têm uma notável limitação: são de tamanho fixo, mas podem ser incrementados ou diminuídos com determinados algoritmos, geralmente envolvendo a cópia de elementos de um array para outro e reinicializando o original com a nova dimensão. Os vetores podem ser implementados desta forma. Em Delphi um array é declarado da seguinte forma: var valores: array[1..10] of Integer; Aqui nós temos um array chamado valores que contém 10 elementos do tipo Integer. Estes elementos podem ser acessados por índices que variarão de 1 a 10, ou seja, podemos acessar o 5º elemento da seguinte forma: procedure TForm1.Button1Click(Sender: TObject); var valores: array[1..10] of Integer; begin valores[5] := 20; end; Este tipo de array que ora criamos é chamado de array estático, em contraposição aos arrays dinâmicos, os quais podem ter seus tamanhos redimensionados durante a execução do programa. A forma mais prática de se trabalhar com arrays em Delphi é usando laços. Veja:
procedure TForm1.Button1Click(Sender: TObject);
var
valores: array[1..5] of Integer;
i, soma: Integer;
begin
// vamos preencher o array com os valores de 1 a 5
for i := 1 to 5 do
begin
valores[i] := i;
end;
// vamos percorrer o array novamente e obter a soma dos
// valores de seus elementos
soma := 0;
for i := 1 to 5 do
begin
soma := soma + valores[i];
end;
// vamos exibir o resultado
ShowMessage('A soma dos valores é: ' + IntToStr(soma));
end;
Aqui nós declaramos um array de 5 elementos do tipo Integer e inicializamos seus elementos com os valores de 1 a 5. Em seguida percorremos todo o array novamente para obter a soma dos valores dos elementos. É possível também declarar e já inicializar um array. Veja:
procedure TForm1.Button1Click(Sender: TObject);
const
valores: array[1..5] of Integer = (3, 2, 6, 12, 9);
var
i, soma: Integer;
begin
// vamos percorrer o array novamente e obter a soma dos
// valores de seus elementos
soma := 0;
for i := 1 to 5 do
begin
soma := soma + valores[i];
end;
// vamos exibir o resultado
ShowMessage('A soma dos valores é: ' + IntToStr(soma));
end;
Note que aqui eu declarei o array como uma constante. Isso aconteceu porque o Delphi não permite que inicializemos variáveis locais ([DCC Error] Unit1.pas(32): E2195 Cannot initialize local variables). Caso você realmente precise do array como variável e não constante, e deseje inicializá-lo juntamente com a declaração, mova-o para a seção interface do formulário ou classe. Para finalizar, veja que é possível criar arrays de todos os tipos em Delphi. Veja no trecho de código abaixo como usamos um array de Char para guardar uma palavra e exibí-la normal e depois invertida:
procedure TForm1.Button1Click(Sender: TObject);
const
letras: array[1..5] of Char = ('O', 's', 'm', 'a', 'r');
var
i: Integer;
resultado: String;
begin
resultado := '';
// vamos exibir a palavra na forma normal
for i := 1 to 5 do
resultado := resultado + letras[i];
// exibe o resultado
ShowMessage(resultado);
// vamos exibir a palavra invertida
resultado := '';
for i := 5 downto 1 do
resultado := resultado + letras[i];
// exibe o resultado
ShowMessage(resultado);
end;
Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
C# ::: Namespace System.Drawing ::: Graphics |
C# Windows Forms - Como passar um objeto da classe Graphics como argumento para um método e usá-lo para desenhar na superfície do formulárioQuantidade de visualizações: 6935 vezes |
Em algumas situações gostaríamos de escrever um método que recebe um objeto da classe Graphics como argumento e usar este objeto para alguma tarefa, por exemplo, desenhar na superfície do formulário. Nesta dica eu mostro como isso é possível. Comece escrevendo o seguinte método:
// um método que recebe um objeto da classe Graphics
private void desenhar(ref Graphics g){
// vamos desenhar uma linha horizontal de 300 pixels na
// cor preta e espessura de 1 pixel
g.DrawLine(new Pen(Color.Black, 1), new Point(20, 80),
new Point(320, 80));
// vamos liberar o objeto Graphics
g.Dispose();
}
Note que, na definição do parâmetro do método nós usamos a palavra-chave ref. Isso foi necessário porque queremos que o objeto Graphics seja passado por referência, uma vez que o estamos liberando dentro do corpo do método com uma chamada ao método Dispose(). Veja agora como obter o objeto Graphics relacionado ao formulário atual e passá-lo ao método desenhar():
private void button1_Click_1(object sender, EventArgs e){
// vamos obter o objeto Graphics relacionado ao formulário atual
Graphics graphics = this.CreateGraphics();
// vamos passar o objeto Graphics para o método desenhar
desenhar(ref graphics);
}
|
Você também poderá gostar das dicas e truques de programação abaixo |
|
Excel - Como converter graus em radianos no Excel usando a função RADIANOS() - Trigonometria no Excel JavaScript - JavaScript para iniciantes - Como obter o valor do maior número possível em JavaScript usando Number.MAX_VALUE VisuAlg - Exercícios Resolvidos de VisuAlg - Como calcular e exibir os 50 primeiros números primos em VisuAlg |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





