![]() |
|
|
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) ::: HashMap |
Java Collections - Como usar a classe HashMap da linguagem JavaQuantidade de visualizações: 37505 vezes |
|
A classe HashMap, do pacote java.util, é uma das principais implementações da interface Map. Além de fornecer todas as operações opcionais de um map, esta classe permite a inserção de chaves e valores com o valor null. Em realidade, a classe HashMap é bem similar à classe Hashtable, com a diferença que HashMap não é sincronizada (tenha cuidado ao usuá-la em ambiente de múltiplas threads) e permite valores e chaves null. Veja sua posição na hierarquia de classes Java:
java.lang.Object
java.util.AbstractMap<K,V>
java.util.HashMap<K,V>
O uso principal da classe HashMap é quando queremos associar chaves e valores e, posteriormente, recuperar valores baseados em suas chaves. Veja um exemplo no qual temos cidades e habitantes:
package arquivodecodigos;
import java.util.*;
public class Estudos{
@SuppressWarnings("unchecked")
public static void main(String[] args){
// cria uma nova instância de HashMap
HashMap cidadesHabitantes = new HashMap();
// vamos adicionar algumas chaves e seus valores
cidadesHabitantes.put("Goiânia", new Integer(4334598));
cidadesHabitantes.put("São Paulo", new Integer(49282768));
cidadesHabitantes.put("Brasília", new Integer(96736887));
// vamos obter uma view dos mapeamentos
Set set = cidadesHabitantes.entrySet();
// obtemos um iterador
Iterator i = set.iterator();
// e finalmente exibimos todas as chaves e seus valores
while(i.hasNext()){
Map.Entry entrada = (Map.Entry)i.next();
System.out.println("Chave: " + entrada.getKey() +
" - Valor: " + entrada.getValue());
}
System.exit(0);
}
}
Ao executar este código nós teremos o seguinte resultado: Chave: Goiânia - Valor: 4334598 Chave: Brasília - Valor: 96736887 Chave: São Paulo - Valor: 49282768 Uma observação importante em relação à classe HashMap é que esta não honra nenhuma ordem específica de seus elementos, ou seja, a ordem dos pares chave-valor em uma operação de exibição pode ser bem diferente da ordem de inserção. |
C ::: Desafios e Lista de Exercícios Resolvidos ::: Engenharia Civil - Cálculo Estrutural |
Exercícios Resolvidos de C - Como calcular as reações de apoio, momento de flexão máxima e forças cortantes em uma viga bi-apoiada com carga distribuída retangular usando CQuantidade de visualizações: 1762 vezes |
|
Pergunta/Tarefa: Veja a seguinte figura: ![]() Nesta imagem temos uma viga bi apoiada com uma carga q distribuída de forma retangular a uma distância l. Para fins didáticos, vamos considerar que a carga q será em kN/m e a distância l será em metros. O apoio A é de segundo gênero e o apoio B é de primeiro gênero. Escreva um programa C que solicita ao usuário que informe o valor da carga q e a distância l entre os apoios A e B. Em seguida mostre os valores das reações nos apoios A e B, o momento de flexão máxima da viga e o momento de flexão para uma determinada distância (que o usuário informará) a partir do apoio A. Mostre também as forças cortantes nos apoios A e B. Lembre-se de que, para uma carga distribuída de forma retangular, o diagrama de momento fletor é uma parábola, enquanto o diagrama de cortante é uma reta (com o valor zero para a força cortante no meio da viga). Sua saída deve ser parecida com: Valor da carga em kN/m: 10 Distância em metros: 13 A reação no apoio A é: 65.000000 kN A reação no apoio B é: 65.000000 kN O momento fletor máximo é: 211.250000 kN Informe uma distância a partir do apoio A: 4 O momento fletor na distância informada é: 180.000000 kN A força cortante no apoio A é: 65.000000 kN A força cortante no apoio B é: -65.000000 kN Veja a resolução comentada deste exercício usando C:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main(int argc, char *argv[]) {
// variáveis usadas na resolução do problema
float carga, distancia, reacao_a, reacao_b;
float flexao_maxima, distancia_temp, flexao_distancia;
float cortante_a, cortante_b;
// vamos pedir para o usuário informar o valor da carga
printf("Valor da carga em kN/m: ");
scanf("%f", &carga);
// vamos pedir para o usuário informar a distância entre os apoios
printf("Distancia em metros: ");
scanf("%f", &distancia);
// vamos calcular a reação no apoio A
reacao_a = (1.0 / 2.0) * carga * distancia;
// vamos calcular a reação no apoio B
reacao_b = reacao_a;
// vamos calcular o momento fletor máximo
flexao_maxima = (1.0 / 8.0) * carga * pow(distancia, 2.0);
// e mostramos o resultado
printf("\nA reacao no apoio A e: %f kN", reacao_a);
printf("\nA reacao no apoio B e: %f kN", reacao_b);
printf("\nO momento fletor maximo e: %f kN", flexao_maxima);
// vamos pedir para o usuário informar uma distância a
// partir do apoio A
printf("\n\nInforme uma distancia a partir do apoio A: ");
scanf("%f", &distancia_temp);
// vamos mostrar o momento fletor na distância informada
if (distancia_temp > distancia) {
printf("\nDistancia invalida.\n");
}
else {
flexao_distancia = (1.0 / 2.0) * carga * distancia_temp *
(distancia - distancia_temp);
printf("O momento fletor na distancia informada e: %f kN",
flexao_distancia);
}
// vamos mostrar a força cortante no apoio A
cortante_a = (1.0 / 2.0) * carga * distancia;
printf("\n\nA forca cortante no apoio A e: %f kN", cortante_a);
// vamos mostrar a força cortante no apoio B
cortante_b = cortante_a * -1;
printf("\nA forca cortante no apoio B e: %f kN\n\n", cortante_b);
printf("\n\n");
system("PAUSE");
return 0;
}
|
C# ::: Dicas & Truques ::: Data e Hora |
Como exibir horas no formato curto em C# usando o sinalizador {0:t} da função Format() da classe StringQuantidade de visualizações: 1 vezes |
|
Nesta dica mostrarei como podemos usar o sinalizador {0:t} da função Format() da classe String da linguagem C# para mostrar a hora atual no formato curto, ou seja, horas e minutos. Veja o exemplo:
using System;
namespace Estudos {
class Program {
static void Main(string[] args) {
// hora atual no formato curto
DateTime agora = DateTime.Now;
// mostramos o resultado
System.Console.WriteLine("Agora são: {0:t}", agora);
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# nós teremos o seguinte resultado: Agora são: 09:37 Veja que aqui eu formatei as horas diretamente na saída do programa. Se quisermos, por exemplo, guardar a formatação em uma variável, podemos fazê-lo da seguinte forma:
using System;
namespace Estudos {
class Program {
static void Main(string[] args) {
// hora atual no formato curto
DateTime agora = DateTime.Now;
// guardamos o resultado em uma variável
string horasStr = String.Format("{0:t}", agora);
// mostramos o resultado
System.Console.WriteLine("Agora são: " + horasStr);
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
|
Java ::: Pacote java.awt.event ::: KeyEvent |
Java Swing - Como detectar as teclas Insert ou Delete usando o método getKeyCode() da classe KeyEvent do JavaQuantidade de visualizações: 3580 vezes |
|
Em algumas situações nós precisamos detectar o pressionamento das teclas Insert ou Delete. Para isso podemos usar o método getKeyCode() da classe KeyEvent e testar se o código equivale a uma das constantes KeyEvent.VK_INSERT (Ins) ou KeyEvent.VK_DELETE (Del). Veja um trecho de código no qual testamos se alguma destas duas teclas foi pressionada:
package estudos;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
public class Janela extends JFrame implements KeyListener{
public Janela(){
super("Eventos do Teclado");
Container c = getContentPane();
FlowLayout layout = new FlowLayout(FlowLayout.LEFT);
c.setLayout(layout);
// vamos adicionar o objeto listener
addKeyListener(this);
setSize(350, 250);
setVisible(true);
}
@Override
public void keyPressed(KeyEvent e){
// a tecla Insert foi pressionada?
if(e.getKeyCode() == KeyEvent.VK_INSERT){
JOptionPane.showMessageDialog(null, "A tecla Insert foi pressionada");
}
// a tecla Enter Delete pressionada?
else if(e.getKeyCode() == KeyEvent.VK_DELETE){
JOptionPane.showMessageDialog(null, "A tecla Delete foi pressionada");
}
else{
JOptionPane.showMessageDialog(null, "Outra tecla foi pressionada");
}
}
@Override
public void keyReleased(KeyEvent e){
// sem implementação
}
@Override
public void keyTyped(KeyEvent e){
// sem implementação
}
public static void main(String args[]){
Janela j = new Janela();
j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
É importante observar que as teclas Insert e Delete podem ser detectadas somente nos eventos keyPressed e keyReleased. |
Python ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Python para iniciantes - Como usar a instrução break em PythonQuantidade de visualizações: 11031 vezes |
|
A instrução break da linguagem Python é usada para interromper a execução de um laço for ou while. Observe que se o laço possuir um bloco else, este não será executado se a instrução break for usada. Veja um exemplo de um laço for que é interrompido se o valor da variável de controle for 5:
# função principal do programa
def main():
for i in range(0, 21):
print(i)
if i == 5:
break
if __name__== "__main__":
main()
Ao executarmos este código nós teremos o seguinte resultado: 0 1 2 3 4 5 |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
|
C++ - C++ Windows API GUI - Como criar sua primeira aplicação de interface gráfica usando C++ e WinAPI JavaScript - Como somar dias a uma data em JavaScript usando uma função personalizada adicionar_dias() que retorna um objeto Date |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





