![]() |
|
|
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. |
||
C ::: Dicas & Truques ::: Strings e Caracteres |
Como criar sua própria função substring() para obter uma substring a partir de uma string em CQuantidade de visualizações: 17447 vezes |
Em algumas situações precisamos obter uma substring a partir de uma string. A linguagem C já fornece algumas funções que tornam isso possível. No entanto, nenhuma destas funções permite especificar o índice inicial da substring. Sendo assim, o trecho de código abaixo mostra como escrever uma função substring() que permite informar a string de origem, o índice inicial e a quantidade de caracteres que serão obtidos. O retorno da função será um ponteiro para a substring obtida:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char *substring(char *origem, int inicio, int quant){
char *res = origem;
int i = 0;
// posição inicial menor que 0 ou
// posição inicial muito exagerada?
if((inicio < 0) || (inicio > strlen(origem)))
inicio = 0;
// quantidade de caracteres muito exagerada?
if(quant > inicio + strlen(origem))
quant = strlen(origem) - inicio;
// obtem os caracteres desejados
for(i = 0; i <= quant - 1; i++){
res[i] = origem[inicio + i];
}
// marca o fim da string
res[i] = '\0';
return res;
}
int main(int argc, char *argv[])
{
char texto[] = "Gosto muito de C e C++";
// não podemos bagunçar a string original
char sub_temp[128];
strcpy(sub_temp, texto);
// 10 caracteres começando
// no índice 6
char *res = substring(sub_temp, 6, 10);
// exibe o resultado
puts(res);
// exibe a string original
puts(texto);
system("pause");
return 0;
}
Ao executar este código nós teremos o seguinte resultado: muito de C Gosto muito de C e C++ |
Ruby ::: Fundamentos da Linguagem ::: Métodos, Procedimentos e Funções |
Como criar métodos que aceitam um número variável de argumentos em RubyQuantidade de visualizações: 8314 vezes |
|
Como criar uma função que aceita um número variável de argumentos em Ruby É muito fácil criar métodos que aceitam um número variável de argumentos na linguagem Ruby. Tudo que temos que fazer é fornecer um parâmetro antecedido por um asterisco. Se mais parâmetros forem fornecidos, aquele que contém o asterisco deverá vir no final da lista. Veja um exemplo:
# Um método que aceita um número variável de
# argumentos
def somar(*args)
total = 0
args.each do | arg |
total = total + arg
end
return total
end
# Usa o método com 3 argumentos
puts(somar(3, 4, 2))
# Usa o método com 2 argumentos
puts(somar(10, 20))
# Usa o método com 1 argumento
puts(somar(5))
Ao executar este código Ruby nós teremos o seguinte resultado: 9 30 5 Neste exemplo eu dei o nome args para o parâmetro com asterisco, mas podemos usar qualquer nome. |
PHP ::: Dicas & Truques ::: Matemática e Estatística |
Como resolver uma equação do segundo grau em PHP - Como calcular Bhaskara em PHPQuantidade de visualizações: 1506 vezes |
|
Como resolver uma equação do 2º grau usando PHP Nesta dica mostrarei como encontrar as raízes de uma equação quadrática, ou seja, uma equação do 2º usando a linguagem PHP. 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 PHP 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 PHP. 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:
<?php
// para executar abra uma janela de comando
// cmd e dispare o comando abaixo:
// C:\xampp\php>php c:\estudos_php\estudos.php
// para ler a entrada do usuário
$entrada = fopen("php://stdin","r");
// vamos pedir para o usuário informar os valores dos coeficientes
echo "Valor do coeficiente a: ";
$a = trim(fgets($entrada));
echo "Valor do coeficiente b: ";
$b = trim(fgets($entrada));
echo "Valor do coeficiente c: ";
$c = trim(fgets($entrada));
// vamos calcular o discriminante
$discriminante = ($b * $b) - (4 * $a * $c);
// a equação possui duas soluções reais?
if($discriminante > 0){
$raiz1 = (-$b + sqrt($discriminante)) / (2 * $a);
$raiz2 = (-$b - sqrt($discriminante)) / (2 * $a);
echo "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);
echo "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 = sqrt(-$discriminante) / (2 * $a);
echo "Existem duas raízes complexas: x1 = " . $raiz1 .
" + " . $imaginaria . " e x2 = " . $raiz2 . " - " . $imaginaria;
}
?>
Ao executar este código PHP 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 |
Delphi ::: VCL - Visual Component Library ::: TEdit |
Como habilitar ou desabilitar um TEdit do Delphi usando a função EnableWindow() da API do WindowsQuantidade de visualizações: 12105 vezes |
|
Embora o Delphi já nos forneça as ferramentas necessárias para habilitar ou desabilitar um TEdit em tempo de execução, é importante saber como realizar esta tarefa usando a API do Windows. Para isso, podemos usar a função EnableWindow() com os valores true ou false. A função EnableWindow() possui a seguinte assinatura em C/C++: BOOL EnableWindow( HWND hWnd, BOOL bEnable ); No arquivo Windows.pas podemos encontrar o protótipo e corpo desta função convertidos para Object Pascal:
// Protótipo
{$EXTERNALSYM EnableWindow}
function EnableWindow(hWnd: HWND; bEnable: BOOL): BOOL; stdcall;
// Implementação
function EnableWindow; external user32 name 'EnableWindow';
Note que precisamos informar o HWND (parâmetro hWnd) para a caixa de texto e um valor BOOL. Se fornecermos false, a caixa de texto será desabilitada. Veja:
procedure TForm1.Button1Click(Sender: TObject);
begin
// vamos desabilitar o TEdit usando a função EnableWindow()
// com o valor false
if EnableWindow(Edit1.Handle, False) = True then
begin
ShowMessage('A caixa de texto foi desabilitada com sucesso.');
end;
end;
Para habilitar a caixa de texto novamente, só precisamos fornecer o valor true para o parâmetro bEnable:
procedure TForm1.Button1Click(Sender: TObject);
begin
// vamos habilitar o TEdit usando a função EnableWindow()
// com o valor true
if EnableWindow(Edit1.Handle, True) = True then
begin
ShowMessage('A caixa de texto foi habilitada com sucesso.');
end;
end;
É importante observar que o retorno da função EnableWindow será False se tentarmos habilitar uma caixa de texto que já está habilitada ou tentarmos desabilitar uma caixa de texto que já está desabilitada. |
Nossas 20 dicas & truques de programação mais populares |
Você também poderá gostar das dicas e truques de programação abaixo |
|
Android Java - Como detectar um clique em um botão do Android usando setOnClickListener() e exibir uma mensagem AlertDialog Ruby - Exercício Resolvido de Ruby - Como percorrer os elementos de um array em Ruby usando a função each C++ - Programação Orientada a Objetos em C++ - Como criar e usar métodos estáticos em suas classes C++ |
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 |



