![]() |
|
|
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 |
||
|
||
|
|
||
C# ::: Dicas & Truques ::: Tipos de Dados |
Curso de C# - Como usar os tipos de dados short e ushort da linguagem C#Quantidade de visualizações: 9921 vezes |
|
O tipo de dados short é um tipo primitivo integral com sinal (signed) que pode armazenar valores inteiros na faixa de -32.768 até 32.767. Este tipo ocupa 16 bits (2 bytes) de memória e é um apelido para o tipo System.Int16 da plataforma .NET. Podemos obter os valores mínimo e máximo que podem ser armazenados em um short por meio de suas propriedades MinValue e MaxValue. Veja:
static void Main(string[] args){
// vamos obter o valor mínimo de um short
short minimo = short.MinValue;
// vamos obter o valor máximo de um short
short maximo = short.MaxValue;
// vamos mostrar o resultado
Console.WriteLine("A faixa de valores de um short é: " + minimo +
" até " + maximo);
// vamos pausar a execução
Console.ReadKey();
}
Ao executarmos este código teremos o seguinte resultado: A faixa de valores de um short é: -32768 até 32767. Ao atribuir valores para um short em tempo de design, ou seja, como um literal, devemos ter o cuidado de não atribuir valores que estejam fora da faixa permitida. Veja:
static void Main(string[] args){
// a linha abaixo não vai compilar
short valor = 35767;
// vamos pausar a execução
Console.ReadKey();
}
Este código não compila. A mensagem de erro: Constant value '35767' cannot be converted to a 'short' nos informa que o valor 35767 (que está acima da faixa permitida) não pode ser convertido para um short. Assim, se você desejar mesmo efetuar tal procedimento, uma conversão forçada (cast) deve ser feita:
static void Main(string[] args){
int valor = 35767;
// vamos forçar a conversão para short
short valor2 = (short)valor;
// vamos mostrar o resultado
Console.WriteLine("Valor após o cast: " + valor2);
// vamos pausar a execução
Console.ReadKey();
}
Aqui nós "esprememos" o valor 35767 para um short e o resultado, -29769, definitivamente não é o que estávamos esperando. O tipo ushort é um tipo primitivo integral sem sinal (unsigned) que pode armazenar valores inteiros na faixa de 0 até 65.535. Este tipo ocupa 16 bits (2 bytes) de memória e é um apelido para o tipo System.UInt16 da plataforma .NET. Podemos obter os valores mínimo e máximo que podem ser armazenados em um ushort por meio de suas propriedades MinValue e MaxValue. Veja:
static void Main(string[] args){
// vamos obter o valor mínimo de um ushort
ushort minimo = ushort.MinValue;
// vamos obter o valor máximo de um ushort
ushort maximo = ushort.MaxValue;
// vamos mostrar o resultado
Console.WriteLine("A faixa de valores de um ushort é: " + minimo +
" até " + maximo);
// vamos pausar a execução
Console.ReadKey();
}
Ao executarmos este código teremos o seguinte resultado: A faixa de valores de um ushort é: 0 até 65535. |
Dart ::: Dicas & Truques ::: Aplicativos e Outros |
Como calcular a distância entre dois pontos na terra em DartQuantidade de visualizações: 2125 vezes |
|
Nesta dica mostrarei como calcular a distância em quilômetros entre dois pontos na terra dadas suas latitudes e longitudes. Neste exemplo eu coloquei o valor de 6378.137 para o raio da terra, mas você pode definir para o valor que achar mais adequado. O cálculo usado neste código se baseia na Fórmula de Haversine, que determina a distância do grande círculo entre dois pontos em uma esfera, dadas suas longitudes e latitudes. Veja o código Dart completo:
// Vamos importar a biblioteca dart:io
import "dart:io";
// vamos importar a biblioteca dart:math
import "dart:math";
void main(){
// vamos ler as latitudes e longitudes das duas
// localizações
stdout.write("Informe a primeira latitude: ");
double lat1 = double.parse(stdin.readLineSync());
stdout.write("Informe a primeira longitude: ");
double lon1 = double.parse(stdin.readLineSync());
stdout.write("Informe a segunda latitude: ");
double lat2 = double.parse(stdin.readLineSync());
stdout.write("Informe a segunda longitude: ");
double lon2 = double.parse(stdin.readLineSync());
// vamos calcular a distância entre os dois pontos em Kms
double distancia = calcularDistancia(lat1, lat2, lon1, lon2);
// mostramos o resultado
print("Distância entre os dois pontos: ${distancia} kms");
}
// função que recebe dois pontos na terra e retorna a distância
// entre eles em quilômetros
double calcularDistancia(double lat1,
double lat2, double lon1, double lon2){
double raio_terra = 6378.137; // raio da terra em quilômetros
// o primeiro passo é converter as latitudes e longitudes
// para radianos
lon1 = grausParaRadianos(lon1);
lon2 = grausParaRadianos(lon2);
lat1 = grausParaRadianos(lat1);
lat2 = grausParaRadianos(lat2);
// agora aplicamos a Fórmula de Haversine
double dlon = lon2 - lon1;
double dlat = lat2 - lat1;
double a = pow(sin(dlat / 2), 2) + cos(lat1) * cos(lat2)
* pow(sin(dlon / 2),2);
double c = 2 * asin(sqrt(a));
// e retornamos a distância
return(c * raio_terra);
}
// função que permite converter graus em radianos
double grausParaRadianos(double graus){
return graus * (pi / 180);
}
Ao executar este código Dart nós teremos o seguinte resultado: Informe a primeira latitude: -16.674551 Informe a primeira longitude: -49.303598 Informe a segunda latitude: -15.579321 Informe a segunda longitude: -56.10009 A distância entre os dois pontos é: 736.9183827638687kms Neste exemplo eu calculei a distância entre as cidades de Goiânia-GO e Cuibá-MT. A latitude é a distância ao Equador medida ao longo do meridiano de Greenwich. Esta distância mede-se em graus, podendo variar entre 0o e 90o para Norte(N) ou para Sul(S). A longitude é a distância ao meridiano de Greenwich medida ao longo do Equador. |
Python ::: Dicas & Truques ::: Matemática e Estatística |
Como resolver uma equação do segundo grau em Python - Como calcular Bhaskara em PythonQuantidade de visualizações: 3150 vezes |
|
Como resolver uma equação do 2º grau usando Python Nesta dica mostrarei como encontrar as raízes de uma equação quadrática, ou seja, uma equação do 2º usando a linguagem Python. Definimos como equação do 2º grau ou equações quadráticas qualquer equação do tipo ax² + bx + c = 0 em que a, b e c são números reais e a ≠ 0. Ela recebe esse nome porque, no primeiro membro da igualdade, há um polinômio de grau dois com uma única incógnita. Note que, dos coeficientes a, b e c, somente o a é diferente de zero, pois, caso ele fosse igual a zero, o termo ax² seria igual a zero, logo a equação se tornaria uma equação do primeiro grau: bx + c = 0. Independentemente da ordem da equação, o coeficiente a sempre acompanha o termo x², o coeficiente b sempre acompanha o termo x, e o coeficiente c é sempre o termo independente. Como resolver uma equação do 2º grau Conhecemos como soluções ou raízes da equação ax² + bx + c = 0 os valores de x que fazem com que essa equação seja verdadeira. Uma equação do 2º grau pode ter no máximo dois números reais que sejam raízes dela. Para resolver equações do 2º grau completas, existem dois métodos mais comuns: a) Fórmula de Bhaskara; b) Soma e produto. O primeiro método é bastante mecânico, o que faz com que muitos o prefiram. Já para utilizar o segundo, é necessário o conhecimento de múltiplos e divisores. Além disso, quando as soluções da equação são números quebrados, soma e produto não é uma alternativa boa. Como resolver uma equação do 2º grau usando Bhaskara Como nosso código Python vai resolver a equação quadrática usando a Fórmula de Bhaskara, o primeiro passo é encontrar o determinante. Veja: \[\Delta =b^2-4ac\] Nem sempre a equação possui solução real. O valor do determinante é que nos indica isso, existindo três possibilidades: a) Se determinante > 0, então a equação possui duas soluções reais. b) Se determinante = 0, então a equação possui uma única solução real. c) Se determinante < 0, então a equação não possui solução real. Encontrado o determinante, só precisamos substituir os valores, incluindo o determinante, na Fórmula de Bhaskara: \[x = \dfrac{- b\pm\sqrt{b^2- 4ac}}{2a}\] Vamos agora ao código Python. Nossa aplicação vai pedir para o usuário informar os valores dos três coeficientes a, b e c e, em seguida, vai apresentar as raizes da equação:
# importamos a bibliteca Math
import math
def main():
# vamos pedir para o usuário informar os valores dos coeficientes
a = float(input("Valor do coeficiente a: "))
b = float(input("Valor do coeficiente b: "))
c = float(input("Valor do coeficiente c: "))
# vamos calcular o discriminante
discriminante = (b * b) - (4 * a * c)
# a equação possui duas soluções reais?
if(discriminante > 0):
raiz1 = (-b + math.sqrt(discriminante)) / (2 * a)
raiz2 = (-b - math.sqrt(discriminante)) / (2 * a)
print("Existem duas raizes: x1 = {0} e x2 = {1}".format(raiz1, raiz2))
# a equação possui uma única solução real?
elif(discriminante == 0):
raiz1 = raiz2 = -b / (2 * a)
print("Existem duas raizes iguais: x1 = {0} e x2 = {1}".format(raiz1, raiz2))
# a equação não possui solução real?
elif(discriminante < 0):
raiz1 = raiz2 = -b / (2 * a)
imaginaria = math.sqrt(-discriminante) / (2 * a)
print("Existem duas raízes complexas: x1 = {0} + {1} e x2 = {2} - {3}".format(
raiz1, imaginaria, raiz2, imaginaria))
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: Valor do coeficiente a: 1 Valor do coeficiente b: 2 Valor do coeficiente c: -3 Existem duas raizes: x1 = 1.0 e x2 = -3.0 |
Portugol ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular o coeficiente angular de uma reta em Portugol dados dois pontos no plano cartesianoQuantidade de visualizações: 934 vezes |
|
O Coeficiente Angular de uma reta é a variação, na vertical, ou seja, no eixo y, pela variação horizontal, no eixo x. Sim, isso mesmo. O coeficiente angular de uma reta tem tudo a ver com a derivada, que nada mais é que a taxa de variação de y em relação a x. Vamos começar analisando o seguinte gráfico, no qual temos dois pontos distintos no plano cartesiano: ![]() Veja que o segmento de reta AB passa pelos pontos A (x=3, y=6) e B (x=9, y=10). Dessa forma, a fórmula para obtenção do coeficiente angular m dessa reta é: \[\ \text{m} = \frac{y_2 - y_1}{x_2 - x_1} = \frac{\Delta y}{\Delta x} = tg \theta \] Note que __$\Delta y__$ e __$\Delta x__$ são as variações dos valores no eixo das abscissas e no eixo das ordenadas. No triângulo retângulo que desenhei acima, a variação __$\Delta y__$ se refere ao comprimento do cateto oposto e a variação __$\Delta y__$ se refere ao comprimento do cateto adjascente. Veja agora o trecho de código na linguagem Portugol que solicita as coordenadas x e y dos dois pontos, efetua o cálculo e mostra o coeficiente angular m da reta que passa pelos dois pontos:
// Calcular o coeficiente angular de uma reta em Portugol
programa {
// vamos incluir a biblioteca Matematica
inclua biblioteca Matematica --> mat
funcao inicio() {
// coordenadas dos dois pontos
real x1, y1, x2, y2
// guarda o coeficiente angular
real m
// x e y do primeiro ponto
escreva("Coordenada x do primeiro ponto: ")
leia(x1)
escreva("Coordenada y do primeiro ponto: ")
leia(y1)
// x e y do segundo ponto
escreva("Coordenada x do segundo ponto: ")
leia(x2)
escreva("Coordenada y do segundo ponto: ")
leia(y2)
// vamos calcular o coeficiente angular
m = (y2 - y1) / (x2 - x1)
// mostramos o resultado
escreva("O coeficiente angular é: ", m)
}
}
Ao executar este código Portugol Webstudio nós teremos o seguinte resultado: Coordenada x do primeiro ponto: 3 Coordenada y do primeiro ponto: 6 Coordenada x do segundo ponto: 9 Coordenada y do segundo ponto: 10 O coeficiente angular é: 0.6666666666666666 No entanto, fique atento às propriedades do coeficiente angular da reta: 1) O coeficiente angular é positivo quando a reta for crescente, ou seja, m > 0; 2) O coeficiente angular é negativo quando a reta for decrescente, ou seja, m < 0; 3) Se a reta estiver na horizontal, ou seja, paralela ao eixo x, seu coeficiente angular é zero (0). 4) Se a reta estiver na vertical, ou seja, paralela ao eixo y, o coeficiente angular não existe. |
PHP ::: Dicas & Truques ::: Arquivos e Diretórios |
Como renomear um diretório em PHP usando a função rename()Quantidade de visualizações: 12406 vezes |
|
Diretórios podem ser renomeados usando a função rename() da linguagem PHP. Esta função recebe o nome atual do diretório e o novo nome e retorna um valor boolean (true ou false) informando o sucesso ou não da operação. Antes de usar esta função verifique se você possui as permissões adequadas para renomear o diretório. Veja um trecho de código no qual renomeamos um diretório no diretório public_html:
<?php
// renomeia o diretório "recentes" para "atuais"
$diretorio_antigo = "/site/public_html/recentes";
$diretorio_novo = "/site/public_html/atuais";
if(rename($diretorio_antigo, $diretorio_novo)){
echo "Diretório renomeado com sucesso.";
}
else{
echo "Não foi possível renomear o diretório.";
}
?>
Ao executar este código nós teremos o seguinte resultado: Diretório renomeado com sucesso. Seja cuidadoso. Se você não tiver as permissões adequadas para renomear um diretório, a seguinte mensagem de erro será exibida: Warning: rename(imagens,imagens_novas) [function.rename]: Permission denied in /site/public_html/testes.php on line 9 Não foi possível renomear o diretório. |
Desafios, Exercícios e Algoritmos Resolvidos de PHP |
Veja mais Dicas e truques de PHP |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





