![]() |
|
|
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 AutoCAD Civil 3D |
||
|
||
|
|
||
C++ ::: STL (Standard Template Library) ::: Vector C++ |
Como obter um iterador para o primeiro ou último elemento de um vector C++ usando as funções begin() e end()Quantidade de visualizações: 8287 vezes |
|
Há situações em nossos códigos que precisamos obter uma referência ao primeiro ou último elemento de um vector e usar tal referência para acessar os demais elementos. Isso pode ser feito com um iterador. Assim, para obter um iterador para o primeiro elemento nós podemos usar a função begin(), que retorna duas formas de iteradores: iterator begin(); const_iterator begin() const; A primeira versão retorna um iterador que pode ser usado, não somente para acessar os elementos do vector, como também para alterar seus valores. Veja no trecho de código abaixo como obtemos um iterador para o primeiro elemento e o incrementamos de forma a atingir o último elemento:
#include <iostream>
#include <vector>
using namespace std;
int main(int argc, char *argv[]){
// um vector vazio que conterá inteiros
vector<int> valores;
// vamos inserir três elementos
valores.push_back(54);
valores.push_back(13);
valores.push_back(87);
// vamos obter um iterador para o primeiro elemento
vector<int>::iterator it = valores.begin();
// vamos mostrar o valor atual do iterador
cout << "Valor atual do iterador: " << *it << endl;
// vamos adiantar o iterador duas vezes
it += 2;
// vamos mostrar o novo valor do iterador
cout << "Novo valor do iterador: " << *it << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
É importante lembrar que podemos alterar os valores dos elementos de um vector por meio do iterador. Veja:
#include <iostream>
#include <vector>
using namespace std;
int main(int argc, char *argv[]){
// um vector vazio que conterá inteiros
vector<int> valores;
// vamos inserir três elementos
valores.push_back(54);
valores.push_back(13);
valores.push_back(87);
// vamos obter um iterador para o primeiro elemento
vector<int>::iterator it = valores.begin();
// vamos atribuir um novo valor ao primeiro elemento
*it = 128;
// vamos mostrar o novo valor do primeiro elemento
cout << "Novo valor do primeiro elemento: " << valores.front() << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Mas, e se quiséssemos evitar tal alteração? Bastaria usar um iterador constante: // vamos obter um iterador constante para o primeiro elemento vector<int>::const_iterator it = valores.begin(); Faça esta alteração no código anterior e verá que o programa não mais compila. A mensagem de erro de compilação indica: assignment of read-only location Vamos agora obter um iterador para o último elemento. Para isso podemos usar a função end(). Veja: iterator end(); const_iterator end() const; É importante notar que end() retorna um iterador para o elemento APÓS o último elemento do vector. Veja no trecho de código abaixo como obtemos um iterador para o último elemento:
#include <iostream>
#include <vector>
using namespace std;
int main(int argc, char *argv[]){
// um vector vazio que conterá inteiros
vector<int> valores;
// vamos inserir três elementos
valores.push_back(54);
valores.push_back(13);
valores.push_back(87);
// vamos obter um iterador para o último elemento
vector<int>::iterator it = valores.end();
// como end() retorna um iterador para um elemento
// APÓS o último elemento do vector, temos que voltar
// um elemento para acessarmos de fato o último elemento
it--;
// vamos mostrar o valor atual do iterador
cout << "Valor do iterador: " << *it << endl;
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
Um dos usos mais comuns dos iteradores begin() e end() é quando queremos percorrer todos os elementos de um vector. Veja:
#include <iostream>
#include <vector>
using namespace std;
int main(int argc, char *argv[]){
// um vector vazio que conterá inteiros
vector<int> valores;
// vamos inserir três elementos
valores.push_back(54);
valores.push_back(13);
valores.push_back(87);
// vamos percorrer o vector e exibir os elementos
vector<int>::iterator it;
for(it = valores.begin(); it < valores.end(); it++){
cout << *it << endl;
}
system("PAUSE"); // pausa o programa
return EXIT_SUCCESS;
}
|
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Java Básico |
Exercícios Resolvidos de Java - Escreva um programa Java que pede para o usuário informar o salário de uma pessoa, o valor de um empréstimo e a quantidade de prestaçõesQuantidade de visualizações: 12892 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que pede para o usuário informar o salário de uma pessoa, o valor de um empréstimo e a quantidade de prestações. Se o valor da prestação for maior que 20% do salário seu código deverá mostrar a mensagem "Empréstimo não pode ser concedido". Se o empréstimo puder ser concedido escreva "Empréstimo pode ser concedido". Sua saída deve ser parecida com: Informe o salário: 1350 Informe o valor do empréstimo: 6000 Informe a quantidade de parcelas: 12 O valor das parcelas do empréstimo é: 500.0 Empréstimo não pode ser concedido 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 salario, emprestimo, valor_parcela;
int quant_prestacoes;
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos ler os dados
System.out.print("Informe o salário: ");
salario = Double.parseDouble(entrada.nextLine());
System.out.print("Informe o valor do empréstimo: ");
emprestimo = Double.parseDouble(entrada.nextLine());
System.out.print("Informe a quantidade de parcelas: ");
quant_prestacoes = Integer.parseInt(entrada.nextLine());
// vamos calcular e mostrar o valor da parcela do empréstimo
valor_parcela = emprestimo / quant_prestacoes;
System.out.println("O valor das parcelas do empréstimo é: " +
valor_parcela);
// o empréstimo pode ser concedido?
if (valor_parcela > (salario * (20.0 / 100.0))) {
System.out.println("Empréstimo não pode ser concedido");
}
else{
System.out.println("Empréstimo pode ser concedido");
}
System.out.println("\n");
}
}
|
C# ::: Dicas & Truques ::: Strings e Caracteres |
Como testar a ocorrência de uma substring em uma string do C# usando o método Contains() da classe StringQuantidade de visualizações: 6 vezes |
|
Nesta dica mostrarei como usar o método Contains() da classe String do C# para verificar se uma letra ou palavra está contida em uma frase ou texto. Se a substring for encontrada, a função Contains() retorna um valor true (verdadeiro), e false (falso) em caso contrário. Veja o exemplo completo:
using System;
namespace Estudos {
class Program {
static void Main(string[] args) {
string frase = "Gosto de programar em C#";
// a frase contém a palavra "programar"?
if (frase.Contains("programar")) {
Console.WriteLine("A palavra pesquisada está contida na string");
}
// a palavra pesquisada não foi encontrada na string
else {
Console.WriteLine("A palavra pesquisada NÃO está contida na string");
}
Console.WriteLine("\n\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
Ao executar este código C# nós teremos o seguinte resultado: A palavra pesquisada está contida na string Tenha em mente que o método Contains() da classe String do C# diferencia letras maiúsculas de letras minúsculas. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Programação Orientada a Objetos |
POO - Programação Orientada a Objetos - Exercícios Resolvidos de Java - Ex. 2 - A classe Circulo (construtores, métodos, getters e setters e encapsulamento)Quantidade de visualizações: 20636 vezes |
|
Pergunta/Tarefa: Escreva uma classe Circulo para representar círculos. Esta classe deverá conter os seguintes atributos e métodos: a) Uma variável privada do tipo double chamada raio que guardará o valor do raio atual do circulo. b) Métodos get() e set() públicos que permitem definir e acessar o valor da variável raio. c) Um construtor que recebe o valor do raio como argumento. d) Um método getArea() que calcula e retorna a área do círculo. e) Um método getCircunferencia() que calcula e retorna a circunferência do círculo. f) Um método aumentarRaio() que recebe um valor double e o usa como percentual para aumentar o raio do círculo. Crie uma classe contendo um método main() para testar a funcionalidade da classe Circulo. Eis um exemplo de entrada e saída: ![]() Resposta/Solução: Veja a resolução comentada deste exercício usando Java console: Circulo.java:
package estudos;
public class Circulo{
private double raio; // guarda o raio atual do círculo
// construtor que recebe o valor do raio como argumento
public Circulo(double raio){
this.raio = raio;
}
// permite obter o raio do círculo
public double getRaio(){
return raio;
}
// permite definir o raio do círculo
public void setRaio(double raio){
this.raio = raio;
}
// obtém a área do círculo
public double getArea(){
double area = Math.PI * Math.pow(this.raio, 2);
return area;
}
// obtém a circunferência do círculo
public double getCircunferencia(){
double circunferencia = (2 * Math.PI) * this.raio;
return circunferencia;
}
// permite aumentar o raio de acordo com uma porcentagem fornecida
public void aumentarRaio(double porcentagem){
this.raio = this.raio + (porcentagem / 100.0) * this.raio;
}
}
Veja agora o método main() que nos permite testar a funcionalidade da classe Circulo:
package estudos;
import java.util.Scanner;
public class Estudos {
public static void main(String[] args) {
// vamos criar uma instância da classe Circulo
Scanner entrada = new Scanner(System.in);
System.out.print("Informe o raio do círculo: ");
double raio = Double.parseDouble(entrada.nextLine());
Circulo c = new Circulo(raio);
// vamos mostrar o valor do raio atual
System.out.println("Raio: " + c.getRaio());
// vamos mostrar a área
System.out.println("Área: " + c.getArea() + " metros quadrados");
// vamos mostrar a circunferência
System.out.println("Circunferência: " + c.getCircunferencia() + " metros");
// vamos aumentar o raio do circulo em uma determinada porcentagem
System.out.print("\nInforme o percentual de aumento do raio: ");
double percentual = Double.parseDouble(entrada.nextLine());
c.aumentarRaio(percentual);
// vamos mostrar o valor do raio atual
System.out.println("Raio: " + c.getRaio());
// vamos mostrar a área
System.out.println("Área: " + c.getArea() + " metros quadrados");
// vamos mostrar a circunferência
System.out.println("Circunferência: " + c.getCircunferencia() + " metros");
}
}
|
Java ::: Java Swing - JTable e classes relacionadas ::: JTable |
Como inserir novas colunas em uma JTable do Java Swing em tempo de execução usando o método addColumn() da classe DefaultTableModelQuantidade de visualizações: 8 vezes |
|
Em algumas situações nós precisamos adicionar uma ou mais colunas em uma JTable do Java Swing. Entre as formas possíveis, uma é por meio do uso da função addColumn() da classe DefaultTableModel. Este método recebe, no exemplo abaixo, uma String contendo o nome da coluna a ser criada. Veja o código completo para a aplicação Java Swing:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.table.*;
public class Estudos extends JFrame{
public Estudos(){
super("Exemplo de uma tabela simples");
final DefaultTableModel modelo = new
DefaultTableModel();
// constrói a tabela
JTable tabela = new JTable(modelo);
// Cria duas colunas
modelo.addColumn("Nome");
modelo.addColumn("Idade");
JButton btn = new JButton("Adicionar Colunas");
btn.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent e){
String titulo = JOptionPane.showInputDialog(
null, "Informe o título da nova coluna:");
// Adiciona uma coluna
modelo.addColumn(titulo);
}
}
);
tabela.setPreferredScrollableViewportSize(
new Dimension(350, 50));
Container c = getContentPane();
c.setLayout(new FlowLayout());
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);
}
}
|
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
|
GNU Octave - Como calcular a derivada de uma função usando a função diff() do GNU Octave - Regra do Tombo (ou Regra da Potência) R - R para Matemática e Estatística - Como calcular desvio padrão usando a função sd() da linguagem R |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




