![]() |
|
|
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 Hidrostática |
||
|
||
|
|
||
Delphi ::: Imagens, Gráficos e Cores ::: TBitmap (A classe TBitmap) |
Computação gráfica em Delphi - Como usar a classe TBitmap do DelphiQuantidade de visualizações: 17324 vezes |
|
A classe TBitmap encapsula um bitmap Windows (HBITMAP, um handle para um bitmap), incluindo sua paleta (HPALETTE, um handle para uma paleta de cores). Esta classe herda de TGraphic e é usada para criar, manipular (redimensionar, rolar, rotacionar, pintar, etc) e armazenar imagens na memória e como arquivos em disco. A classe TBitmap contém muitas propriedades e métodos úteis. Entre seus métodos podemos citar LoadFromFile(), usado para carregar uma imagem bitmap a partir do disco e guardá-la em memória como um objeto TBitmap. Veja o trecho de código abaixo:
procedure TForm2.Button1Click(Sender: TObject);
var
bmp: TBitmap;
begin
// vamos criar o bitmap
bmp := TBitmap.Create;
// vamos carregar a imagem e guardá-la no bitmap
bmp.LoadFromFile('foto.bmp');
// vamos desenhar o bitmap no formulário
// começando nas coordenadas x = 0; y = 0 a partir
// do canto superior esquerdo da área cliente do formulário
Form2.Canvas.Draw(0, 0, bmp);
// vamos liberar o bitmap
bmp.Free;
end;
Aqui nós carregamos o bitmap foto.bmp e o desenhamos na superfície do formulário usando o método Draw() do Canvas do formulário. É possível também redimensionar o bitmap ao desenhá-lo no formulário. Veja este novo trecho de código:
procedure TForm2.Button1Click(Sender: TObject);
var
bmp: TBitmap;
retang: TRect; // um objeto TRect
begin
// vamos criar o bitmap
bmp := TBitmap.Create;
// vamos carregar a imagem e guardá-la no bitmap
bmp.LoadFromFile('foto.bmp');
// vamos redimensionar o bitmap na memória de
// acordo com o retângulo abaixo
retang.Top := 0;
retang.Left := 0;
retang.Right := 200;
retang.Bottom := 150;
// vamos desenhar o bitmap usando o método
// StretchDraw da classe TCanvas
Form2.Canvas.StretchDraw(retang, bmp);
// vamos liberar o bitmap
bmp.Free;
end;
Aqui nós usamos um objeto do registro (record) TRect para criar um retângulo especificando o tamanho do bitmap e fornecemos tal retângulo, juntamente com o bitmap, para o método StretchDraw() da classe TCanvas. Este método redimensiona a imagem antes de desenhá-la na superfície do formulário. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como remover todos os espaços de uma string em C# usando o método Replace() da classe String - Apostila C# para iniciantesQuantidade de visualizações: 14729 vezes |
|
Nesta dica mostrarei como tirar proveito do método Replace() da classe String do C# para remover todos os espaços de uma frase ou texto. Note que, usando esta técnica, todos os espaços serão removidos, tanto no início, quanto no meio ou fim da string. Veja o código completo para o exemplo:
using System;
namespace Estudos{
class Program{
static void Main(string[] args) {
string frase = "Gosto muito de C#";
Console.WriteLine("Com espaços: " + frase);
// remove todos os espaços
frase = frase.Replace(" ", "");
Console.WriteLine("Sem espaços: " + frase);
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código nós teremos o seguinte resultado: Com espaços: Gosto muito de C# Sem espaços: GostomuitodeC# |
JavaScript ::: Dicas & Truques ::: Algorítmos Úteis |
Como testar se uma palavra (ou frase) é palíndroma em JavaScriptQuantidade de visualizações: 12507 vezes |
|
Palíndromo é uma palavra, frase ou número que permanece igual quando lida de trás para diante. Por extensão, palíndromo é qualquer série de elementos com simetria linear, ou seja, que apresenta a mesma sequência de unidades nos dois sentidos. Uma palavra palíndroma é aquela cuja sequência de letras é simétrica, permitindo uma leitura idêntica da esquerda para a direita ou da direita para a esquerda: ovo, osso, reler, anilina. Veja um código JavaScript que pede para o usuário informar um palavra e, em seguida, informa se a palavra é palíndroma ou não:
<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html;
charset=iso-8859-1" />
<title>Estudos JavaScript</title>
</head>
<body>
<script type="text/javascript">
function palin(pal){
var palindroma = true;
pal = pal.toUpperCase();
for(var i = 0; i < (pal.length / 2); i++){
if(pal.charAt(i) != pal.charAt(pal.length - i - 1)){
palindroma = false;
}
}
return palindroma;
}
// testa se uma palavra é palindroma
var palavra = window.prompt("Informe a palavra",
"palavra");
if(palin(palavra)){
alert("Esta palavra é palindroma");
}
else{
alert("Esta palavra NÃO é palindroma");
}
</script>
</body>
</html>
|
C# ::: Dicas & Truques ::: Matemática e Estatística |
Como resolver uma equação do segundo grau em C# - Como calcular Bhaskara em C#Quantidade de visualizações: 2054 vezes |
|
Como resolver uma equação do 2º grau usando C# Nesta dica mostrarei como encontrar as raízes de uma equação quadrática, ou seja, uma equação do 2º usando a linguagem C#. 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 C# 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 C#. 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:
using System;
namespace Estudos {
class Principal {
static void Main(string[] args) {
// os coeficientes
double a, b, c;
// as duas raizes, a imaginaria e o discriminante
double raiz1, raiz2, imaginaria, discriminante;
// vamos pedir para o usuário informar os valores dos coeficientes
Console.Write("Valor do coeficiente a: ");
a = Double.Parse(Console.ReadLine());
Console.Write("Valor do coeficiente b: ");
b = Double.Parse(Console.ReadLine());
Console.Write("Valor do coeficiente c: ");
c = Double.Parse(Console.ReadLine());
// 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);
Console.Write("Existem duas raizes: x1 = " + raiz1
+ " e x2 = " + raiz2);
}
// a equação possui uma única solução real?
else if (discriminante == 0) {
raiz1 = raiz2 = -b / (2 * a);
Console.Write("Existem duas raizes iguais: x1 = "
+ raiz1 + " e x2 = " + raiz2);
}
// a equação não possui solução real?
else if (discriminante < 0) {
raiz1 = raiz2 = -b / (2 * a);
imaginaria = Math.Sqrt(-discriminante) / (2 * a);
Console.Write("Existem duas raízes complexas: x1 = " +
raiz1 + " + " + imaginaria + " e x2 = " + raiz2
+ " - " + imaginaria);
}
Console.WriteLine("\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# 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 e x2 = -3 |
C# ::: Dicas & Truques ::: Arquivos e Diretórios |
Como adicionar conteúdo ao final de um arquivo em C# usando as classes FileStream e StreamWriterQuantidade de visualizações: 10780 vezes |
|
Nesta dica mostro como usar as classes FileStream e StreamWriter para adicionar conteúdo a um arquivo já existente. Note que usamos o construtor de FileStream que aceita o caminho e nome do arquivo e o modo que ele será aberto. Ao fornecer o valor FileMode.Append nós estamos informando que, se o arquivo existir, mais conteúdo será adicionando ao seu final. Do contrário o arquivo é criado. Já no construtor de StreamWriter nós estamos fornecendo a codificação dos caracteres, neste caso, UTF-8. Para finalizar, escrevemos no arquivo usando os métodos Write() e WriteLine() da classe StreamWriter. Veja o código:
static void Main(string[] args){
// vamos criar uma instância de FileStream. Note que neste
// construtor nós estamos informando o caminho e nome do
// arquivo e o modo de abertura do arquivo. Se o arquivo já existir
// o novo conteúdo é adicionado. Se não existir, o arquivo é criado
FileStream fs = new FileStream("dados.txt", FileMode.Append);
// já temos o FileStream? vamos fornecê-lo a um StreamWriter
StreamWriter sw = new StreamWriter(fs, Encoding.UTF8);
// vamos escrever ou adicioar conteúdo no arquivo
sw.WriteLine("Esta é mais uma linha");
sw.Write("Hoje é: ");
sw.WriteLine(DateTime.Now);
sw.WriteLine("Esta é a última linha");
sw.Flush();
sw.Close();
fs.Close();
Console.WriteLine("Acabei de escrever no arquivo");
Console.WriteLine("Pressione qualquer tecla para sair...");
// pausa o programa
Console.ReadKey();
}
Ao executar este código C# nós teremos o seguinte resultado: Acabei de escrever no arquivo Pressione qualquer tecla para sair... |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |



