![]() |
|
|
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 - Construção Civil |
||
|
||
|
|
||
Java ::: Classes e Componentes ::: JTextField |
Java Swing - Como definir a cor do texto de um JTextField usando o método setForeground()Quantidade de visualizações: 11270 vezes |
|
Nesta dica eu mostro como podemos usar o método setForeground() da classe JTextField para definir a cor de seu texto. Note que esta função pede um objeto da classe Color, por isso, neste exemplo, forneci o valor Color.BLUE. Veja o código Java Swing completo:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Estudos extends JFrame{
JTextField texto;
public Estudos() {
super("Estudos Swing");
Container c = getContentPane();
c.setLayout(new FlowLayout(FlowLayout.LEFT));
// Cria um botão
JButton btn = new JButton("Definir cor do texto");
btn.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
// vamos definir a cor do texto como azul
texto.setForeground(Color.BLUE);
}
}
);
// Cria o JTextField
texto = new JTextField(10);
// Adiciona o botão à janela
c.add(btn);
// Adiciona o JTextField à janela
c.add(texto);
setSize(350, 250);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
|
C ::: Dicas & Truques ::: Arquivos e Diretórios |
Como escrever em um arquivo um caractere de cada vez usando a função fputc() da linguagem CQuantidade de visualizações: 9872 vezes |
|
Em algumas situações precisamos escrever em um arquivo um caractere de cada vez. Para isso podemos usar a função fputc() do header stdio.h. Esta função recebe o caractere a ser escrito e um ponteiro para o objeto FILE que identifica o arquivo no qual queremos escrever. Se o caractere for escrito com sucesso, o indicador de posição interna do arquivo é adiantado para a inserção do próximo caractere. Veja um exemplo no qual escrevemos o alfabeto maiúsculo em um arquivo chamado alfabeto.txt:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]){
FILE *arquivo;
char letra;
// vamos abrir o arquivo para escrita
arquivo = fopen("alfabeto.txt", "w");
if(arquivo != NULL){
for(letra = 'A'; letra <= 'Z'; letra++){
fputc((int)letra, arquivo);
}
fclose(arquivo);
}
puts("Tentei escrever no arquivo. Veja se funcionou.");
puts("\n\n");
system("PAUSE");
return 0;
}
Ao executar este código nós teremos o seguinte resultado: Tentei escrever no arquivo. Veja se funcionou. Em seguida, se olharmos o conteúdo do arquivo "alfabeto.txt" veremos que o conteúdo foi escrito da forma que imaginamos. |
Dart ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercícios Resolvidos de Dart - Ler os lados de um triângulo e informar se ele é isósceles, escaleno ou equiláteroQuantidade de visualizações: 1515 vezes |
|
Pergunta/Tarefa: Um triângulo é uma forma geométrica (polígono) composta de três lados, sendo que cada lado é menor que a soma dos outros dois lados. Assim, para que um triângulo seja válido, é preciso que seus lados A, B e C obedeçam à seguinte regra: A < (B + C), B < (A + C) e C < (A + B). Escreva um programa Dart que leia os três lados de um triângulo e verifique se tais valores realmente formam um triângulo. Se o teste for satisfatório, informe se o triângulo é isósceles (dois lados iguais e um diferente), escaleno (todos os lados diferentes) ou equilátero (todos os lados iguais). Sua saída deverá ser parecida com: Informe o primeiro lado do triângulo: 30 Informe o segundo lado do triângulo: 40 Informe o terceiro lado do triângulo: 60 O triângulo é escaleno Veja a resolução comentada deste exercício usando Dart:
// Vamos importar a biblioteca dart:io
import 'dart:io';
void main(){
// vamos ler o primeiro lado do triângulo
stdout.write("Informe o primeiro lado do triângulo: ");
int lado_a = int.parse(stdin.readLineSync());
// vamos ler o segundo lado do triângulo
stdout.write("Informe o segundo lado do triângulo: ");
int lado_b = int.parse(stdin.readLineSync());
// vamos ler o terceiro lado do triângulo
stdout.write("Informe o terceiro lado do triângulo: ");
int lado_c = int.parse(stdin.readLineSync());
// os lados informados formam um triângulo?
if((lado_a < (lado_b + lado_c)) && (lado_b < (lado_a + lado_c))
&& (lado_c < (lado_a + lado_b))){
// é um triângulo equilátero (todos os lados iguais)?
if((lado_a == lado_b) && (lado_b == lado_c)){
stdout.write("\nO triângulo é equilátero\n");
}
else{
// é isósceles (dois lados iguais e um diferente)?
if((lado_a == lado_b) || (lado_a == lado_c) || (lado_c == lado_b)){
stdout.write("\nO triângulo é isósceles\n");
}
else{
// é escaleno
stdout.write("\nO triângulo é escaleno\n");
}
}
}
else{
stdout.write("\nOs lados informados não formam um triângulo.\n");
}
}
|
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Fenômenos dos Transportes, Hidráulica e Drenagem |
Exercício Resolvido de Python - Como calcular o Número de Reynolds em Python - Leite integral a 293 K, massa específica de 1030 kg/m3 e viscosidade de 2,12.10-3 N.s/m2 está escoando a uma razãoQuantidade de visualizações: 584 vezes |
|
Pergunta/Tarefa: O Número de Reynolds é uma quantidade adimensional usada na mecânica dos fluidos para prever padrões de fluxo em diferentes situações de escoamento de fluidos. É definido como a razão entre forças inerciais e forças viscosas dentro de um fluido. 1) Leite integral a 293 K, massa específica de 1030 kg/m3 e viscosidade de 2,12.10-3 N.s/m2 está escoando a uma razão de 0,605 kg/s em uma tubulação de 63,5 mm de diâmetro. a) Calcule o número de Reynolds. O escoamento é laminar ou turbulento? b) Calcule a vazão em m3/s para um número de Reynolds de 2100 e a velocidade em m/s. Sua saída deverá ser parecida com: Informe a Massa Específica do fluido (kg/m3): 1030 Informe a Viscosidade Dinâmica do fluido (N.s/m2): 2.12e-3 Informe a Vazão Mássica (kg/s): 0.605 Informe o Diâmetro da Tubulação (mm): 63.5 A área da tubulação é: 0.003166921744359361 m2 A vazão volumétrica do fluido é: 0.000587378640776699 m3/s A velocidade de escoamento do fluido é: 0.18547305181218499 m/s O Número de Reynolds é: 5722.106110271679 Informe o novo Número de Reynolds: 2100 A nova velocidade de escoamento do fluido é: 0.06806819050531304 m/s A nova vazão volumétrica do fluido é: 0.0002155666326104713 m3/s O primeiro passo para a resolução deste exercício é nos lembrarmos da Fórmula do Número de Reynolds: \[R_e = \frac{\rho \cdot v \cdot D}{\mu} \] Onde: [[rho]] é a massa específica do fluido medida em kg/m3; v = velocidade média do fluido em m/s; D = diâmetro para o fluxo do tubo em metros (m); [[mu]] é a viscosidade dinâmica do fluido em N.s/m2. Obs.: No código eu mostro como fazer as conversões de unidades necessárias. Veja a resolução completa para o exercício em Python, comentada linha a linha:
# vamos importar a biblioteca Math
import math
# método principal
def main():
# vamos ler a massa específica da água
massa_especifica = float(input("Informe a Massa Específica (kg/m3): "))
# vamos ler a viscosidade dinâmica do fluido
viscosidade_dinamica = float(input("Informe a Viscosidade (N.s/m2): "))
# vamos ler a vazão mássica
vazao_massica = float(input("Informe a Vazão Mássica (kg/s): "))
# vamos ler o diâmetro da tubulação
diametro = float(input("Informe o Diâmetro da Tubulação (mm): "))
# o primeiro passo é calcular a área da seção transversal da tubulação
# a) convertemos milímetros para metros
diametro = diametro / 1000.0
# b) calculamos a área em metros quadrados
area = (math.pi * math.pow(diametro, 2) / 4)
# vamos converter a vazão mássica em vazão volumétrica
vazao = vazao_massica / massa_especifica
# vamos obter a velocidade de escoamento do fluido
velocidade = vazao / area
# e finalmente calculamos o Número de Reynolds
numero_reynolds = (massa_especifica * velocidade * diametro) / viscosidade_dinamica
# mostramos os resultados
print("\nA área da tubulação é: {0} m2".format(area))
print("A vazão volumétrica do fluido é: {0} m3/s".format(vazao))
print("A velocidade de escoamento do fluido é: {0} m/s".format(velocidade))
print("O Número de Reynolds é: {0}".format(numero_reynolds))
# vamos ler o novo Número de Reynolds
novo_numero_reynolds = float(input("\nInforme o novo Número de Reynolds: "))
# vamos calcular a velocidade para o novo Reynolds
nova_velocidade = ((viscosidade_dinamica * novo_numero_reynolds)
/ (massa_especifica * diametro))
print("A nova velocidade de escoamento do fluido é: {0} m/s".format(nova_velocidade))
# vamos calcular a nova vazão volumétrica
nova_vazao = area * nova_velocidade
print("A nova vazão volumétrica do fluido é: {0} m3/s".format(nova_vazao))
if __name__== "__main__":
main()
O primeiro Número de Reynolds, ou seja, 5722.1061, caracteriza o escoamento como turbulento, pois é maior que 2400. Já o Número de Reynolds 2100 caracteriza o escoamento como escoamento de transição (saindo do escoamento laminar e indo para o escoamento turbulento), já que é maior que 2000 e menor que 2400. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Um programa Java que pede ao usuário que informe seu nome e exiba uma mensagem de boas-vindasQuantidade de visualizações: 16349 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que pede ao usuário que informe seu nome e exiba uma mensagem de boas-vindas. Se o usuário informar "Osmar J. Silva" seu programa deverá exibir a mensagem: Seja bem-vindo(a), Osmar J. Silva Faça duas versões do exercício. Na primeira você deverá usar a classe Scanner para efetuar a leitura e System.out.println() para exibir a saída. Na segunda versão você deverá usar os métodos showInputDialog() e showMessageDialog() da classe JOptionPane (presente no pacote javax.swing). Resposta/Solução: Vamos primeiro à resolução do exercício usando a classe Scanner para efetuar a leitura e System.out.println() para exibir a saída:
public static void main(String[] args){
// não se esqueça de adicionar um import para a classe Scanner
// import java.util.Scanner;
// vamos criar um objeto da classe Scanner
Scanner entrada = new Scanner(System.in);
// vamos solicitar ao usuário que informe seu nome
System.out.print("Informe seu nome: ");
// vamos ler o nome informado
String nome = entrada.nextLine();
// agora vamos exibir a mensagem de boas-vindas
System.out.println("Seja bem-vinda(a), " + nome);
}
Agora veja a resolução usando os métodos showInputDialog() e showMessageDialog() da classe JOptionPane:
public static void main(String[] args){
// não se esqueça de adicionar um import para a classe JOptionPane
// import javax.swing.JOptionPane;
// vamos solicitar ao usuário que informe seu nome
String nome = JOptionPane.showInputDialog(null, "Informe seu nome");
// agora vamos exibir a mensagem de boas-vindas
JOptionPane.showMessageDialog(null, "Seja bem-vinda(a), " + nome);
}
|
Mais Desafios de Programação e 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 |





