![]() |
|
|
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 Engenharia Civil - Estruturas de Concreto Armado |
||
|
||
|
|
||
MySQL ::: Dicas & Truques ::: Chaves, Índices e Restrições de Integridade Referencial |
Como criar chaves primárias compostas em uma tabela do MySQLQuantidade de visualizações: 2380 vezes |
|
Sabemos que o uso do atributo PRIMARY KEY (PK) permite marcar um campo de uma tabela MySQL como chave primária. Assim, este campo não poderá ter valores repetidos nem conter o valor NULL. Há, no entanto, situações nas quais precisamos marcar mais de um campo como chave primária, ou seja, a chave primária é composta de dois ou mais campos. Estas situações surgem nos cenários em que temos relacionamentos N x N (muitos para muitos) e uma tabela associativa que represente o relacionamento. Um exemplo disso é a relação autor-livro: um autor pode escrever vários livros e um livro pode ser escrito por mais um autor (vários autores em conjunto). Mas, o mesmo autor não pode aparecer no mesmo livro mais de uma vez. Vamos representar isso passo-a-passo. Comece criando a tabela autores. Veja o comando CREATE TABLE completo para esta tarefa: CREATE TABLE autores( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, nome VARCHAR(45) NOT NULL, email VARCHAR(45) NOT NULL, PRIMARY KEY(id) ) ENGINE = InnoDB; Este comando CREATE TABLE vai gerar a seguinte estrutura: Field Type Null Key Default Extra id int(10) unsigned NO PRI - auto_increment nome varchar(45) NO - email varchar(45) NO - Vamos agora criar a tabela livros. Veja o comando CREATE TABLE completo: CREATE TABLE livros( id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, titulo VARCHAR(45) NOT NULL, paginas INTEGER UNSIGNED NOT NULL, PRIMARY KEY (id) ) ENGINE = InnoDB; Este comando CREATE TABLE vai gerar a seguinte estrutura: Field Type Null Key Default Extra id int(10) unsigned NO PRI - auto_increment titulo varchar(45) NO - paginas int(10) unsigned NO - CREATE TABLE autores_livros( id_autor int(10) unsigned NOT NULL, id_livro int(10) unsigned NOT NULL, PRIMARY KEY(id_autor,id_livro), KEY FK_autores_livros_2(id_livro), CONSTRAINT FK_autores_livros_2 FOREIGN KEY(id_livro) REFERENCES livros(id), CONSTRAINT FK_autores_livros_1 FOREIGN KEY(id_autor) REFERENCES autores(id) ) ENGINE=InnoDB Este comando CREATE TABLE vai gerar a seguinte estrutura: Field Type Null Key Default Extra id_autor int(10) unsigned NO PRI - - id_livro int(10) unsigned NO PRI - - Agora experimente inserir dados nas tabelas autores e livros. Em seguida faça o relaciomento na tabela autores_livros. Tente repetir o id do autor para o mesmo livro. Imediatamente o MySQL recusará a inserção com a mensagem de erro: Error 1062: Duplicate entry '2-2' for key 1 E, como usamos chaves estrangeiras na tabela autores_livros, ao tentarmos excluir um livro já relacionado com um autor, teremos a seguinte mensagem de erro: Cannot delete or update a parent row: a foreign key constraint fails (`estudos/autores_livros`, CONSTRAINT `FK_autores_livros_2` FOREIGN KEY (`id_livro`) REFERENCES `livros` (`id`)) Veja mais dicas nesta seção para aprender mais sobre chaves estrangeiras e restrições de integridade referencial. |
Java ::: Dicas & Truques ::: Recursão (Recursividade) |
Java Avançado - Como listar o conteúdo de um diretório recursivamenteQuantidade de visualizações: 1 vezes |
|
Nesta dica mostrarei como podemos usar recursividade (recursão) para listar todo o conteúdo de um diretório. Este é um exercício para melhorar o seu entendimento de funções recursivas em Java. Veja o código completo para o exemplo:
package arquivodecodigos;
import java.io.*;
import java.util.*;
public class Estudos {
static int indentLevel = -1;
public static void main(String[] args) {
listPath(new File("c:\\estudos_c"));
}
static void listPath(File path) {
File files[];
indentLevel++;
files = path.listFiles();
Arrays.sort(files);
for (int i = 0, n = files.length; i < n; i++) {
for (int indent = 0; indent < indentLevel; indent++) {
System.out.print(" ");
}
System.out.println(files[i].getName());
if(files[i].isDirectory()) {
listPath(files[i]);
}
}
indentLevel--;
}
}
Ao executar este código nós teremos o seguinte resultado:
DICA.txt
estudos
.vs
estudos
v16
.suo
Browse.VC.db
ipch
AutoPCH
1dcb307edee5acf8
ORIGEM.ipch
Debug
estudos.exe
estudos.exe.recipe
estudos.ilk
estudos.log
estudos.pdb
estudos.tlog
CL.command.1.tlog
CL.read.1.tlog
CL.write.1.tlog
estudos.lastbuildstate
link.command.1.tlog
link.read.1.tlog
link.write.1.tlog
estudos.vcxproj.FileListAbsolute.txt
Origem.obj
vc142.idb
vc142.pdb
estudos.sln
estudos.vcxproj
estudos.vcxproj.filters
estudos.vcxproj.user
Origem.cpp
Estudos_C.dev
Estudos_C.exe
Estudos_C.layout
main.c
main.o
Makefile.win
|
Delphi ::: VCL - Visual Component Library ::: TListBox |
Como excluir todos os itens de uma ListBox do Delphi - Como remover todos os itens da ListBox usando a função ClearQuantidade de visualizações: 15055 vezes |
Em algumas situações nós precisamos excluir todos os itens de uma ListBox. Para tais situações podemos usar o método Clear da classe ListBox. Veja:procedure TForm1.Button2Click(Sender: TObject); begin // vamos excluir todos os itens da ListBox ListBox1.Clear; // poderíamos também usar // ListBox1.Items.Clear; end; Note que podemos também chamar o método Clear diretamente no objeto Items da ListBox, embora a chamada na ao método Clear da lista seja mais comum. É possível também excluir os itens de uma ListBox individualmente chamando a função Delete() no objeto Items. Neste caso nós usamos um laço e percorremos todos os elementos da lista e os excluímos um a um. É importante, para estes casos, lembrarmos de percorrer os itens do último para o primeiro. Caso esta regra não seja obedecida, poderá haver erros de acesso durante a exclusão. Veja o código:
procedure TForm1.Button2Click(Sender: TObject);
var
i: Integer;
begin
// vamos percorrer todos os itens da ListBox do último
// para o primeiro
for i := ListBox1.Items.Count - 1 downto 0 do
begin
// vamos excluir o item no índice correspondente
ListBox1.Items.Delete(i);
end;
end;
Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
LISP ::: Desafios e Lista de Exercícios Resolvidos ::: Lisp Básico |
Exercícios Resolvidos de Lisp - Como converter quilômetros em metros, centímetros e milímetros usando LispQuantidade de visualizações: 1382 vezes |
|
Pergunta/Tarefa: Escreva um programa em Common Lisp para converter quilômetros em metros, centímetros e milímetros. Seu programa deverá pedir para o usuário informar a quantidade de quilômetros e exibir as conversões solicitadas. Como sabemos, um Quilômetro = 1000 Metros, 100.000 Centímetros ou 1.000.000 Milímetros. Seu programa deverá exibir uma saída parecida com: Informe a distância em quilômetros: 2.5 Distância em Quilômetros: 2.5 Distância em Metros: 2500.0 Distância em Centímetros: 250000.0 Distância em Milímetros: 2500000.0 Veja a resolução comentada deste exercício usando Common Lisp: ; Variáveis usadas na resolução do problema (let ((quilometros)(metros)(centimetros)(milimetros)) ; vamos ler a quantidade de quilômetros (princ "Informe a distância em quilômetros: ") ; talvez o seu compilador não precise disso (force-output) ; atribui o valor lido à variável quilometros (setq quilometros (read)) ; vamos calcular a distância em metros (setq metros (* quilometros 1000.0)) ; vamos calcular a distância em centímetros (setq centimetros (* quilometros 100000.0)) ; e agora a distância em milímetros (setq milimetros (* quilometros 1000000.0)) ; E mostramos o resultado (format t "Distância em Quilômetros: ~F" quilometros) (format t "~%Distância em Metros: ~F" metros) (format t "~%Distância em Centímetros: ~F" centimetros) (format t "~%Distância em Milímetros: ~F" milimetros) ) |
Java ::: Fundamentos da Linguagem ::: Variáveis e Constantes |
Curso Completo de Java - Como usar constantes em JavaQuantidade de visualizações: 15923 vezes |
|
O valor de uma variável pode ser alterado durante a execução do programa. Mas, o valor de uma constante não é alterado jamais. Escritas sempre com letras maiúsculas, as constantes trazem algumas vantagens, entre elas o fato de que nomes descritivos para constantes podem tornar o programa mais fácil de ser lido. Além disso, o valor representado pela constante pode ser alterado em apenas um lugar do código fonte. Veja abaixo como declarar e usar uma constante em Java:
// Este exemplo mostra como declarar e usar
// uma constante em Java
public class Estudos{
final static int IDENT_PROGRAMA = 47;
public static void main(String args[]){
System.out.println("O valor da constante " +
"é " + IDENT_PROGRAMA);
System.exit(0);
}
}
Observe que usamos o modificador final para marcar um identificador como constante. Veja agora o que acontece quando tentamos alterar o valor de uma constante em tempo de compilação: // vamos tentar alterar o valor da constante IDENT_PROGRAMA = 29; O compilador emitirá a seguinte mensagem de erro: Estudos.java:9: cannot assign a value to final variable IDENT_PROGRAMA IDENT_PROGRAMA = 29; ^ 1 error |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
|
Android Java - Como detectar um clique em um botão do Android usando setOnClickListener() e exibir uma mensagem AlertDialog |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




