![]() |
|
|
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 |
||
|
||
|
|
||
C++ ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular desvio padrão em C++ - C++ para Matemática e EstatísticaQuantidade de visualizações: 1319 vezes |
|
Em Matemática e Estatística, o Desvio padrão (em inglês: Standard Deviation) é uma medida de dispersão, ou seja, é uma medida que indica o quanto um conjunto de dados é uniforme. Quando o desvio padrão é baixo, isso quer dizer que os dados do conjunto estão mais próximos da média. Como calcular o desvio padrão de um conjunto de dados? Vamos começar analisando a fórmula mais difundida na matemática e na estatística: \[\sigma = \sqrt{ \frac{\sum_{i=1}^N (x_i -\mu)^2}{N}}\] Onde: a) __$\sigma__$ é o desvio; b) __$x_i__$ é um valor qualquer no conjunto de dados na posição i; c) __$\mu__$ é a média aritmética dos valores do conjunto de dados; d) N é a quantidade de valores no conjunto. O somatório dentro da raiz quadrada nos diz que devemos somar todos os elementos do conjunto, desde a posição 1 até a posição n, subtrair cada valor pela média do conjunto e elevar ao quadrado. Obtida a soma, nós a dividimos pelo tamanho do conjunto. Veja o código C++ completo que obtém o desvio padrão a partir de um conjunto de dados contendo quatro valores:
#include <iostream>
#include <math.h>
using namespace std;
// função principal do programa
int main(int argc, char *argv[]){
// conjunto dos dados
double conjunto[] = {10, 30, 90, 30};
double soma = 0.0; // soma dos elementos
double desvio_padrao = 0.0; // desvio padrão
int tam = 4; // tamanho dos dados
double media;
// vamos somar todos os elementos
for(int i = 0; i < tam; i++){
soma = soma + conjunto[i];
}
// agora obtemos a média do conjunto de dados
media = soma / tam;
// e finalmente obtemos o desvio padrão
for(int i = 0; i < tam; i++){
desvio_padrao = desvio_padrao + pow(conjunto[i] - media, 2);
}
// mostramos o resultado
cout << "Desvio Padrão Populacional: " << sqrt(desvio_padrao / tam);
cout << "\nDesvio Padrão Amostral: " << sqrt(desvio_padrao / (tam - 1));
cout << "\n" << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executar este código C++ nós teremos o seguinte resultado: Desvio Padrão Populacional: 30.0 Desvio Padrão Amostral: 34.64101615137755 Veja que, para calcular o Desvio Padrão Populacional, nós dividimos o somatório pela quantidade de elementos no conjunto, enquanto, para calcular o Desvio Padrão Amostral, nós dividimos o somatório pela quantidade de elementos - 1 (cuidado com a divisão por zero no caso de um conjunto com apenas um elemento). |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
Exercício Resolvido de Java - Crie uma classe Agenda que pode armazenar 10 pessoas e que seja capaz de realizar as seguintes operaçõesQuantidade de visualizações: 6583 vezes |
|
Exercícios Resolvidos de Java - Crie uma classe Agenda que pode armazenar 10 pessoas e que seja capaz de realizar as seguintes operações Pergunta/Tarefa: Crie uma classe Agenda que pode armazenar 10 pessoas e que seja capaz de realizar as seguintes operações: void armazenaPessoa(String nome, int idade, float altura); void removePessoa(String nome); int buscaPessoa(String nome); // informa em que posição da agenda está a pessoa void imprimeAgenda(); // imprime os dados de todas as pessoas da agenda void imprimePessoa(int index); // imprime os dados da pessoa que está na posição "i" da agenda. O código deverá ser desenvolvido em Java console (modo texto) e usar um menu switch() para as operações. Sua saída deverá ser parecida com: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: Código para a classe Pessoa (Pessoa.java):
package arquivodecodigos;
public class Pessoa {
private String nome;
private int idade;
private double altura;
// construtor cheio
public Pessoa(String nome, int idade, double altura) {
this.nome = nome;
this.idade = idade;
this.altura = altura;
}
// construtor vazio
public Pessoa() {
}
// método que imprime todos os dados da pessoa
public void imprimirDados(){
System.out.println("Nome: " + nome + "\nIdade: " +
idade + "\nAltura: " + altura);
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public int getIdade() {
return idade;
}
public void setIdade(int idade) {
this.idade = idade;
}
public double getAltura() {
return altura;
}
public void setAltura(double altura) {
this.altura = altura;
}
}
Código para a classe Agenda (Agenda.java):
package arquivodecodigos;
public class Agenda {
// vetor que guardará as pessoas
private Pessoa pessoas[];
// construtor da classe Agenda
public Agenda(int quantidade){
pessoas = new Pessoa[quantidade];
}
public void armazenaPessoa(String nome, int idade, double altura){
// ainda temos posições disponíveis na agenda?
boolean cadastrado = false;
for(int i = 0; i < pessoas.length; i++){
if(pessoas[i] == null){
// encontramos uma posição
Pessoa p = new Pessoa(nome, idade, altura); // criamos uma nova pessoa
// guardamos ela no vetor
pessoas[i] = p;
// e avisamos que o cadastro foi efetuado com sucesso
cadastrado = true;
break; // sai do laço
}
}
if(cadastrado){
System.out.println("\nCadastro efetuado com sucesso");
}
else{
System.out.println("\nNão foi possível cadastrar. Agenda cheia");
}
}
// método que permite pesquisar e excluir uma pessoa
public void removePessoa(String nome){
// vamos verificar se a exclusão foi efetuada com sucesso
boolean excluido = false;
for(int i = 0; i < pessoas.length; i++){
if(pessoas[i] != null){
// esta é a pessoa que estamos procurando?
if(pessoas[i].getNome().equals(nome)){
pessoas[i] = null; // posição disponível novamente
excluido = true;
break; // sai do laço
}
}
}
if(excluido){
System.out.println("\nPessoa removida com sucesso");
}
else{
System.out.println("\nNão foi possível remover. Pessoa não encontrada.");
}
}
// informa em que posição da agenda está a pessoa
public int buscaPessoa(String nome){
int resultado = -1;
// vamos verificar se a pessoa existe na agenda
for(int i = 0; i < pessoas.length; i++){
if(pessoas[i] != null){
// esta é a pessoa que estamos procurando?
if(pessoas[i].getNome().equals(nome)){
resultado = i;
break; // sai do laço
}
}
}
return resultado;
}
// imprime os dados de todas as pessoas da agenda
public void imprimeAgenda(){
// vamos percorrer o vetor de pessoas e imprimir cada uma
for(int i = 0; i < pessoas.length; i++){
if(pessoas[i] != null){
Pessoa p = pessoas[i];
System.out.println("\nNome: " + p.getNome());
System.out.println("Idade: " + p.getIdade());
System.out.println("Altura: " + p.getAltura());
}
}
}
// imprime os dados da pessoa que está na posição "i" da agenda
public void imprimePessoa(int index){
// este índice é válido?
if((index < 0) || (index > (pessoas.length - 1))){
System.out.println("\nÍndice inválido");
}
else{
Pessoa p = pessoas[index];
if(p == null){
System.out.println("\nNão existe pessoa nesse índice ainda.");
}
else{
System.out.println("\nNome: " + p.getNome());
System.out.println("Idade: " + p.getIdade());
System.out.println("Altura: " + p.getAltura());
}
}
}
}
Código para a classe Principal (Principal.java):
package arquivodecodigos;
import java.util.Scanner;
public class Principal {
// para fazer a leitura da entrada do usuário
static Scanner entrada = new Scanner(System.in);
public static void main(String[] args) {
// cria uma nova Agenda
Agenda agenda = new Agenda(10);
String nome; // nome da pessoa
int idade; // idade da pessoa
double altura; // altura da pessoa
// cria o menu de opções
while(true){
System.out.println("\n1. Nova Pessoa");
System.out.println("2. Excluir Pessoa");
System.out.println("3. Buscar Pessoa");
System.out.println("4. Imprimir Agenda");
System.out.println("5. Imprimir Pessoa (Índice)");
System.out.println("6. Sair");
System.out.print("Sua opção: ");
int opcao = Integer.parseInt(entrada.nextLine());
switch(opcao){
case 1:
System.out.print("\nInforme o nome: ");
nome = entrada.nextLine();
System.out.print("Informe a idade: ");
idade = Integer.parseInt(entrada.nextLine());
System.out.print("Informe a altura (use ponto em vez de vírgula): ");
altura = Double.parseDouble(entrada.nextLine());
agenda.armazenaPessoa(nome, idade, altura);
break;
case 2:
System.out.print("\nInforme o nome a ser removido: ");
nome = entrada.nextLine();
agenda.removePessoa(nome);
break;
case 3:
System.out.print("\nInforme o nome a ser pesquisado: ");
nome = entrada.nextLine();
int indice = agenda.buscaPessoa(nome);
if(indice < 0){
System.out.println("\nA pessoa não foi encontrada");
}
else{
System.out.println("\nA pessoa foi encontrada no índice: "
+ indice);
}
break;
case 4:
agenda.imprimeAgenda();
break;
case 5:
System.out.print("\nInforme o índice desejado: ");
int index = Integer.parseInt(entrada.nextLine());
agenda.imprimePessoa(index);
break;
case 6:
System.exit(0);
default:
System.out.println("\nOpção inválida\n");
break;
}
}
}
}
|
Java ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular juros simples e composto - Calculando juros simples e montante na linguagem JavaQuantidade de visualizações: 14847 vezes |
|
O regime de juros será simples quando o percentual de juros incidir apenas sobre o valor principal. Sobre os juros gerados a cada período não incidirão novos juros. Valor Principal, ou simplesmente principal, é o valor inicial emprestado ou aplicado, antes de somarmos os juros. Transformando em fórmula temos: J = P . i . n Onde: J = juros P = principal (capital) i = taxa de juros n = número de períodos Imaginemos uma dívida de R$ 2.000,00 que deverá ser paga com juros de 5% a.m. pelo regime de juros simples e o prazo para o pagamento é de 2 meses. O cálculo em Java pode ser feito assim:
public class Estudos{
public static void main(String args[]){
double principal = 2000.00;
double taxa = 0.08;
int meses = 2;
double juros = principal * taxa * meses;
System.out.println("O total de juros a ser pago é: "
+ juros);
System.exit(0);
}
}
O montante da dívida pode ser obtido das seguintes formas: a) Montante = Principal + Juros b) Montante = Principal + (Principal x Taxa de juros x Número de períodos) M = P . (1 + (i . n)) Veja o código:
public class Estudos{
public static void main(String args[]){
double principal = 2000.00;
double taxa = 0.08;
int meses = 2;
double juros = principal * taxa * meses;
double montante = principal * (1 + (taxa * meses));
System.out.println("O total de juros a ser pago é: "
+ juros);
System.out.println("O montante a ser pago é: "
+ montante);
System.exit(0);
}
}
|
Java ::: Dicas & Truques ::: Data e Hora |
Como usar a classe GregorianCalendar do Java em suas aplicaçõesQuantidade de visualizações: 13954 vezes |
[Baseado na documentação Java] - A classe GregorianCalendar (do pacote java.util) é uma classe concreta derivada de Calendar que fornece o sistema de calendário padrão usado em praticamente todos os países. Veja sua posição na hierarquia de classes Java:
java.lang.Object
java.util.Calendar
java.util.GregorianCalendar
As interfaces implementadas por esta classe são Serializable, Cloneable e Comparable<Calendar>.[br][br] A classe GregorianCalendar é um calendário híbrido que suporta tanto o sistema de calendário juliano (Julian) quanto o gregoriano (Gregorian), com suporte para uma única descontinuidade, a qual corresponde por padrão à data gregoriana quando o calendário gregoriano foi instituido (15 de outubro de 1582 em alguns países, mais tarde em outros). Esta data pode ser alterada por meio de uma chamada ao método setGregorianChange(). Veja um trecho de código no qual criamos uma instância da classe GregorianCalendar usando a data e hora atual, o fuso horário (time zone) e localização (locale) padrão:
import java.util.*;
public class Estudos{
public static void main(String args[]){
Calendar agora = new GregorianCalendar();
System.out.println(agora.toString());
}
}
Observe como instanciamos um objeto da classe GregorianCalendar e o tratamos como um objeto da classe Calendar. Esta forma de referenciar um objeto da classe derivada a partir de uma interface ou superclasse é muito comum em Java. |
JavaFX ::: Pacote javafx.scene.control ::: TextField (Classe TextField) |
Como usar caixas de texto TextField em suas aplicações JavaFXQuantidade de visualizações: 2320 vezes |
|
Um objeto da classe TextField, do pacote javafx.scene.control, e disponível no JavaFX desde a versão 2.0, é usado para obter dados dos usuários de nossas aplicações. Este controle visual possibilita a digitação de dados (texto) no formato de uma linha apenas. Veja a posição desta classe na hierarquia de classes do JavaFX:
java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.control.Control
javafx.scene.control.TextInputControl
javafx.scene.control.TextField
A classe TextField implementa as Styleable, EventTarget e Skinnable e sua sub-classe direta é PasswordField. Veja o código completo para uma aplicação JavaFX que possui um Label, um TextField e um Button dispostos em um gerenciador de layout HBox:
package estudosjavafx;
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;
public class EstudosJavaFX extends Application {
public static void main(String[] args){
launch(args);
}
@Override
public void start(Stage primaryStage){
// vamos criar um rótulo, um botão e uma
// caixa de texto
Label label = new Label("Seu nome:");
// vamos deixar o texto do Label em negrito
label.setStyle("-fx-font-weight: bold;");
// vamos aumentar o tamanho da fonte
label.setStyle("-fx-font-size: 150%;");
TextField nomeTxt = new TextField();
Button btn = new Button("Enviar");
// agora criamos um laytou HBox e colocamos
// os componentes nele
HBox hBox = new HBox();
hBox.getChildren().add(label);
hBox.getChildren().add(nomeTxt);
hBox.getChildren().add(btn);
// vamos definir o espaço interno do HBox
hBox.setPadding(new Insets(10, 10, 10, 10));
// vamos definir o espaço entre os
// componentes do HBox
hBox.setSpacing(10);
// criamos a cena e fornecemos o layout a ela
// e definimos a largura e altura da cena
Scene scene = new Scene(hBox, 400, 300);
// adicionamos a cena ao palco principal
primaryStage.setScene(scene);
// e mostramos o palco
primaryStage.show();
}
}
Ao executar este exemplo JavaFX nós teremos o seguinte resultado: ![]() |
Veja mais Dicas e truques de JavaFX |
Dicas e truques de outras linguagens |
|
AutoCAD Civil 3D - Como criar pontos COGO no AutoCAD Civil 3D |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






