![]() |
|
|
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 |
||
|
||
|
|
||
C# ::: Dicas & Truques ::: Arquivos e Diretórios |
Apostila C# para iniciantes - Como listar todos os arquivos de um diretório usando C#Quantidade de visualizações: 1 vezes |
|
Nesta dica eu mostro como é possível usar o método GetFiles() da classe Directory para listar todos os arquivos de um determinado diretório. Note como usei o caractere "*" para informar o padrão de arquivos a serem exibidos. Veja o código completo:
using System;
using System.IO;
namespace Estudos{
class Program{
static void Main(string[] args) {
string diretorio = @"C:\estudos_dart";
string padrao = "*";
if (args.Length > 0) {
diretorio = args[0];
}
if (args.Length > 1) {
padrao = args[1];
}
string[] arquivos = Directory.GetFiles(diretorio,
padrao);
foreach (string arquivo in arquivos) {
Console.WriteLine(arquivo);
}
}
}
}
Ao executar este código nós teremos uma saída parecida com: C:\estudos_dart\condicional_if_else.dart C:\estudos_dart\DICA.txt C:\estudos_dart\laco_do_while.dart C:\estudos_dart\laco_for.dart C:\estudos_dart\laco_while.dart C:\estudos_dart\primeira.dart |
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: 8241 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;
}
|
Ruby ::: Dicas & Truques ::: Strings e Caracteres |
Como acessar os caracteres de uma string Ruby individualmente usando a notação de vetor []Quantidade de visualizações: 7772 vezes |
Muitas vezes precisamos acessar os caracteres de uma string individualmente. Isso pode ser feito com o auxílio da notação []. Para isso só precisamos fornecer o índice do caractere que queremos acessar e o valor 1, para indicar que queremos acessar apenas um caractere de cada vez. Veja: nome = "Osmar" # vamos acessar os caracteres individualmente for indice in (0..nome.length) letra = nome[indice, 1] puts letra end Ao executar este código Ruby nós teremos o seguinte resultado: O s m a r |
VisuAlg ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de VisuAlg - A concessionária de veículos "CARANGO VELHO" está vendendo os seus veículos com descontos. Faça um algoritmo VisuAlgQuantidade de visualizações: 603 vezes |
|
Pergunta/Tarefa: A concessionária de veículos "CARANGO VELHO" está vendendo os seus veículos com descontos. Faça um algoritmo VisuAlg que calcule e exiba o valor do desconto e o valor a ser pago pelo cliente de vários carros. O desconto deverá ser calculado de acordo com o ano do veículo. Até o ano 2000 o desconto é 12%, e acima de 2000 o desconto é de 7%. Seu código deverá solicitar o valor do carro e o seu ano e aplicar o desconto correspondente. Além disso o sistema deverá perguntar se deseja continuar calculando descontos até que a resposta seja: "(N) Não". Informar o total de carros com ano até 2000 e o total geral a ser pago pelo cliente. Sua saída deve ser parecida com: Informe o valor do carro sem desconto: 25000 Informe o ano do carro: 2010 Desconto concedido: 1750 Valor do carro com desconto: 23250 Deseja adicionar mais carros? [S, N]: S Informe o valor do carro sem desconto: 30500 Informe o ano do carro: 1985 Desconto concedido: 3660 Valor do carro com desconto: 26840 Deseja adicionar mais carros? [S, N]: S Informe o valor do carro sem desconto: 16800 Informe o ano do carro: 1990 Desconto concedido: 2016 Valor do carro com desconto: 14784 Deseja adicionar mais carros? [S, N]: N Total de carros com ano até 2000: 2 Total geral a pagar: 64874 Veja a resolução comentada deste exercício usando VisuAlg:
algoritmo "Cálculo de desconto nos preços de vários veículos"
var
// variáveis usadas na resolução do problema
valor_carro, valor_desconto, valor_carro_desconto: real
total_geral: real
ano: inteiro
total_carros_ano_2000: inteiro
resposta: caractere
inicio
// vamos inicializar os valores de algumas variáveis
total_geral <- 0
total_carros_ano_2000 <- 0
// repete até que o usuário informe o valor "N"
repita
// vamos ler o valor do carro sem desconto
escreva("Informe o valor do carro sem desconto: ")
leia(valor_carro)
// vamos ler o ano do carro
escreva("Informe o ano do carro: ")
leia(ano)
// o ano é menor ou igual a 2000
se ano <= 2000 entao
valor_desconto <- valor_carro * (12.0 / 100.0)
// vamos somar mais este carro
total_carros_ano_2000 <- total_carros_ano_2000 + 1
senao
valor_desconto <- valor_carro * (7.0 / 100.0)
fimse
// calculamos o valor do carro com o desconto
valor_carro_desconto <- valor_carro - valor_desconto
escreval("Desconto concedido: ", valor_desconto)
escreval("Valor do carro com desconto: ", valor_carro_desconto)
// somamos mais este valor ao total geral
total_geral <- total_geral + valor_carro_desconto
// perguntamos se o usuário deseja adicionar mais carros
escreva("Deseja adicionar mais carros? [S, N]: ")
leia(resposta)
// adiciona uma quebra de linha
escreval()
ate resposta = "N"
// mostramos os resultados
escreval("Total de carros com ano até 2000: ", total_carros_ano_2000)
escreval("Total geral a pagar: ", total_geral)
fimalgoritmo
|
Java ::: Coleções (Collections) ::: ArrayList |
Como obter o índice da primeira ocorrência de um elemento no ArrayList do Java usando o método indexOf()Quantidade de visualizações: 12844 vezes |
|
Este exemplo mostra como usar o método indexOf() para obter o índice da primeira ocorrência de um item na ArrayList. Se o ítem não for encontrado, o valor retornado é -1. Veja o código completo para a dica:
package arquivodecodigos;
import java.util.ArrayList;
public class Estudos{
public static void main(String[] args){
// cria uma ArrayList que conterá strings
ArrayList<String> nomes = new ArrayList<String>();
// adiciona itens na lista
nomes.add("Carlos");
nomes.add("Maria");
nomes.add("Fernanda");
nomes.add("Osmar");
nomes.add("Maria");
// obtém o índice da primeira ocorrência do
// nome "Maria"
int indice = nomes.indexOf("Maria");
System.out.println("O índice do nome pesquisado é: "
+ indice);
System.exit(0);
}
}
Ao executar este código nós teremos o seguinte resultado: O índice do nome pesquisado é: 1 |
Desafios, Exercícios e Algoritmos Resolvidos de Java |
Veja mais Dicas e truques de Java |
Dicas e truques de outras linguagens |
|
Python - Como testar se um ponto está dentro de um círculo em Python - Desenvolvimento de Games com Python |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |



