![]() |
|
|
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 ::: Dicas & Truques ::: MIDI Musical Instrument Digital Interface, Mapeamento e sequenciamento MIDI, Entrada e saída MIDI |
Java para músicos - Como escrever um MIDI Player em Java (código bem simples e fácil de entender)Quantidade de visualizações: 14458 vezes |
|
Nesta dica apresento uma aplicação completa para um MIDI Player em Java. Trata-se de uma aplicação console que você pode estudar e implementar a mesma idéia em Java Swing ou JavaFX. Para executar o código abaixo, você só precisa definir o caminho e nome de um arquivo MIDI (extensão .mid). Veja o código completo e divirta-se:
package arquivodecodigos;
import javax.sound.midi.*;
import java.io.*;
public class Estudos{
public static void main(String args[]) {
// nome do arquivo MIDI
String arquivo = "amazing_grace.mid";
if(!arquivo.endsWith(".mid")) {
System.out.println("Este não parece ser um arquivo MIDI válido.");
System.exit(1);
}
File midiFile = new File(arquivo);
if(!midiFile.exists() || midiFile.isDirectory() ||
!midiFile.canRead()) {
System.out.println("Não foi possível acessar o arquivo indicado.");
System.exit(1);
}
try{
Sequencer seq = MidiSystem.getSequencer();
seq.setSequence(MidiSystem.getSequence(midiFile));
seq.open();
seq.start();
while(true){
if(seq.isRunning()){
try{
Thread.sleep(1000);
}
catch(InterruptedException ignore){
break;
}
}
else{
break;
}
}
seq.stop();
seq.close();
}
catch(MidiUnavailableException mue){
System.out.println("Dispositivo de MIDI indisponível");
}
catch(InvalidMidiDataException imde){
System.out.println("Dados MIDI Inválidos");
}
catch(IOException ioe){
System.out.println("Erro de I/O");
}
}
}
|
Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes) |
Como retornar a quantidade de linhas e colunas de um vetor ou matriz usando a propriedade shape do objeto ndarray da biblioteca NumPy do PythonQuantidade de visualizações: 3471 vezes |
Podemos usar a propriedade shape do objeto ndarray da biblioteca NumPy para obter a quantidade de linhas e colunas em um vetor ou matriz. Para um vetor, o retorno será a quantidade de colunas seguida por uma vírgula. Para matrizes, a propriedade retornará a quantidade de linhas e colunas. Veja:
# importamos a bibliteca NumPy
import numpy as np
def main():
# vamos criar um vetor com 8 elementos
vetor = np.array([5, 1, 10, 7, 2, 3, 9, 4])
# vamos mostrar a quantidade de linhas e colunas nesse vetor
print("Linhas e colunas no vetor:", vetor.shape)
# agora vamos criar uma matriz de 2 linhas e 4 colunas
matriz = np.array([[8, 51, 2, 35], [90, 42, 0, 71]])
# vamos mostrar a quantidade de linhas e colunas nessa matriz
print("Linhas e colunas na matriz:", matriz.shape)
if __name__== "__main__":
main()
Ao executarmos este código nós teremos o seguinte resultado: Linhas e colunas no vetor: (8,) Linhas e colunas na matriz: (2, 4) Além de usar a propriedade shape do objeto ndarray, nós podemos também efetuar uma chamada ao método global shape() da NumPy. Veja:
# importamos a bibliteca NumPy
import numpy as np
def main():
# vamos criar um vetor com 8 elementos
vetor = np.array([5, 1, 10, 7, 2, 3, 9, 4])
# vamos mostrar a quantidade de linhas e colunas nesse vetor
print("Linhas e colunas no vetor:", np.shape(vetor))
# agora vamos criar uma matriz de 2 linhas e 4 colunas
matriz = np.array([[8, 51, 2, 35], [90, 42, 0, 71]])
# vamos mostrar a quantidade de linhas e colunas nessa matriz
print("Linhas e colunas na matriz:", np.shape(matriz))
if __name__== "__main__":
main()
Execute e veja que o resultado é o mesmo para ambos os códigos. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Valor da diária, valor médio arrecadado com e sem promoção e o lucro ou prejuízo mensal de uma promoção em um hotelQuantidade de visualizações: 15250 vezes |
|
Pergunta/Tarefa: Escreva um programa Java para resolver o seguinte problema: Um hotel com 42 apartamentos resolveu fazer promoções para os fins de semana fora da alta temporada, isto é, nos meses de abril, maio, junho, agosto, setembro, outubro e novembro. A taxa da promoção é de 22% da diária normal. A ocupação média do hotel sem promoção é de 40%. A expectativa é aumentar a taxa de ocupação para 70%. Supondo que as expectativas se confirmem, escrever um algoritmo que lê a diária normal, que calcule e escreva as seguintes informações: (a) O valor da diária no período da promoção. (b) O valor médio arrecadado sem a promoção, durante um mês. (c) O valor médio arrecadado com a promoção, durante um mês. (d) O lucro ou prejuízo mensal com a promoção. Seu código Java deverá apresentar uma saída parecida com: Informe o valor da diária normal: 120 Diária no período de promoção: 26,40 Média arrecadada sem a promoção durante um mês: 8064,00 Média arrecadada com a promoção durante um mês: 3104,64 Prejuízo mensal com a promoção: 4959,36 Veja a resolução comentada deste exercício usando Java console (lendo a entrada do usuário por meio do uso da classe Scanner):
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// vamos criar um objeto da classe Scanner
Scanner entrada = new Scanner(System.in);
// valor da diária em período normal
double valor_diaria_normal;
// valor da diária no período de promoção
double valor_diaria_promocao;
// vamos obter o valor da diária no período normal
System.out.print("Informe o valor da diária normal: ");
valor_diaria_normal = Double.parseDouble(entrada.nextLine());
// vamos obter o valor da diária no período promocional
valor_diaria_promocao = valor_diaria_normal * (22.0 / 100.0);
// vamos calcular o valor médio arrecadado sem a promoção, durante um mês
// estamos assumindo 4 finais de semana por mês
double media_arrecado_sem_promocao = (valor_diaria_normal
* (42 * (40.0 / 100.0)) * 4);
// vamos calcular o valor médio arrecadado com a promoção, durante um mês
// estamos assumindo 4 finais de semana por mês
double media_arrecado_com_promocao = (valor_diaria_promocao
* (42 * (70.0 / 100.0)) * 4);
System.out.printf("Diária no período de promoção: %.2f\n",
valor_diaria_promocao);
System.out.printf("Média arrecadada sem a promoção durante um mês: %.2f\n",
media_arrecado_sem_promocao);
System.out.printf("Média arrecadada com a promoção durante um mês: %.2f\n",
media_arrecado_com_promocao);
// houve lucro ou prejuízo?
if (media_arrecado_sem_promocao < media_arrecado_com_promocao) {
System.out.printf("Lucro mensal com a promoção: %.2f\n",
media_arrecado_com_promocao - media_arrecado_sem_promocao);
}
else {
System.out.printf("Prejuízo mensal com a promoção: %.2f\n",
media_arrecado_sem_promocao - media_arrecado_com_promocao);
}
}
}
|
JavaScript ::: Dicas & Truques ::: Validação de Formulários |
Como validar um endereço de e-mail usando expressões regulares em JavaScriptQuantidade de visualizações: 29488 vezes |
|
Nesta dica eu mostro como é possível validar um endereço de e-mail em JavaScript usando expressões regulares. Não se assuste com o tamanho da expressão regular. Ela pode ser um pouco complexa mesmo, mas é a mais completa que você vai encontrar na internet, e consegue validar praticamente todos os tipos de endereço de e-mails que o usuário poderá informar. É claro que você não pode se descuidar da validação do lado do servidor, pois há situações nas quais o usuário consegue burlar a validação somente do lado do cliente, ou seja, do lado do navegador. Veja o código JavaScript completo para o exemplo:
<html>
<head>
<title>Estudando JavaScript</title>
</head>
<body>
<form name="cadastro" onSubmit="return validar()">
Informe seu E-Mail:<br>
<input type="text" name="email">
<input type="submit" value="Enviar!">
</form>
<script language="JavaScript">
var valido;
function validar(){
var str = document.cadastro.email.value;
var filter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
if(filter.test(str)){
alert("Este endereço de e-mail é válido!");
valido = true;
}
else{
alert("Este endereço de e-mail não é válido!");
document.cadastro.email.focus();
valido = false;
}
return valido;
}
</script>
</body>
</html>
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Internet, LAN e E-Mail |
Exercícios Resolvidos de Java - Como testar se há um serviço sendo executado em uma porta de um servidor ou máquina localQuantidade de visualizações: 8019 vezes |
|
Pergunta/Tarefa: Este exercício resolvido é sobre Internet, Rede e E-Mail usando programação Java. Escreva um programa Java console ou GUI que peça ao usuário para informar um número de porta na máquina local. Em seguida, tente se conectar a esta porta e informe se há algum serviço sendo executado na porta informada. A entrada e saída do programa pode ser algo como: Informe o número da porta a ser pesquisada: 3306 Há um serviço na porta informada Informe o número da posta a ser pesquisada: 2040 Não há nenhum serviço na porta informada Resposta/Solução: Veja a resolução comentada deste exercício usando Java console:
package estudos;
import java.io.IOException;
import java.net.Socket;
import java.net.UnknownHostException;
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Socket socket; // vamos declarar um objeto da classe Socket
String host = "localhost"; // define o nome da máquina host
// vamos pedir ao usuário que informe a porta a ser pesquisada
Scanner entrada = new Scanner(System.in);
System.out.print("Informe o número da posta a ser pesquisada: ");
int porta = Integer.parseInt(entrada.nextLine());
// vamos verificar se há algum serviço na porta informada
try{
socket = new Socket(host, porta);
System.out.println("Há um serviço na porta informada");
}
catch (UnknownHostException e) { // não foi possível encontrar a máquina host
System.out.println("Não foi possível encontrar a máquina host: " + e);
}
catch (IOException e) {
System.out.println("Não há nenhum serviço na porta informada");
}
}
}
Veja que, neste exercício, podemos ter o surgimento de duas exceções: UnknownHostException (a máquina informada não pôde ser encontrada) e IOException (houve erro de entrada e/ou saída). Por esta razão, é uma boa idéia envolver o código em um bloco try...catch. |
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 |




