![]() |
|
|
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 Hidrostática |
||
|
||
|
|
||
Java ::: Coleções (Collections) ::: Set (Conjunto) |
Como usar objetos da interface Set para representar a união de dois ou mais conjuntos na linguagem JavaQuantidade de visualizações: 5097 vezes |
|
Na teoria dos conjuntos, a união de dois ou mais conjuntos é o conjunto dos elementos que pertencem a pelo menos um destes conjuntos. Assim, seja A = {2, 5, 8, 19, 30} e B = {2, 3, 1, 30}. A união desses dois conjuntos é C = {1, 2, 3, 5, 8, 19, 30}. Na programação Java podemos representar a união de dois conjuntos usando objetos da interface Set e qualquer uma de suas implementações. Para este exemplo vou usar a classe TreeSet, que permite a ordenação dos elementos. Veja o código:
package estudos;
import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;
public class Estudos{
public static void main(String[] args) {
// primeiro conjunto
Set<Integer> conjuntoA = new TreeSet<>();
conjuntoA.add(2);
conjuntoA.add(5);
conjuntoA.add(8);
conjuntoA.add(19);
conjuntoA.add(30);
// segundo conjunto
Set<Integer> conjuntoB = new TreeSet<>();
conjuntoB.add(2);
conjuntoB.add(3);
conjuntoB.add(1);
conjuntoB.add(30);
// vamos obter a união dos dois conjuntos
Set<Integer> conjuntoC = uniao(conjuntoA, conjuntoB);
// vamos exibir os elementos no conjunto C
Iterator iterator = conjuntoC.iterator();
while(iterator.hasNext()){
System.out.println(iterator.next());
}
}
// método genérico que permite obter a união de dois conjuntos
public static <T> Set<T> uniao(Set<T> conjA, Set<T> conjB){
// Primeiro o conjunto C recebe todos os elementos do conjunto A
Set<T> conjC = new TreeSet<>(conjA);
// Em seguida o conjunto C recebe todos os elementos do conjunto B.
// Como um Set não aceita elementos duplicados, apenas os elementos
// de B que ainda não estejam no conjunto C serão aceitos
conjC.addAll(conjB);
return conjC;
}
}
Ao executarmos este código teremos o seguinte resultado: 1 2 3 5 8 19 30 |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções |
Métodos - Exercícios Resolvidos de Java - Ex. 4 - Um método estático que recebe dois números inteiros e retorna o maior delesQuantidade de visualizações: 5039 vezes |
|
Pergunta/Tarefa: Escreva um método Java que recebe dois números inteiros e retorna o maior deles. Este método deverá ter a seguinte assinatura:
public static int maior(int a, int b){
// sua implementação aqui
}
Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
// vamos solicitar que o usuário informe dois numeros inteiros
System.out.print("Informe o primeiro número: ");
int num1 = Integer.parseInt(entrada.nextLine());
System.out.print("Informe o segundo número: ");
int num2 = Integer.parseInt(entrada.nextLine());
// obtém o número maior
int numeroMaior = maior(num1, num2);
System.out.println("O numero maior é: " + numeroMaior);
System.out.println("\n");
}
// um método estático que recebe dois números inteiros e retorna o maior deles
public static int maior(int a, int b){
if(a > b){
return a;
}
else{
return b;
}
}
}
|
C# ::: Dicas & Truques ::: Programação Orientada a Objetos |
Como criar sua primeira classe em C# - Programação Orientada a Objetos em C#Quantidade de visualizações: 35373 vezes |
|
O estudo da programação orientada a objeto em C# passa obrigatoriamente pela criação de sua primeira classe. E esta não é uma tarefa fácil para os iniciantes. Esta dica o guiará passo-a-passo pelas caminhos iniciais. Esta dica assume que você já sabe criar uma aplicação console ou Windows Forms no Visual C# 2005 ou 2008. Sendo assim, crie uma nova aplicação console e vamos criar o esqueleto da classe. Em Visual C# 2005 ou 2008, a forma mais comum de adicionar uma classe ao seu projeto é clicando com o botão direito no namespace do projeto (o primeiro filho do solution explorer) e escolhendo a opção Add -> Class. Em seguida dê o nome "Pessoa.cs" para a classe e clique o botão Add. Imediatamente o código inicial para a classe será exibido, contendo o namespace e alguns using padrões. Agora faça sua classe Pessoa parecida com o código abaixo (não altere nada em relação ao namespace):
class Pessoa{
// varíáveis privadas para o nome
// e idade da pessoa
private string nome;
private int idade;
// método que permite definir o nome
// da pessoa
public void setNome(string nome){
this.nome = nome;
}
// método que permite definir a idade
// da pessoa
public void setIdade(int idade){
this.idade = idade;
}
// método que permite obter o nome
// da pessoa
public string getNome(){
return this.nome;
}
// método que permite obter a idade
// da pessoa
public int getIdade(){
return this.idade;
}
}
Hora de testar a classe. Volte à classe principal da aplicação (aquela que contém o método Main) e faça as seguintes alterações:
static void Main(string[] args){
// Cria uma instância da classe Pessoa
Pessoa p = new Pessoa();
// Define um nome e idade para a pessoa
p.setNome("Osmar J. Silva");
p.setIdade(37);
// Obtém o nome e idade da pessoa
string nome = p.getNome();
int idade = p.getIdade();
Console.WriteLine("Nome: " + nome + " - Idade: " +
idade);
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
Funcionou? Agora tente refazer todo o processo, desta vez usando Windows Forms. |
Python ::: Python para Engenharia ::: Engenharia Civil - Concreto, Concreto Armado e Concretos Especiais |
Como calcular a armadura mínima de tração de uma viga de concreto armado usando Python - Python para Engenharia CivilQuantidade de visualizações: 636 vezes |
|
De acordo com a ABNT NBR 6118 (Projeto de estruturas de concreto armado), a armadura de tração, em elementos estruturais armados ou protendidos deve ser determinada pelo dimensionamento da seção a um determinado momento fletor mínimo, respeitada a taxa mínima absoluta ρmin de 0,15%. Dessa forma, a área de aço mínima levando em consideração a taxa mínima absoluta ρmin de 0,15% de armadura longitudinal para as vigas de concreto armado usando concreto com FCK até 30 Mpa é calculada pela seguinte fórmula: \[A_\text{s,min} = \frac{0,15}{100} \cdot A_\text{c}\] Onde: As,min é a área da armadura mínima de aço em cm2; Ac é a área de concreto em cm2, ou seja, a largura bw da viga multiplicada por sua altura h (ambas em cm). Veja agora o código Python completo que lê a largura, a altura da viga, o FCK do concreto (no código eu tratei FCK até 50 Mpa) e mostra a área mínima da armadura de aço e sugestões das barras a serem usadas:
# vamos importar o módulo Math
import math
# função usada para calcular e retornar a quantidade
# de barras de aço de acordo com a área de aço (considerando
# aço CA-50)
def quant_barras(area_aco):
# barras de 6.3mm (o mínimo aceitável pela NBR 6118)
quantidade_6_3 = math.ceil(area_aco / 0.31)
quantidade_8 = math.ceil(area_aco / 0.5) # barras de 8mm
quantidade_10 = math.ceil(area_aco / 0.785) # barras de 10mm
quantidade_12_5 = math.ceil(area_aco / 1.22) # barras de 12.5mm
# mostra as sugestões de quantidade de barras
if (quantidade_6_3) > 1:
print("{0} barras de 6.3 mm".format(quantidade_6_3))
if (quantidade_8) > 1:
print("{0} barras de 8 mm".format(quantidade_8))
if (quantidade_10) > 1:
print("{0} barras de 10 mm".format(quantidade_10))
if (quantidade_12_5) > 1:
print("{0} barras de 12.5 mm".format(quantidade_12_5))
# função principal do programa Python
def main():
# vamos pedir para o usuário informar a altura da viga
altura = float(input("Informe a altura h da viga em cm: "))
# vamos pedir para o usuário informar a largura da viga
largura = float(input("Informe a largura bw da viga em cm: "))
# vamos pedir para o usuário informar o FCK do concreto
fck = float(input("Informe o FCK do concreto em Mpa: "))
# vamos calcular o pmin de acordo com o FCK informado
if (fck <= 30):
pmin = 0.15
elif (fck == 35):
pmin = 0.164
elif (fck == 40):
pmin = 0.179
elif (fck == 45):
pmin = 0.194
else:
pmin = 0.208
# já temos o pmin, vamos calcular a área mínima de aço
area_concreto = largura * altura
as_min = (pmin / 100.0) * area_concreto
# vamos mostrar os resultados
print("\nA área da armadura mínima longitudinal é: {0} cm2".format(
round(as_min, 5)))
# mostra as sugestões de barras
print("\nSugestões de barras:\n-------------------------")
quant_barras(as_min)
if __name__ == "__main__":
main()
Ao executarmos este código Python nós teremos o seguinte resultado: Informe a altura h da viga em cm: 50 Informe a largura bw da viga em cm: 20 Informe o FCK do concreto em Mpa: 30 A área da armadura mínima é: 1.5 cm2 Sugestões de barras: ------------------------- 5 barras de 6.3 mm 3 barras de 8 mm 2 barras de 10 mm 2 barras de 12.5 mm |
Java ::: Coleções (Collections) ::: Stack |
Como criar uma pilha em Java usando a classe Stack - Java CollectionsQuantidade de visualizações: 13786 vezes |
|
A classe Stack é usada quando precisamos de uma estrutura de dados LIFO (last-in-first-out). Neste tipo de estrutura temos uma pilha de objetos, na qual o último elemento inserido na pilha é sempre o primeiro a sair. A classe Stack extende a classe Vector com a adição de cinco operações próprias da estrutura de dados pilha. As dicas nesta seção mostram a você como usar cada uma destas operações. Antes, veja a posição da classe Stack na hierarquia de classes Java:
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractList<E>
java.util.Vector<E>
java.util.Stack<E>
Esta classe implementa as interfaces: Serializable, Cloneable, Iterable<E>, Collection<E>, List<E> e RandomAccess. Veja um trecho de código que cria uma Stack de inteiros, insere três elementos e usa o método pop() para remover o elemento no topo da pilha:
import java.util.*;
public class Estudos{
public static void main(String args[]){
// Cria uma Stack
Stack<Integer> pilha = new Stack<Integer>();
// adiciona três elementos na pilha
pilha.push(34);
pilha.push(12);
pilha.push(83);
// remove o elemento no topo da pilha
int topo = pilha.pop();
System.out.println("Elemento removido do " +
"topo da pilha: " + topo);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Elemento removido do topo da pilha: 83 |
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 |





