![]() |
|
|
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. |
||
MySQL ::: Dicas & Truques ::: Joins (Junções) |
Como agrupar dados de duas ou mais tabelas no MySQL usando LEFT JOIN (ou LEFT OUTER JOIN)Quantidade de visualizações: 15138 vezes |
|
A junção LEFT JOIN (ou LEFT OUTER JOIN) do MySQL é usada quando queremos agrupar dados de duas ou mais tabelas e exibir todos os registros da tabela à esquerda, mesmo que não haja correspondências (match) de registros na tabela à direita. Vamos ver um exemplo? Considere duas tabelas: jogadores e times. Um jogador pode jogar em nenhum (zero) ou um time e um time pode conter zero ou mais jogadores. Aqui a cardinalidade é de 1 x N. Comece criando a tabela de times: Comando DDL CREATE TABLE para a tabela times: CREATE TABLE times( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, nome VARCHAR(45) NOT NULL, PRIMARY KEY(id) ) ENGINE = InnoDB; Vá em frente e insira alguns times nesta tabela. Vamos agora criar a tabela de jogadores: Comando DDL CREATE TABLE para a tabela jogadores:
CREATE TABLE jogadores(
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
nome VARCHAR(45) NOT NULL,
id_time INTEGER UNSIGNED,
PRIMARY KEY(id),
CONSTRAINT fk_jogadores_times FOREIGN KEY fk_jogadores_times(id_time)
REFERENCES times(id) ON DELETE RESTRICT ON UPDATE RESTRICT
)
ENGINE = InnoDB;
Note que o campo id_time da tabela jogador aceita NULL, ou seja, como é possível haver jogadores sem times, devemos ser capazes de cadastrar os jogadores e só mais adiante definir o time a qual ele pertencerá. Veja: INSERT INTO jogadores VALUES(NULL, 'JORGINHO', NULL); Vá em frente e cadastre alguns jogadores (sem relacioná-los com algum time). Finalizado alguns cadastros de jogadores e times, use a instrução UPDATE para relacionar alguns jogadores com seus respectivos times (deixe alguns jogadores sem time). Veja um exemplo: UPDATE jogadores SET id_time = 3 WHERE id = 2; E aqui já podemos ver um exemplo da junção LEFT JOIN. Nossa tarefa é listar o id, nome do jogador e nome do time a qual ele pertence. Mas, queremos também incluir na listagem os jogadores que ainda não possuem times (o valor do campo id_time ainda é NULL). Veja: SELECT j.id, j.nome, t.nome FROM jogadores j LEFT JOIN times t ON j.id_time = t.id; id jogador time 1 ROBERTO CARLOS ? 2 JORGINHO CRUZEIRO 3 GUSTAVO BORGES ? 4 MARCOS ? Note que o conjunto de dados retornados inclui todos os jogadores, incluindo aqueles para os quais nenhum time foi definido ainda. |
LISP ::: Fundamentos da Linguagem ::: Variáveis e Constantes |
Como declarar variáveis locais em Lisp usando o comando letQuantidade de visualizações: 1279 vezes |
|
Em várias situações nós gostaríamos de declarar variáveis que serão usadas em um espaço limitado, ou seja, dentro de uma função Common Lisp ou até mesmo em um bloco de código. Entram em cena as variáveis locais. Variáveis locais, como o próprio nome indica, são visíveis apenas dentro do corpo de uma função ou dentro do bloco no qual elas são declaradas. Em Common Lisp as variáveis locais são declaradas usando-se o comando let. Veja um exemplo no qual nós declaramos três variáveis locais e que serão usadas no corpo de uma função Multiplicar():
; vamos definir a função Multiplicar()
(defun Multiplicar()
; vamos usar o comando let para declarar
; três variáveis locais
(let ((a 3)(b 9)(produto))
; agora vamos obter o produto das variáveis
; a e b
(setq produto (* a b))
; e mostramos o resultado
(format t "O produto dos dois valores é ~D" produto)
)
)
; chamamos a função Multiplicar()
(Multiplicar)
Ao executar este código nós teremos o seguinte resultado: O produto dos dois valores é 27 Agora veja como podemos declarar variáveis locais dentro de um bloco de código em Common Lisp: ; vamos usar o comando let para declarar ; três variáveis locais (dentro de um bloco ; de código) (let ((a 7)(b 5)(produto)) ; agora vamos obter o produto das variáveis ; a e b (setq produto (* a b)) ; e mostramos o resultado (format t "O produto dos dois valores é ~D" produto) ) Execute este código e você terá o seguinte resultado: O produto dos dois valores é 35 Nos dois trechos de código, se tentarmos acessar as variáveis locais fora de seus escopos, nós teremos o seguinte erro: The variable PRODUTO is unbound. |
C# ::: Windows Forms ::: DataGridView |
Como ocultar ou exibir uma determinada linha do DataGridView do C# Windows FormsQuantidade de visualizações: 13656 vezes |
Em algumas situações precisamos ocultar ou exibir determinadas linhas do DataGridView. Isso pode ser feito definindo-se os valores true ou false para a propriedade Visible da classe DataGridViewRow. Veja um trecho de código no qual ocultamos a primeira linha do DataGridView:
private void button3_Click(object sender, EventArgs e){
// vamos ocultar a primeira linha
dataGridView1.Rows[0].Visible = false;
}
Veja que aqui nós acessamos a coleção DataGridViewRowCollection e usamos um índice para retornar o DataGridViewRow desejado. Em seguida definimos o valor false para sua propriedade Visible. |
Java ::: Dicas & Truques ::: Aplicativos e Outros |
Como calcular a distância entre dois pontos na terra em JavaQuantidade de visualizações: 1722 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 Java completo:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// vamos usar a classe Scanner para ler os
// valores de latitudes e longitudes
Scanner entrada = new Scanner(System.in);
System.out.print("Informe a primeira latitude: ");
double lat1 = Double.parseDouble(entrada.nextLine());
System.out.print("Informe a primeira longitude: ");
double lon1 = Double.parseDouble(entrada.nextLine());
System.out.print("Informe a segunda latitude: ");
double lat2 = Double.parseDouble(entrada.nextLine());
System.out.print("Informe a segunda longitude: ");
double lon2 = Double.parseDouble(entrada.nextLine());
// vamos calcular a distância entre os dois pontos em Kms
double distancia = calcularDistancia(lat1, lat2, lon1, lon2);
// mostramos o resultado
System.out.println("A distância entre os dois pontos é: " +
distancia + "kms");
System.out.println("\n");
}
// função que recebe dois pontos na terra e retorna a distância
// entre eles em quilômetros
public static 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 = Math.toRadians(lon1);
lon2 = Math.toRadians(lon2);
lat1 = Math.toRadians(lat1);
lat2 = Math.toRadians(lat2);
// agora aplicamos a Fórmula de Haversine
double dlon = lon2 - lon1;
double dlat = lat2 - lat1;
double a = Math.pow(Math.sin(dlat / 2), 2) + Math.cos(lat1) * Math.cos(lat2)
* Math.pow(Math.sin(dlon / 2),2);
double c = 2 * Math.asin(Math.sqrt(a));
// e retornamos a distância
return(c * raio_terra);
}
}
Ao executar este código Java 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 Cuiabá-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. |
Nossas 20 dicas & truques de programação mais populares |
|
Python - Como testar se um ponto está dentro de um círculo em Python - Desenvolvimento de Games com Python C# - Como testar se uma string é null ou vazia em C# usando a função IsNullOrEmpty() da classe String Java - Como usar a classe Character da linguagem Java para tratar caracteres individuais em seus programas |
Você também poderá gostar das dicas e truques de programação abaixo |
|
Java - Como percorrer uma árvore binária em Java usando o algorítmo depth-first search (DFS) recursivo VB.NET - Como calcular o coeficiente angular de uma reta em VB.NET dados dois pontos no plano cartesiano |
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 |




