Você está aqui: Cards de Engenharia Civil - Estruturas de Concreto Armado |
||
|
||
|
|
||
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: 14973 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. |
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como comparar strings em C# usando o método Equals() da classe StringQuantidade de visualizações: 22667 vezes |
|
Em várias situações nós precisamos efetuar a comparação de strings (palavras, frase e textos) na linguagem C#. Para isso podemos usar o método Equals() da classe String. Este método retorna true se as duas strings forem idênticas e false em caso contrário. Veja o código completo para o exemplo:
using System;
namespace Estudos{
class Program{
static void Main(string[] args) {
string frase1 = "gosto de java e c#";
string frase2 = "Gosto de Java e C#";
if (frase1.Equals(frase2))
Console.WriteLine("As duas strings são iguais");
else
Console.WriteLine("As duas strings são diferentes");
Console.ReadKey();
}
}
}
Ao executar este código nós teremos o seguinte resultado: As duas strings são diferentes. |
LISP ::: LISP para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como converter Coordenadas Cartesianas para Coordenadas Polares em LISP - LISP para EngenhariaQuantidade de visualizações: 1058 vezes |
|
Nesta nossa série de LISP e AutoLISP para Geometria Analítica e Álgebra Linear, mostrarei um código 100% funcional para fazer a conversão entre coordenadas cartesianas e coordenadas polares. Esta operação é muito frequente em computação gráfica e é parte integrante das disciplinas dos cursos de Engenharia (com maior ênfase na Engenharia Civil). Na matemática, principalmente em Geometria e Trigonometria, o sistema de Coordenadas no Plano Cartesiano, ou Espaço Cartesiano, é um sistema que define cada ponto em um plano associando-o, unicamente, a um conjuntos de pontos numéricos. Dessa forma, no plano cartesiano, um ponto é representado pelas coordenadas (x, y), com o x indicando o eixo horizontal (eixo das abscissas) e o y indicando o eixo vertical (eixo das ordenadas). Quando saímos do plano (espaço 2D ou R2) para o espaço (espaço 3D ou R3), temos a inclusão do eixo z (que indica profundidade). Já o sistema de Coordenadas Polares é um sistema de coordenadas em duas dimensões no qual cada ponto no plano é determinado por sua distância a partir de um ponto de referência conhecido como raio (r) e um ângulo a partir de uma direção de referência. Este ângulo é normalmente chamado de theta (__$\theta__$). Assim, um ponto em Coordenadas Polares é conhecido por sua posição (r, __$\theta__$). Antes de prosseguirmos, veja uma imagem demonstrando os dois sistemas de coordenadas: ![]() A fórmula para conversão de Coordenadas Cartesianas para Coordenadas Polares é: __$r = \sqrt{x^2+y2}__$ __$\theta = \\arctan\left(\frac{y}{x}\right)__$ E aqui está o código LISP completo que recebe as coordenadas cartesianas (x, y) e retorna as coordenadas polares (r, __$\theta__$):
; programa LISP que converte Coordenadas Cartesianas
; em Coordenadas Polares
(let((x)(y)(raio)(theta)(angulo_graus))
; vamos ler as coordenadas cartesianas
(princ "Valor de x: ")
(force-output)
(setq x (read))
(princ "Valor de y: ")
(force-output)
(setq y (read))
; vamos calcular o raio
(setq raio (sqrt (+ (expt x 2) (expt y 2))))
; agora calculamos o theta (ângulo) em radianos
(setq theta (atan y x))
; queremos o ângulo em graus também
(setq angulo_graus (* 180 (/ theta pi)))
; e exibimos o resultado
(princ "As Coordenadas Polares são: ")
(format t "raio = ~F, theta = ~F, ângulo em graus: ~F"
raio theta angulo_graus)
)
Ao executar este código LISP nós teremos o seguinte resultado: Valor de x: -1 Valor de y: 1 As Coordenadas Polares são: raio = 1.4142135623730951, theta = 2.356194490192345, ângulo em graus = 135.0 Veja que as coordenadas polares equivalentes são (__$\sqrt{2}__$, __$\frac{3\pi}{4}__$), com o theta em radianos. Sim, os professores das disciplinas de Geometria Analítica e Álgebra Linear, Física e outras gostam de escrever os resultados usando raizes e frações em vez de valores reais. |
JavaScript ::: ECMAScript 5 - JavaScript 5 - ES5 - ECMAScript 2009 ::: Passos Iniciais |
Como usar a diretiva "use strict" do ECMAScript 5 em seus códigos JavaScriptQuantidade de visualizações: 1296 vezes |
À medida que a linguagem JavaScript foi ganhando popularidade, as pessoas responsáveis por sua manutenção perceberam a necessidade de torná-la um pouco mais restritiva em relação a erros de programação que até então não eram vistos pelos navegadores como erros. Vamos ver um exemplo? Considere o código JavaScript a seguir:
<html>
<head>
<title>Estudos PHP</title>
</head>
<body>
<script type="text/javascript">
total_cliente = 100;
document.writeln("Total: " + total_cliente);
</script>
</body>
</html>
Ao executarmos este código nós teremos o seguinte resultado: Total: 100 Note que, embora o código tenha funcionado como esperado, nós não usamos a palavra-chave "var" (ou "let" ou "const") na declaração da variável total_cliente. Quando não fazemos isso, o interpretador realiza esta tarefa por conta própria, declarando e colocando a variável como global. Até aqui nenhum problema. A questão surge quando queremos que esta variável seja usada localmente, ou ainda, quando queremos indicar, para quem estiver lendo o nosso código, o ponto exato onde uma determinada variável foi declarada. A partir do ECMAScript 5 (JavaScript 5 - ES5 - ECMAScript 2009) nós podemos usar o modo "use strict" para exibir erros sempre que uma variável não declarada (com "var", "let" ou "const" sofra atribuição ou leitura. Dessa forma nossos códigos serão mais seguros, pois o interpretador não mais colocará variáveis no escopo global sem nosso consentimento explícito. Veja agora o mesmo trecho de código anterior, dessa vez usando "use strict":
<html>
<head>
<title>Estudos PHP</title>
</head>
<body>
<script type="text/javascript">
"use strict"
total_cliente = 100;
document.writeln("Total: " + total_cliente);
</script>
</body>
</html>
Agora o código não mais executa, e temos a seguinte mensagem de erro no console do Google Chrome ou Firefox: Uncaught ReferenceError: total_cliente is not defined at index.html:10 Neste exemplo eu usei "use strict" de forma a refletir em todos os códigos JavaScript a partir daquele ponto. No entanto, é possível colocar essa diretiva em locais expecíficos, tais como dentro do corpo de uma função. |
jQuery ::: Dicas & Truques ::: Atributos ou Propriedades HTML |
Como remover uma classe (ou classes) de um elemento HTML usando a função removeClass() do jQueryQuantidade de visualizações: 1045 vezes |
Muitas vezes precisamos remover uma ou mais classes de um elemento HTML. Para isso nós podemos usar o método removeClass() da biblioteca jQuery. Veja como isso pode ser feito no trecho de código abaixo:
<script type="text/javascript">
<!--
function removerClass(){
// remove a classe "destaque" do parágrafo
// com o id "parag"
$('#parag').removeClass("destaque");
}
//-->
</script>
Se quisermos remover mais de uma classe ao mesmo tempo, basta separá-las por espaços no argumento para o método. O retorno deste método é um objeto jQuery que pode ser usado para fins de encadeamento de chamadas de métodos. |
Veja mais Dicas e truques de jQuery |
Dicas e truques de outras linguagens |
|
JavaScript - Como usar objetos Set em seus códigos JavaScript Delphi - Como calcular o cateto adjascente dadas as medidas da hipotenusa e do cateto oposto em Delphi |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






