![]() |
|
|
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 |
||
|
||
|
|
||
C# ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular o coeficiente angular de uma reta em C# dados dois pontos no plano cartesianoQuantidade de visualizações: 1906 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 C# 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:
using System;
using System.Collections;
namespace Estudos {
class Program {
static void Main(string[] args) {
// x e y do primeiro ponto
Console.Write("Informe a coordenada x do primeiro ponto: ");
double x1 = double.Parse(Console.ReadLine());
Console.Write("Informe a coordenada y do primeiro ponto: ");
double y1 = double.Parse(Console.ReadLine());
// x e y do segundo ponto
Console.Write("Informe a coordenada x do segundo ponto: ");
double x2 = double.Parse(Console.ReadLine());
Console.Write("Informe a coordenada y do segundo ponto: ");
double y2 = double.Parse(Console.ReadLine());
// agora vamos calcular o coeficiente angular
double m = (y2 - y1) / (x2 - x1);
// e mostramos o resultado
Console.WriteLine("O coeficiente angular é: " + m);
Console.WriteLine("\nPressione qualquer tecla para sair...");
// pausa o programa
Console.ReadKey();
}
}
}
Ao executar este código em linguagem C# 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__$):
using System;
using System.Collections;
namespace Estudos {
class Program {
static void Main(string[] args) {
// x e y do primeiro ponto
Console.Write("Informe a coordenada x do primeiro ponto: ");
double x1 = double.Parse(Console.ReadLine());
Console.Write("Informe a coordenada y do primeiro ponto: ");
double y1 = double.Parse(Console.ReadLine());
// x e y do segundo ponto
Console.Write("Informe a coordenada x do segundo ponto: ");
double x2 = double.Parse(Console.ReadLine());
Console.Write("Informe a coordenada y do segundo ponto: ");
double y2 = double.Parse(Console.ReadLine());
// vamos obter o comprimento do cateto oposto
double cateto_oposto = y2 - y1;
// e agora o cateto adjascente
double cateto_adjascente = x2 - x1;
// vamos obter o ângulo tetha, ou seja, a inclinação da hipetunesa
// (em radianos, não se esqueça)
double tetha = Math.Atan2(cateto_oposto, cateto_adjascente);
// e finalmente usamos a tangente desse ângulo para calcular
// o coeficiente angular
double tangente = Math.Tan(tetha);
// e mostramos o resultado
Console.WriteLine("O coeficiente angular é: " + tangente);
Console.WriteLine("\nPressione qualquer tecla para sair...");
// pausa o programa
Console.ReadKey();
}
}
}
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. |
VB.NET ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar o laço While em VB.NETQuantidade de visualizações: 11847 vezes |
|
Um instrução de repetição (também chamada de laço ou loop) permite que um bloco de códigos seja executado repetidamente até que uma condição seja satisfeita. O laço While é usado quando queremos testar uma condição e, executar um bloco de código repetidamente enquanto esta condição for verdadeira. Lembre-se de que, se a condição já for falsa, o laço nunca será executado. Veja um exemplo de laço While que nos permite exibir os números de 0 a 10: Dim numero As Integer = 0 While numero <= 10 Console.WriteLine(numero) numero += 1 End While Veja uma nova versão deste código, desta vez contando de 10 a 0: Dim numero As Integer = 10 While numero >= 0 Console.WriteLine(numero) numero -= 1 End While Aqui nós estamos novamente avaliando uma condição, ou seja, se o resultado da condição for True, a execução do laço continua. Se for False, o laço para. Veja um exemplo no qual a condição booleana está bem explícita:
Dim pode As Boolean = True
Dim valor As Integer = 1
While pode
Console.WriteLine(valor)
valor += 1
If valor > 20 Then
pode = False
End If
End While
|
Ruby ::: Fundamentos da Linguagem ::: Variáveis e Constantes |
Como testar o tipo de uma variável em Ruby usando a função classQuantidade de visualizações: 9719 vezes |
Em algumas ocasiões precisamos retornar o tipo de uma variável (String, FixNum, Float, etc) em Ruby, Isso pode ser feito por meio do uso do método class Object. Veja:# vamos definir uma variável do tipo inteiro valor = 265 # obtemos o tipo da variável valor tipo = valor.class # exibimos o resultado puts "A variável é do tipo " + tipo.to_s Ao executar este código Ruby nós teremos o seguinte resultado: A variável é do tipo Integer |
C ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar o laço while em C - Linguagem C para iniciantes em programaçãoQuantidade de visualizações: 34066 vezes |
O laço while é usado quando queremos que um bloco de instruções seja executado ENQUANTO uma condição for verdadeira (true). Veja um trecho de código exemplificando isso:
int valor = 1;
while(valor <= 10){
printf("%d ", valor);
valor++;
}
Este trecho de código exibe os números de 1 à 10 na página. Veja agora o mesmo trecho de código, desta vez contando de 10 à 1:
int valor = 10;
while(valor >= 1){
printf("%d ", valor);
valor--;
}
Lembre-se de que a condição testada em um laço while deve resultar em um valor boolean (true ou false). O trecho de código seguinte deixa isso mais claro:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
int continuar = 1; // 1 é true em C
int valor = 1;
while(continuar){
printf("%d ", valor);
valor++;
if(valor > 10)
continuar = 0; // 0 é false em C
}
printf("\n\n");
system("PAUSE");
return 0;
}
Para finalizar, lembre-se de que um laço while pode nunca ser executado, ou seja, se a condição testada na primeira iteração já resultar false, o fluxo de código é transferido para a primeira instrução após o laço. |
Java ::: Classes e Componentes ::: JTable |
Java Swing - Como colorir o fundo das células de uma JTable baseado em seus valoresQuantidade de visualizações: 1 vezes |
Nesta dica veremos como é possível criar uma classe personalizada que extende a classe JLabel e implementa a interface TableCellRenderer e usá-la como renderizador das células de uma JTable. Dessa forma conseguiremos aplicar uma cor diferente a cada célula dependendo do seu valor. Veja o resultado na figura abaixo:![]() Veja agora o código Java Swing completo para o exemplo:
package arquivodecodigos;
import javax.swing.*;
import java.awt.*;
import javax.swing.table.*;
public class Estudos extends JFrame{
public Estudos(){
super("Exemplo de uma tabela simples");
// colunas da tabela
String[] colunas = {"Nome", "Idade", "Sexo"};
// conteúdo da tabela
Object[][] conteudo = {
{"Osmar J. Silva", "32", "Masculino"},
{"Maria Clara Gomes", "19", "Feminino"},
{"Fernando Gomes", "15", "Masculino"},
{"Carlos Vieira", "40", "Masculino"}
};
// constrói a tabela
JTable tabela = new JTable(conteudo, colunas);
// quero colorir o fundo das células da segunda coluna
// se o valor encontrado for menor que 20
TableCellRenderer tcr = new Colorir();
TableColumn column =
tabela.getColumnModel().getColumn(1);
column.setCellRenderer(tcr);
tabela.setPreferredScrollableViewportSize(new
Dimension(350, 50));
Container c = getContentPane();
c.setLayout(new FlowLayout());
JScrollPane scrollPane = new JScrollPane(tabela);
c.add(scrollPane);
setSize(400, 300);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class Colorir extends JLabel implements TableCellRenderer{
public Colorir(){
setOpaque(true);
}
@Override
public Component getTableCellRendererComponent(
JTable table,
Object value, boolean isSelected, boolean hasFocus,
int row, int column){
if(Integer.parseInt(value.toString()) < 20){
setBackground(Color.YELLOW);
}
else{
setBackground(table.getBackground());
}
setText(value.toString());
return this;
}
@Override
public void validate() {}
@Override
public void revalidate() {}
@Override
protected void firePropertyChange(String propertyName,
Object oldValue, Object newValue) {}
@Override
public void firePropertyChange(String propertyName,
boolean oldValue, boolean newValue) {}
}
|
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






