![]() |
|
|
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 |
||
|
||
|
|
||
Java ::: Dicas & Truques ::: Imagens e Processamento de Imagens |
Manipulação de imagens em Java - Como carregar imagens JPG (JPEG), GIF ou PNG usando o método getImage() da classe ToolkitQuantidade de visualizações: 24528 vezes |
|
O método getImage() da classe Toolkit retorna um objeto da classe Image que obtém informações de imagem (pixels) a partir do caminho informado. Veja que este método não verifica se a imagem informada para o método existe ou se foi carregada com sucesso. Veja mais dicas nesta seção para aprender a realizar tais tarefas. O código abaixo mostra como chamar o método getImage() para carregar uma imagem ao clicar em um botão:
package arquivodecodigos;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Estudos extends JFrame{
private Image imagem = null;
public Estudos() {
super("Estudos Java");
Container c = getContentPane();
c.setLayout(new FlowLayout());
JButton btn = new JButton("Carregar Imagem");
btn.addActionListener(
new ActionListener(){
@Override
public void actionPerformed(ActionEvent e){
// imagem a ser carregada
String minhaImagem = "C:\\estudos_java\\lago.jpg";
// Obtém o Toolkit padrão
Toolkit toolkit =
Toolkit.getDefaultToolkit();
imagem = toolkit.getImage(minhaImagem);
JOptionPane.showMessageDialog(null,
"A imagem foi carregada. Agora é só manipulá-la.");
}
}
);
c.add(btn);
setSize(400, 300);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Ao executar este código nós teremos o seguinte resultado: A imagem foi carregada. Agora é só manipulá-la. |
C ::: Dicas & Truques ::: Data e Hora |
Como formatar datas e horas em C usando a função strftime() da linguagem CQuantidade de visualizações: 9464 vezes |
A função strftime() pode ser usada quando queremos formatar valores de datas e horas em C. Esta função, presente no header <time.h>, possui a seguinte assinatura:size_t strftime(char *strDest, size_t maxsize, const char *format, const struct tm *timeptr); O parâmetro strDest é um ponteiro para uma matriz de caracteres que receberá uma string contendo a data e/ou hora formatada. O parâmetro maxsize é a quantidade de caracteres que serão copiados para a matriz de caracteres alvo da operação. O parâmetro format contém os especificadores que serão substituídos durante a formatação. Finalmente, timeptr é um ponteiro para uma estrutura tm contendo as informações de data e hora. O retorno da função é a quantidade de caracteres copiados para a matriz strDest. Veja um trecho de código no qual formatamos e exibimos a data atual no formato longo e de acordo com as configurações regionais para o Português Brasileiro:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <locale.h>
int main(int argc, char *argv[]){
// vamos definir a localização para o Português do Brasil
setlocale(LC_ALL, "Portuguese_Brazil");
time_t data_hora_segundos; // guarda os segundos deste 01/01/1970
struct tm *timeinfo; // declara uma estrutura tm
time(&data_hora_segundos); // preenche a variável data_hora_segundos
// preenche a estrutura timeinfo
timeinfo = localtime(&data_hora_segundos);
// um buffer para receber a data formatada
char data_formatada[80];
// vamos formatar
strftime(data_formatada, 80, "%A, %d de %B de %Y", timeinfo);
// vamos exibir o resultado
printf("Resultado da formatação: %s\n\n", data_formatada);
system("PAUSE");
return 0;
}
O resultado da execução deste código será algo como: Resultado da formatação: segunda-feira, 23 de abril de 2011 Veja abaixo os especificadores de formatação usadas pela função strftime(): %a - Nome do dia da semana na forma abreviada. Ex: seg. %A - Nome completo do dia da semana. Ex: terça-feira. %b - Nome do mês abreviado. Ex: abr. %B - Nome completo do dia do mês. Ex: abril %c - Representação de data e hora. Ex: 23/4/2011 23:00:37. %d - Dia do mês (01-31). %H - Hora no formato 24 horas (00-23). %I - Hora no formato 12 horas (01-12). %j - Dia do ano (001-366). %m - Mês como um número decimal (01-12). %M - Minutos (00-59). %p - AM ou PM. %S - Segundos (00-61). %U - Número da semana tendo o primeiro domingo como o primeiro dia da primeira semana do ano (00-53). %w - Dia da semana como um número decimal tendo o domingo como 0 (0-6). %W - Número da semana tendo a primeira segunda-feira como o primeiro dia da primeira semana do ano (00-53). %x - Representação de data. Ex: 23/4/2011. %X - Representação de horas. Ex: 23:00:37. %y - Ano de dois dígitos (00-99). %Y - Ano com quatro dígitos. %Z - Nome ou abreviação do fuso horário. %% - Um sinal de porcentagem. |
Java ::: Dicas & Truques ::: Data e Hora |
Como retornar a diferença de meses entre duas datas em Java - Datas e horas em JavaQuantidade de visualizações: 10041 vezes |
O trecho de código abaixo mostra como obter a diferença de meses entre dois objetos Date. Estude-o atentamente. Esta é uma técnica muito útil para programadores que lidam com cálculos de datas em suas aplicações:
package arquivodecodigos;
import java.util.*;
import java.text.*;
public class Estudos{
public static void main(String args[]){
try{
// constrói a primeira data
DateFormat fm = new SimpleDateFormat(
"dd/MM/yyyy");
Date data1 = (Date)fm.parse("20/10/2008");
// constrói a segunda data
fm = new SimpleDateFormat("dd/MM/yyyy");
Date data2 = (Date)fm.parse("30/12/2008");
// vamos obter a diferença de meses
long segundos = (data2.getTime() -
data1.getTime()) / 1000;
int meses = (int)Math.floor(segundos / 2592000);
segundos -= meses * 2592000;
int dias = (int)Math.floor(segundos / 86400);
// exibe o resultado
System.out.println("As duas datas tem " +
meses + " meses e " + dias +
" dias de diferença");
}
catch(ParseException e){
e.printStackTrace();
}
}
}
Ao executar este código Java nós teremos o seguinte resultado: As duas datas tem 2 meses e 11 dias de diferença |
PHP ::: Dicas & Truques ::: Gráficos e Cores |
Computação gráfica em PHP - Como obter informações sobre a biblioteca GD instaladaQuantidade de visualizações: 8688 vezes |
|
Nesta dica vou mostrar como é possível efetuar uma chamada ao método gd_info() da linguagem PHP para verificar quais recursos da biblioteca GD estão habilitados em nossa instalação do PHP. Veja o código abaixo:
<?php
// vamos efetuar uma chamada à função gd_info()
$info = gd_info();
// agora percorremos as entradas
foreach($info as $chave => $valor){
if($chave != "GD Version"){
if($valor == true || $valor == false){
if($valor == true){
$valor = "Habilitado";
}
elseif($valor == false){
$valor = "Desabilitado";
}
}
}
echo "$chave: $valor<br>";
}
?>
Ao executarmos este código nós teremos um resultado parecido com: GD Version: bundled (2.1.0 compatible) FreeType Support: Habilitado FreeType Linkage: Habilitado GIF Read Support: Habilitado GIF Create Support: Habilitado JPEG Support: Habilitado PNG Support: Habilitado WBMP Support: Habilitado XPM Support: Habilitado XBM Support: Habilitado WebP Support: Habilitado BMP Support: Habilitado TGA Read Support: Habilitado JIS-mapped Japanese Font Support: Desabilitado É sempre bom fazer este teste antes de usar as funções gráficas da GD no PHP. |
Ruby ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercícios Resolvidos de Ruby - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equiláteroQuantidade de visualizações: 1280 vezes |
|
Pergunta/Tarefa: Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra: A < (B + C), B < (A + C) e C < (A + B). Escreva um programa Ruby que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais). Sua saída deverá ser parecida com: Informe o primeiro lado do triângulo: 30 Informe o segundo lado do triângulo: 40 Informe o terceiro lado do triângulo: 60 O triângulo é escaleno Veja a resolução comentada deste exercício usando Ruby:
# vamos ler o primeiro lado do triângulo
print "Informe o primeiro lado do triângulo: "
lado_a = Integer(gets)
# vamos ler o segundo lado do triângulo
print "Informe o segundo lado do triângulo: "
lado_b = Integer(gets)
# vamos ler o terceiro lado do triângulo
print "Informe o terceiro lado do triângulo: "
lado_c = Integer(gets)
# os lados informados formam um triângulo?
if((lado_a < (lado_b + lado_c)) && (lado_b < (lado_a + lado_c)) \
&& (lado_c < (lado_a + lado_b)))
# é um triângulo equilátero (todos os lados iguais)?
if((lado_a == lado_b) && (lado_b == lado_c))
print "O triângulo é equilátero"
else
# é isósceles (dois lados iguais e um diferente)?
if((lado_a == lado_b) || (lado_a == lado_c) || \
(lado_c == lado_b))
print "O triângulo é isósceles"
else
# é escaleno
print "O triângulo é escaleno"
end
end
else
print "Os lados informados não formam um triângulo."
end
|
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Ruby |
Veja mais Dicas e truques de Ruby |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




