![]() |
|
|
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 - Estruturas de Concreto Armado |
||
|
||
|
|
||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Geometria, Trigonometria e Figuras Geométricas |
Exercícios Resolvidos de Java - Como calcular o volume e a área de um cilindro em Java - Geometria Espacial em JavaQuantidade de visualizações: 1429 vezes |
|
Pergunta/Tarefa: O Cilindro ou Cilindro Circular é um sólido geométrico alongado e arredondado que possui o mesmo diâmetro ao longo de todo o comprimento. Essa figura geométrica, que faz parte dos estudos de geometria espacial, apresenta dois círculos com raios de medidas equivalentes os quais estão situados em planos paralelos. Veja a imagem a seguir: ![]() Escreva um programa Java que pede para o usuário informar o raio e a altura de um cilindro e calcule e mostre o seu volume e sua área de superfície. Os valores informados pelo usuário deverão ser do tipo double e os resultados deverão também ser do tipo double. Para auxiliar nos cálculos, a fórmula do volume do cilindo é: \[ \text{V} = \pi \cdot r^2 \cdot \text{h} \] Já a fórmula da área do cilindro é: \[ \text{A} = \text{2} \cdot \pi \cdot r \cdot (r + h) \] Sua saída deve ser parecida com: Informe o raio do cilindro: 5 Informe a altura do cilindro: 8 O volume do cilindro é: 628.3185307179587 A área do cilindro é: 408.4070449666731 Veja a resolução comentada deste exercício usando Java:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// variáveis usadas na resolução do problema
double raio, altura, volume, area;
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos ler o raio e a altura do cilindro
System.out.print("Informe o raio do cilindro: ");
raio = Double.parseDouble(entrada.nextLine());
System.out.print("Informe a altura do cilindro: ");
altura = Double.parseDouble(entrada.nextLine());
// vamos calcular o volume do cilindro
volume = Math.PI * Math.pow(raio, 2) * altura;
// agora vamos calcular a área do cilindro
area = 2 * Math.PI * raio * (raio + altura);
// e mostramos o resultado
System.out.println("O volume do cilindro é: " + volume);
System.out.println("A área do cilindro é: " + area);
}
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Dados - Listas Ligadas |
Exercícios Resolvidos de Java - Como inserir um nó em qualquer posição de uma lista ligada em Java - Escreva um programa Java que cria uma lista dinamicamente encadeadaQuantidade de visualizações: 1072 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que cria uma lista dinamicamente encadeada (lista singularmente encadeada) e pede para o usuário inserir 5 elementos do tipo inteiro. Em seguida peça para o usuário informar um índice e um novo elemento e insira tal elemento no índice informado. Faça a validação dos índices para que ele não saia da faixa permitida. Sua saída deve ser parecida com: Inserindo 5 valores na lista Informe o 1.o valor: 8 Informe o 2.o valor: 2 Informe o 3.o valor: 4 Informe o 4.o valor: 7 Informe o 5.o valor: 3 Valores na lista: 8 -> 2 -> 4 -> 7 -> 3 -> null Inserindo um elemento no índice k Informe o índice desejado: 2 Informe o valor do nó: 9 Valores na lista: 8 -> 2 -> 9 -> 4 -> 7 -> 3 -> null Na saída podemos ver que o índice 2 corresponde ao terceiro elemento da lista ligada. Por isso o valor 4 foi empurrado para a frente para abrir espaço para o valor 9. Se o índice 0 fosse informado, o número 8 seria empurrado para a frente e o nó com valor 9 passaria a ser o início da lista ligada. Veja a resolução comentada deste exercício usando Java:
package estudos;
import java.util.Scanner;
// classe interna usada para representar um
// nó na lista ligada
class No {
int valor; // valor do nó
No proximo; // aponta para o novo nó
// construtor cheio da classe No
public No(int valor, No proximo) {
this.valor = valor;
this.proximo = proximo;
}
// construtor vazio da classe No
public No() {
this.valor = 0;
this.proximo = null;
}
}
public class Estudos {
public static void main(String args[]){
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos criar uma referência para o início da lista
No inicio = null;
// vamos inserir 5 valores inteiros na lista ligada
int valor;
System.out.println("Inserindo 5 valores na lista\n");
for (int i = 0; i < 5; i++) {
System.out.print("Informe o " + (i + 1) + ".o valor: ");
valor = Integer.parseInt(entrada.nextLine());
// vamos inserir este valor no final da lista
inicio = inserirFinal(inicio, valor);
}
// vamos exibir os valores na lista ligada
System.out.print("\nValores na lista: ");
exibirLista(inicio);
// vamos inserir um novo elemento no índice informado
System.out.println("\nInserindo um elemento no índice k\n");
System.out.print("Informe o índice desejado: ");
int indice = Integer.parseInt(entrada.nextLine());
// o índice é válido?
if ((indice < 0) || (indice > tamanhoLista(inicio) - 1)) {
System.out.println("O índice é inválido.");
}
else {
// vamos inserir o novo nó no índice indicado
System.out.print("Informe o valor do nó: ");
valor = Integer.parseInt(entrada.nextLine());
inicio = inserirIndice(inicio, indice, valor);
// vamos exibir os valores na lista ligada
System.out.print("\nValores na lista: ");
exibirLista(inicio);
}
}
// função que permite adicionar um nó em uma determinada
// posição da lista ligada
public static No inserirIndice(No inicio, int indice, int valor) {
// vamos apontar para o nó inicial
No atual = inicio;
// criamos um novo nó
No novo = criarNo(valor);
// a lista ligada ainda está vazia?
if (atual == null){
// inicio recebe o novo nó
inicio = novo;
}
else if (indice == 0) {
// o índice é igual a 0? vamos inserir
// o nó no início da lista ligada
novo.proximo = inicio;
inicio = novo;
}
else {
// vamos procurar o local adequado para inserção
// primeiro criamos um nó temporário
No temp = new No();
// apontamos o nó temporário para o início da lista
temp = inicio;
// e percorremos os nós até encontrar a posição
// de inserção
for(int i = 1; i < indice; i++) {
if (temp != null) {
// passa para o próximo nó
temp = temp.proximo;
}
}
// concluimos a inserção
novo.proximo = temp.proximo;
temp.proximo = novo;
}
// e retornamos o início da lista
return inicio;
}
// função que permite adicionar um nó no final da
// lista ligada
public static No inserirFinal(No inicio, int valor) {
// vamos apontar para o nó inicial
No atual = inicio;
// criamos um novo nó
No novo = criarNo(valor);
// a lista ligada ainda está vazia?
if (atual == null){
// inicio recebe o novo nó
inicio = novo;
}
else { // temos um ou mais nós na lista ligada
// vamos localizar o último nó
while (atual.proximo != null) {
atual = atual.proximo;
}
// encontramos o último nó. Agora vamos inserir
// o novo nó depois dele
atual.proximo = novo;
}
// e retornamos o início da lista
return inicio;
}
// função usada para construir e retornar um novo nó
public static No criarNo(int valor) {
// cria o novo nó
No no = new No(valor, null);
// retorna o nó criado
return no;
}
// função usada para percorrer a lista ligada e
// exibir os valores contidos em seus nós
public static void exibirLista(No inicio) {
// vamos apontar para o início da lista
No temp = inicio;
// a lista está vazia?
if (temp == null) {
System.out.println("A lista está vazia.");
}
else {
// esse laço se repete enquanto tempo for
// diferente de null
while (temp != null) {
// vamos mostrar o valor desse nó
System.out.print(temp.valor + " -> ");
// avança para o próximo nó
temp = temp.proximo;
}
// mostra o final da lista
System.out.println("null");
}
}
// função que retorna a quantidade de nós na lista ligada
public static int tamanhoLista(No inicio) {
int tamanho = 0;
// vamos apontar para o início da lista
No temp = inicio;
// a lista está vazia?
if (temp == null) {
return 0;
}
else {
// esse laço se repete enquanto tempo for
// diferente de null
while (temp != null) {
// vamos incrementar o tamanho
tamanho++;
// avança para o próximo nó
temp = temp.proximo;
}
}
return tamanho;
}
}
|
PHP ::: Dicas & Truques ::: Strings e Caracteres |
Como inserir um determinado número de zeros antes de um número em PHP usando a função sprintf()Quantidade de visualizações: 1 vezes |
|
Nesta dica mostrarei como podemos usar a função sprintf() da linguagem PHP para inserir uma determinada quantidade de zeros antes de um número. Por exemplo, suponhamos que temos o número 19 e queremos exibir este número na forma 000019, ou seja, preencher com zeros na frente até totalizar 6 dígitos. Assim, só precisamos chamar a função sprintf() com os sinalizadores corretos. Veja o código PHP a seguir:
<?php
$valor = 19;
$valor1 = sprintf("%02d", $valor) . "\n";
$valor2 = sprintf("%03d", $valor) . "\n";
$valor3 = sprintf("%04d", $valor);
echo "Com dois dígitos: " . $valor1;
echo "Com três dígitos: " . $valor2;
echo "Com quatro dígitos: " . $valor3;
?>
Ao executar este código PHP nós teremos o seguinte resultado: Com dois dígitos: 19 Com três dígitos: 019 Com quatro dígitos: 0019 |
C# ::: Dicas & Truques ::: Arquivos e Diretórios |
Como criar um diretório em C# usando a função Create() da classe DirectoryInfoQuantidade de visualizações: 11 vezes |
|
Nesta dica mostrarei como podemos usar o método Create() da classe DirectoryInfo do C# para criar um novo diretório. Note que informei o caminho e nome do diretório a ser criado diretamente no construtor da classe DirectoryInfo, mas você também pode pedir para o usuário informar estes dados. Veja o código completo para o exemplo:
using System;
using System.IO;
namespace Estudos {
class Principal {
static void Main(string[] args) {
// vamos criar uma nova instância da classe DirectoryInfo
DirectoryInfo dir = new
DirectoryInfo(@"C:\estudos_csharp\imagens");
// vamos tentar criar o diretório
try {
dir.Create();
Console.WriteLine("Diretório criado com sucesso.");
}
catch (Exception e) {
Console.WriteLine("Não foi possível criar o diretório: {0}", e.ToString());
}
Console.WriteLine("\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# nós teremos o seguinte resultado: Diretório criado com sucesso. |
Java ::: Dicas & Truques ::: Mouse e Teclado |
Computação Gráfica em Java - Código completo Java Swing para um programa de desenho usando eventos do mouseQuantidade de visualizações: 31912 vezes |
|
Nesta dica apresento um código completo para um programa de desenho usando os eventos os mouse, feito em Java Swing. Veja que o único evento que tivemos que implementar foi mouseDragged, que é disparado quando o usuário arrasta o mouse com o botão direito ou esquerdo pressionado. Observe também a criação de uma classe JPanel personalizada que servirá como painel de desenho. Fique atento à forma como subscrevemos o método paintComponent() na classe PainelDesenho para obtermos o objeto Graphics que nos permitirá desenhar na superfície do JPanel. O resultado é exibido na imagem abaixo: ![]() E aqui está o código completo para o exemplo:
package arquivodecodigos;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Estudos extends JFrame{
public Estudos(){
super("Eventos do Mouse e Teclado");
Container c = getContentPane();
PainelDesenho painel = new PainelDesenho();
c.add(painel, BorderLayout.CENTER);
c.add(new JLabel("Arraste o mouse para desenhar..." ),
BorderLayout.SOUTH );
setSize(350, 250);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
class PainelDesenho extends JPanel{
private int quantPontos = 0;
private Point pontos[] = new Point[10000];
public PainelDesenho(){
this.setBackground(Color.WHITE);
this.addMouseMotionListener(
new MouseMotionAdapter(){
public void mouseDragged(MouseEvent e){
if(quantPontos < pontos.length){
pontos[quantPontos] = e.getPoint();
quantPontos++;
repaint();
}
}
}
);
}
@Override
public void paintComponent(Graphics g){
super.paintComponent(g);
for(int i = 0 ; i < quantPontos; i++)
g.fillOval(pontos[i].x, pontos[i].y, 4, 4);
}
}
|
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 |






