![]() |
|
|
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 ::: Classes e Componentes ::: JTable |
Java Swing - Como obter a quantidade de colunas em uma JTable usando o método getColumnCount()Quantidade de visualizações: 3 vezes |
|
Nesta dica mostrarei como é possível contar as colunas de uma JTable com uma chamada ao método getColumnCount() da interface TableModel, que representa os dados contidos na tabela. Note que, neste exemplo, eu escrevi toda a aplicação Java Swing "na unha", ou seja, sem nenhum editor visual. Esta técnica é boa para entender todas as partes que compoem uma aplicação Java Swing. Veja o código completo:
package arquivodecodigos;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Estudos extends JFrame{
public Estudos(){
super("Exemplo de uma tabela simples");
// colunas da tabela
String[] colunas = {"Cidade", "Estado", "Habitantes"};
// conteúdo da tabela
Object[][] conteudo = {
{"Goiânia", "GO", "43.023.432"},
{"São Paulo", "SP", "5.343.234"},
{"Rio de Janeiro", "RJ", "6.434.212"},
{"Jussara", "GO", "87.454"},
{"Barra do Garças", "MT", "64.344"}
};
// constrói a tabela
final JTable tabela = new JTable(conteudo, colunas);
tabela.setPreferredScrollableViewportSize(
new Dimension(350, 50));
Container c = getContentPane();
c.setLayout(new FlowLayout());
JButton btn = new JButton("Número de Colunas");
btn.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
JOptionPane.showMessageDialog(null,
"Quantidade de colunas: " +
tabela.getModel().getColumnCount(),
"JTable", JOptionPane.INFORMATION_MESSAGE);
}
}
);
JScrollPane scrollPane = new JScrollPane(tabela);
c.add(scrollPane);
c.add(btn);
setSize(400, 300);
setVisible(true);
}
public static void main(String args[]){
Estudos app = new Estudos();
app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
Ao executar este exemplo e clicar no botão nós veremos uma mensagem JOptionPane.showMessageDialog() com o seguinte texto: Quantidade de colunas: 3 |
C++ ::: Dicas & Truques ::: Strings e Caracteres |
Como inverter uma string em C++ usando as funções begin(), end() e reverse()Quantidade de visualizações: 13871 vezes |
|
Em várias situações nós precisamos inverter a ordem dos caracteres de uma palavra, frase ou texto em C++. Para isso nós podemos usar uma combinação das funções begin(), end() e reverse() da biblioteca padrão do C++. Veja o código completo para o exemplo:
#include <string>
#include <iostream>
#include <algorithm>
using namespace std;
// função principal do programa C++
int main(int argc, char *argv[]){
// vamos declarar um objeto da classe string
string frase = "Gosto de programar em C++";
// vamos mostrar a string original
cout << "String original: " << frase << endl;
// agora vamos usar a função reverse() para inverter o
// conteúdo da string
reverse(frase.begin(), frase.end());
// e mostramos o resultado
cout << "String invertida: " << frase << endl;;
cout << "\n" << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Ao executarmos este código C++ nós teremos o seguinte resultado: String original: Gosto de programar em C++ String invertida: ++C me ramargorp ed otsoG |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: Strings e Caracteres |
Exercícios Resolvidos de Python - Como retornar o código ASCII associado a um caractere em Python - Ler um caractere e retornar o código ASCII correspondenteQuantidade de visualizações: 960 vezes |
|
Pergunta/Tarefa: Escreva um programa Python que pede para o usuário informar um caractere (letra ou número) e mostre o código ASCII correspondente. Sua saída deverá ser parecida com: Informe um caractere: A Você informou o caractere: A O código ASCII correspondente é: 65 Veja a resolução comentada deste exercício em Python:
# função principal do programa
def main():
# vamos pedir para o usuário informar uma letra, símbolo ou pontuação
caractere = input("Informe um caractere: ")
# agora vamos obter o código ASCII correspondente
codigo = ord(caractere)
# e mostramos o resultado
print("Você informou o caractere: {0}".format(caractere))
print("O código ASCII correspondente é: {0}".format(codigo))
if __name__== "__main__":
main()
O Código Padrão Americano para o Intercâmbio de Informação (do inglês American Standard Code for Information Interchange - ASCII, pronunciado [áski]) é um sistema de representação de letras, algarismos e sinais de pontuação e de controle, através de um sinal codificado em forma de código binário (cadeias de bits formada por vários 0 e 1), desenvolvido a partir de 1960, que representa um conjunto de 128 sinais: 95 sinais gráficos (letras do alfabeto latino, algarismos arábicos, sinais de pontuação e sinais matemáticos) e 33 sinais de controle, utilizando 7 bits para representar todos os seus símbolos. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
Exercício Resolvido de Java - A classe Produto (construtores, métodos, getters e setters e encapsulamento)Quantidade de visualizações: 17917 vezes |
|
Pergunta/Tarefa: Crie uma classe Produto para representar um produto do mundo real. Sua classe deverá conter os seguintes atributos e métodos: 1) Um campo de dados privado do tipo String chamado nome, que representará o nome do produto. 2) Um campo de dados privado do tipo double chamado precoCusto, que guardará o preço de custo do produto. 3) Um campo de dados privado do tipo double chamado precoVenda, que guardará o preço de venda do produto. 4) Um campo de dados privado do tipo double chamado margemLucro, que guardará a margem de lucro do produto. 5) Métodos públicos get() e set() para os atributos acima. Modifique o método setPrecoVenda() para que o preço de venda não seja inferior ao preço de compra. Caso isso aconteça, exiba uma mensagem alertando o usuário. 6) Crie um método chamado calcularMargemLucro() que calculará a margem de lucro do produto. 7) Crie um método chamado getMargemLucroPorcentagem() que retornará a margem de lucro como percentual. Para finalizar, no método main() da classe de teste, crie um novo objeto da classe Produto, peça para o usuário informar os preços de custo e de venda e exiba a margem de lucro em moeda e em percentual. Sua saída deverá ser algo parecido com o mostrado na imagem abaixo: Informe o preço de custo: 120 Informe o preço de venda: 195 Preço de custo: 120.0 Preço de Venda: 195.0 Margem de Lucro: 75.0 Margem de Lucro Percentual (%): 62.5 Veja a resolução comentada deste exercício usando Java console: Produto.java:
package estudos;
public class Produto{
private String nome; // nome do produto
private double precoCusto; // preço de custo do produto
private double precoVenda; // preço de venda do produto
private double margemLucro; // margem de lucro do produto
// obtém a margem de lucro
public double getMargemLucro(){
return margemLucro;
}
// define a margem de lucro
public void setMargemLucro(double margemLucro){
this.margemLucro = margemLucro;
}
// obtém o nome do produto
public String getNome(){
return nome;
}
// define o nome do produto
public void setNome(String nome){
this.nome = nome;
}
// obtém o preço de custo
public double getPrecoCusto(){
return precoCusto;
}
// define o preço de custo
public void setPrecoCusto(double precoCusto){
this.precoCusto = precoCusto;
}
// obtém o preço de venda
public double getPrecoVenda(){
return precoVenda;
}
// define o preço de venda
public void setPrecoVenda(double precoVenda){
// o preço de venda não pode ser menor que o preço de custo
if(precoVenda < this.precoCusto){
System.out.println("O preço de venda não pode ser inferior ao de custo");
}
else{
this.precoVenda = precoVenda;
}
}
// calcula a margem de lucro
public void calcularMargemLucro(){
this.margemLucro = this.precoVenda - this.precoCusto;
}
// retorna a margem de lucro em porcentagem
public double getMargemLucroPorcentagem(){
return (this.margemLucro / this.precoCusto) * 100;
}
}
Veja agora o método main() que nos permite testar a funcionalidade da classe Produto:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
// vamos criar um novo objeto da classe Produto
Produto p = new Produto();
// vamos ler o preço de custo
System.out.print("Informe o preço de custo: ");
p.setPrecoCusto(Double.parseDouble(entrada.nextLine()));
// vamos ler o preço de venda
System.out.print("Informe o preço de venda: ");
p.setPrecoVenda(Double.parseDouble(entrada.nextLine()));
// vamos calcular a margem de lucro
p.calcularMargemLucro();
// vamos exibir os resultados
System.out.println("Preço de custo: " + p.getPrecoCusto());
System.out.println("Preço de Venda: " + p.getPrecoVenda());
System.out.println("Margem de Lucro: " + p.getMargemLucro());
System.out.println("Margem de Lucro Percentual (%): " +
p.getMargemLucroPorcentagem());
}
}
|
C++ ::: Dicas & Truques ::: Arquivos e Diretórios |
Como excluir um diretório em C++ usando a função rmdir()Quantidade de visualizações: 8954 vezes |
Em algumas situações nossos códigos C++ precisam excluir diretórios. Isso pode ser feito com o auxílio da função _rmdir() ou rmdir(), disponível no header direct.h (trazido da linguagem C). Veja a assinatura desta função:int _rmdir(const char *pathname); a) ENOTEMPTY - Directory not empty - O diretório não está vazio e portanto não pode ser excluído; b) ENOENT - No such file or directory - O caminho do diretório é inválido; c) EACCESS - Acesso negado - Algum outro programa está usando este diretório e mantém controle sobre o mesmo. Veja um trecho de código C++ no qual excluímos um diretório:
#include <iostream>
#include <direct.h>
using namespace std;
int main(int argc, char *argv[]){
// vamos excluir este diretório
char diretorio[] = "C:\\Dev-Cpp\\estudos";
// vamos testar se houve erro na exclusão do diretório
if(rmdir(diretorio) == -1){
cout << "Erro: " << strerror(errno) << endl;
}
else{
cout << "Diretório excluído com sucesso" << endl;
}
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
É possível usar a versão Unicode de _rmdir(), ou rmdir(). O método _wrmdir(), também presente em direct.h é útil quando precisamos internacionalizar nossas aplicações. Veja o exemplo:
#include <iostream>
#include <direct.h>
using namespace std;
int main(int argc, char *argv[]){
// vamos excluir este diretório
wchar_t diretorio[] = L"C:\\Dev-Cpp\\estudos";
// vamos testar se houve erro na exclusão do diretório
if(_wrmdir(diretorio) == -1){
cout << "Erro: " << strerror(errno) << endl;
}
else{
cout << "Diretório excluído com sucesso" << endl;
}
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
|
JavaScript - Como retornar apenas os três primeiros elementos de um array em JavaScript usando a função slice() do objeto Array Java - Como calcular juros simples e composto - Calculando juros simples e montante na linguagem Java |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




