![]() |
|
|
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 Ética e Legislação Profissional |
||
|
||
|
|
||
Java ::: Fundamentos da Linguagem ::: Tipos de Dados |
Como usar o tipo de dados char da linguagem JavaQuantidade de visualizações: 26001 vezes |
O tipo de dados char é usado para representar um único caractere. Veja:
public class Estudos{
public static void main(String args[]){
char letra1 = 'A';
char letra2 = 'B';
System.out.println("As letras são: "
+ letra1 + " e " + letra2);
System.exit(0);
}
}
Observe que um literal string deve estar entre aspas duplas, enquanto que um literal do tipo caractere deve estar entre aspas simples. Desta forma, "H" é uma string e 'H' é um caractere. O tipo char é integral mas sem sinal. A faixa de uma variável deste tipo vai de 0 à 65536. Os caracteres em Java são codificados em Unicode, que é um codificação de 16 bits capaz de representar uma larga faixa de caracteres internacionais. Se os 9 bits mais significantes de um char forem todos 0, então a codificação será a mesma que o ASCII de 7 bits. É possível atribuir literais inteiros à uma variável do tipo char. Veja:
public class Estudos{
public static void main(String args[]){
char letra = 98;
System.out.println("A letra é: "
+ letra);
System.exit(0);
}
}
Este código exibirá o caractere 'b'. Veja um exemplo no qual imprimimos todas as letras do alfabeto minúsculo:
public class Estudos{
public static void main(String args[]){
for(char i = 97; i <= 122; i++){
System.out.print(i + " ");
}
System.exit(0);
}
}
O tipo char pode ser convertido (sem a necessidade de cast) para os seguintes tipos: char -> int -> long -> float -> double Não é possível converter um char em um short ou byte. Caso isso seja realmente necessário, temos que fazer uma coerção (cast). Veja:
public class Estudos{
public static void main(String args[]){
char letra = 57;
byte valor = (byte)(letra);
System.exit(0);
}
}
É fácil entender porque um char não pode ser convertido implicitamente em um byte. Um char possui 16 bits enquanto um byte possui apenas 8 bits. Mas, um short possui 16 bits. Assim, o que impede a conversão implicita de um char para um short? É simples. Como o tipo short possui sinal (aceita valores negativos) e o tipo char é sem sinal, o resultado é que o tipo short possui um bit a menos (reservado para o sinal) e portanto, não pode acomodar os 16 bits do tipo char. |
JavaScript ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular o coeficiente angular de uma reta em JavaScript dados dois pontos no plano cartesianoQuantidade de visualizações: 2233 vezes |
|
O Coeficiente Angular de uma reta é a variação, na vertical, ou seja, no eixo y, pela variação horizontal, no eixo x. Sim, isso mesmo. O coeficiente angular de uma reta tem tudo a ver com a derivada, que nada mais é que a taxa de variação de y em relação a x. Vamos começar analisando o seguinte gráfico, no qual temos dois pontos distintos no plano cartesiano: ![]() Veja que o segmento de reta AB passa pelos pontos A (x=3, y=6) e B (x=9, y=10). Dessa forma, a fórmula para obtenção do coeficiente angular m dessa reta é: \[\ \text{m} = \frac{y_2 - y_1}{x_2 - x_1} = \frac{\Delta y}{\Delta x} = tg \theta \] Note que __$\Delta y__$ e __$\Delta x__$ são as variações dos valores no eixo das abscissas e no eixo das ordenadas. No triângulo retângulo que desenhei acima, a variação __$\Delta y__$ se refere ao comprimento do cateto oposto e a variação __$\Delta y__$ se refere ao comprimento do cateto adjascente. Veja agora o trecho de código na linguagem JavaScript que solicita as coordenadas x e y dos dois pontos, efetua o cálculo e mostra o coeficiente angular m da reta que passa pelos dois pontos:
<html>
<head>
<title>Estudos JavaScript</title>
</head>
<body>
<script type="text/javascript">
// x e y do primeiro ponto
var x1 = 3;
var y1 = 6;
// x e y do segundo ponto
var x2 = 9;
var y2 = 10;
var m = (y2 - y1) / (x2 - x1);
// mostramos o resultado
document.writeln("O coeficiente angular é: " + m);
</script>
</body>
</html>
Ao executar este código JavaScript nós teremos o seguinte resultado: O coeficiente angular é: 0.6666666666666666 Veja agora como podemos calcular o coeficiente angular da reta que passa pelos dois pontos usando o Teorema de Pitágoras. Note que agora nós estamos tirando proveito da tangente do ângulo Theta (__$\theta__$), também chamado de ângulo Alfa ou Alpha (__$\alpha__$):
<html>
<head>
<title>Estudos JavaScript</title>
</head>
<body>
<script type="text/javascript">
// x e y do primeiro ponto
var x1 = 3;
var y1 = 6;
// x e y do segundo ponto
var x2 = 9;
var y2 = 10;
// vamos obter o comprimento do cateto oposto
var cateto_oposto = y2 - y1;
// e agora o cateto adjascente
var cateto_adjascente = x2 - x1;
// vamos obter o ângulo tetha, ou seja, a inclinação da hipetunesa
// (em radianos, não se esqueça)
var tetha = Math.atan2(cateto_oposto, cateto_adjascente);
// e finalmente usamos a tangente desse ângulo para calcular
// o coeficiente angular
var tangente = Math.tan(tetha);
// mostramos o resultado
document.writeln("O coeficiente angular é: " + tangente);
</script>
</body>
</html>
Ao executar este código você verá que o resultado é o mesmo. No entanto, fique atento às propriedades do coeficiente angular da reta: 1) O coeficiente angular é positivo quando a reta for crescente, ou seja, m > 0; 2) O coeficiente angular é negativo quando a reta for decrescente, ou seja, m < 0; 3) Se a reta estiver na horizontal, ou seja, paralela ao eixo x, seu coeficiente angular é zero (0). 4) Se a reta estiver na vertical, ou seja, paralela ao eixo y, o coeficiente angular não existe. |
JavaScript ::: Dicas & Truques ::: Miscelâneas |
JavaScript para iniciantes - Como usar o método escape() para codificar uma frase em JavaScriptQuantidade de visualizações: 13167 vezes |
|
A função escape() da linguagem JavaScript é usada quando precisamos codificar uma palavra, frase ou texto, ou seja, uma string. Em geral nós a usamos para codificar caracteres especiais em uma string, com a exceção dos caracteres e símbolos "* @ - _ + . /". Veja um exemplo completo:
<html>
<head>
<title>Estudando JavaScript</title>
</head>
<body>
<script type="text/javascript">
var frase = "Programar em JavaScript é muito bom";
document.write("Original: " + frase + "<br>");
document.write("Codificada: " + escape(frase));
</script>
</body>
</html>
Ao executarmos este código nós teremos o seguinte resultado: Original: Programar em JavaScript é muito bom Codificada: Programar%20em%20JavaScript %20%E9%20muito%20bom Lembre-se de que o objetivo da função escape() é tornar uma string portável, ou seja, que pode ser transmitida pela rede para qualquer computador que suportar os caracteres ASCII. Nota: A função escape() foi marcada como desatualizada (deprecated) a partir do JavaScript 1.5. Em vez dela nós devemos usar as funções encodeURI() ou encodeURIComponent(). |
Python ::: Pandas Python Library (Biblioteca Python Pandas) ::: Input e Output (Entrada e Saída) |
Como usar o método read_csv() do Pandas da linguagem Python para carregar um dataset e retorná-lo como um DataFrameQuantidade de visualizações: 5852 vezes |
|
Quando estamos desenvolvendo soluções em Data Science ou Machine Learning, é comum precisarmos carregar dados contidos em arquivos .csv (nos quais os registros são separados por vírgulas ou ponto-e-vírgula). Para isso podemos usar o método read_csv() da biblioteca Pandas do Python. Veja um exemplo no qual usamos o método read_csv() para carregar um dataset e depois exibir o DataFrame resultante. Para isso usaremos uma amostra de dados de empréstimos aprovados ou recusados. O arquivo .csv pode ser baixado aqui. Eis o código:
# importamos a biblioteca Pandas
import pandas as pd
def main():
# vamos carregar os dados do arquivo .csv
dados = pd.read_csv("C:\\estudos_python\\emprestimos.csv",
delimiter=";")
# vamos mostrar o DataFrame resultante
print(dados)
if __name__== "__main__":
main()
Quando executarmos este código nós teremos um resultado parecido com:
id nome idade sexo renda valor parc pont ap
0 1 MIGUEL728 24 M 1800 12500 30 34 S
1 2 RAUL46 61 M 2300 10000 24 59 S
2 3 JONAS264 28 M 800 12500 36 59 N
3 4 LETICIA135 71 F 1800 10000 36 13 N
4 5 CARLOS931 60 F 4000 2000 6 10 N
.. ... ... ... ... ... ... ... ... ..
9 96 ANGELA391 91 F 4000 12500 12 33 N
96 97 PEDRO764 50 M 10200 2500 12 1 N
97 98 ADRIANA175 41 F 4000 2000 36 77 S
98 99 ROSA666 42 F 1800 20000 24 74 N
99 100 SARA653 36 F 970 11000 12 42 N
[100 rows x 9 columns]
Note que aqui nós temos uma amostra de 100 registros e cada registro possui 9 colunas. Se você quiser ver todos os 100 registros, troque a linha: print(dados) por print(dados.to_string()) Para finalizar, note que forneci ";" como delimitador para o método read_csv(). |
C# ::: Windows Forms ::: DataGridView |
Como ligar um DataGridView do C# Windows Forms à tabela de um banco de dados e efetuar inserção, alteração e remoção de registrosQuantidade de visualizações: 33500 vezes |
|
Uma das principais dúvidas que recebo em meu site é em relação aos passos necessários para associar um DataGridView com a tabela de um banco de dados e listar os dados. Em tempo de design este processo é relativamente fácil, visto que temos wizards que nos acompanham e fazem o trabalho mais pesado nos bastidores. No entanto, o cenário é completamente diferente quando temos que realizar tal tarefa via código. Espero que esta dica o deixe mais preparado para enfrentar tais situações. Para esta dica eu fiz uma conexão Visual C# 2005 + MySQL 5.0 usando ODBC (caso tenha dúvidas sobre isso, veja minha seção sobre C# + MySQL). Criei uma tabela MySQL chamada clientes contendo id, nome, idade, cidade e estado do cliente. Criei uma classe de conexão, inseri um DataGridView no formulário e coloquei as declarações abaixo na classe do formulário Form1.cs (fora dos métodos, para que os dados sejam globais na classe): // membros de instância de acesso global na classe // Dica: Se estiver usando SQL Server, troque "Odbc" por // "Sql" (Ex: SQLConnection, SqlCommand, SqlDataAdapter) // conexão com o banco de dados OdbcConnection conn = null; OdbcCommand cmd = null; OdbcDataAdapter adapter = null; DataSet ds = null; Em seguida colocamos o código abaixo no evento Click de um botão:
private void button4_Click(object sender, EventArgs e){
// Dica: Se estiver usando SQL Server, troque "Odbc"
// por "Sql" (Ex: SqlCommand, SqlDataAdapter, etc)
// obtém a conexão com o banco de dados
conn = ConexaoODBC.obterConexao();
if(conn != null){
// obtém todos os clientes cadastrados
cmd = new OdbcCommand("SELECT * FROM clientes",
conn);
adapter = new OdbcDataAdapter(cmd);
ds = new DataSet();
adapter.Fill(ds, "clientes_table");
// exibe os dados da tabela no DataGridView
dataGridView1.DataSource = ds;
dataGridView1.DataMember = "clientes_table";
// fecha a conexão
ConexaoODBC.fecharConexao();
}
}
Aqui os dados já são listados no DataGridView. Porém, as alterações efetuadas no controle ainda não são repassadas para o banco de dados. Veja o código adicional no evento Click de outro botão:
private void button5_Click(object sender, EventArgs e){
// vamos salvar os dados do DataGridView para a tabela do
// banco de dados
// Dica: Se estiver usando SQL Server, troque "Odbc" por
// "Sql" (Ex: SqlCommandBuilder)
// obtém a conexão com o banco de dados
conn = ConexaoODBC.obterConexao();
if(conn != null){
OdbcCommandBuilder cmb = new OdbcCommandBuilder(adapter);
cmb.GetUpdateCommand();
adapter.Update(ds.Tables["clientes_table"]);
// fecha a conexão
ConexaoODBC.fecharConexao();
}
}
Pronto! Execute a aplicação, clique no primeiro botão para carregar os dados da tabela MySQL no DataGridView. Em seguida efetue algumas alterações, insira ou exclua linhas e clique no segundo botão. Feche a aplicação e abra-a novamente e se certifique de que os registros foram atualizados, inseridos ou removidos com sucesso. |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
|
Delphi - Como excluir o item ou itens selecionados em uma TListBox do Delphi usando a função DeleteSelected JavaScript - Como resolver uma equação do segundo grau em JavaScript - Como calcular Bhaskara em JavaScript MySQL - Como usar joins no MySQL |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






