![]() |
|
|
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. |
||
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Arrays e Matrix (Vetores e Matrizes) |
Exercícios Resolvidos de Java - Escreva um programa Java para mover todos os zeros para o final do vetor, sem alterar a ordem dos elementos já presentes no arrayQuantidade de visualizações: 955 vezes |
|
Pergunta/Tarefa: Dado o seguinte vetor de inteiros:
// vamos declarar e construir um vetor de 8 inteiros
int valores[] = {0, 3, 0, 5, 7, 4, 0, 9};
Sua saída deverá ser parecida com: Vetor na ordem original: 0 3 0 5 7 4 0 9 Vetor com os zeros deslocados para o final: 3 5 7 4 9 0 0 0 Veja a resolução comentada deste exercício usando Java:
package exercicio;
public class Exercicio {
public static void main(String[] args) {
// vamos declarar e construir um vetor de 8 inteiros
int valores[] = {0, 3, 0, 5, 7, 4, 0, 9};
// vamos mostrar o vetor na ordem original
System.out.println("Vetor na ordem original:\n");
for(int i = 0; i < valores.length; i++){
System.out.print(valores[i] + " ");
}
// vamos inicializar j como 0 para que ele aponte para
// o primeiro elemento do vetor
int j = 0;
// agora o laço for percorre todos os elementos do vetor,
// incrementanto a variável i e deixando o j em 0
for(int i = 0; i < valores.length; i++){
// encontramos um valor que não é 0
if(valores[i] != 0){
// fazemos a troca entre os elementos nos índices
// i e j
int temp = valores[i];
valores[i] = valores[j];
valores[j] = temp;
// e avançamos o j para o elemento seguinte
j++;
}
}
// agora mostramos o resultado
System.out.println("\n\nVetor com os zeros deslocados para o final:\n");
for(int i = 0; i < valores.length; i++){
System.out.print(valores[i] + " ");
}
System.out.println();
}
}
Não se esqueça: A resolução do exercício deve ser feita sem a criação de um vetor, array ou lista adicional, e os elementos diferentes de zero devem permanecer na mesma ordem que eles estavam antes. |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Dados - Listas Ligadas |
Exercícios Resolvidos de Java - Como inserir um nó em qualquer posição de uma lista ligada em Java - Escreva um programa Java que cria uma lista dinamicamente encadeadaQuantidade de visualizações: 1111 vezes |
|
Pergunta/Tarefa: Escreva um programa Java que cria uma lista dinamicamente encadeada (lista singularmente encadeada) e pede para o usuário inserir 5 elementos do tipo inteiro. Em seguida peça para o usuário informar um índice e um novo elemento e insira tal elemento no índice informado. Faça a validação dos índices para que ele não saia da faixa permitida. Sua saída deve ser parecida com: Inserindo 5 valores na lista Informe o 1.o valor: 8 Informe o 2.o valor: 2 Informe o 3.o valor: 4 Informe o 4.o valor: 7 Informe o 5.o valor: 3 Valores na lista: 8 -> 2 -> 4 -> 7 -> 3 -> null Inserindo um elemento no índice k Informe o índice desejado: 2 Informe o valor do nó: 9 Valores na lista: 8 -> 2 -> 9 -> 4 -> 7 -> 3 -> null Na saída podemos ver que o índice 2 corresponde ao terceiro elemento da lista ligada. Por isso o valor 4 foi empurrado para a frente para abrir espaço para o valor 9. Se o índice 0 fosse informado, o número 8 seria empurrado para a frente e o nó com valor 9 passaria a ser o início da lista ligada. Veja a resolução comentada deste exercício usando Java:
package estudos;
import java.util.Scanner;
// classe interna usada para representar um
// nó na lista ligada
class No {
int valor; // valor do nó
No proximo; // aponta para o novo nó
// construtor cheio da classe No
public No(int valor, No proximo) {
this.valor = valor;
this.proximo = proximo;
}
// construtor vazio da classe No
public No() {
this.valor = 0;
this.proximo = null;
}
}
public class Estudos {
public static void main(String args[]){
// para ler a entrada do usuário
Scanner entrada = new Scanner(System.in);
// vamos criar uma referência para o início da lista
No inicio = null;
// vamos inserir 5 valores inteiros na lista ligada
int valor;
System.out.println("Inserindo 5 valores na lista\n");
for (int i = 0; i < 5; i++) {
System.out.print("Informe o " + (i + 1) + ".o valor: ");
valor = Integer.parseInt(entrada.nextLine());
// vamos inserir este valor no final da lista
inicio = inserirFinal(inicio, valor);
}
// vamos exibir os valores na lista ligada
System.out.print("\nValores na lista: ");
exibirLista(inicio);
// vamos inserir um novo elemento no índice informado
System.out.println("\nInserindo um elemento no índice k\n");
System.out.print("Informe o índice desejado: ");
int indice = Integer.parseInt(entrada.nextLine());
// o índice é válido?
if ((indice < 0) || (indice > tamanhoLista(inicio) - 1)) {
System.out.println("O índice é inválido.");
}
else {
// vamos inserir o novo nó no índice indicado
System.out.print("Informe o valor do nó: ");
valor = Integer.parseInt(entrada.nextLine());
inicio = inserirIndice(inicio, indice, valor);
// vamos exibir os valores na lista ligada
System.out.print("\nValores na lista: ");
exibirLista(inicio);
}
}
// função que permite adicionar um nó em uma determinada
// posição da lista ligada
public static No inserirIndice(No inicio, int indice, int valor) {
// vamos apontar para o nó inicial
No atual = inicio;
// criamos um novo nó
No novo = criarNo(valor);
// a lista ligada ainda está vazia?
if (atual == null){
// inicio recebe o novo nó
inicio = novo;
}
else if (indice == 0) {
// o índice é igual a 0? vamos inserir
// o nó no início da lista ligada
novo.proximo = inicio;
inicio = novo;
}
else {
// vamos procurar o local adequado para inserção
// primeiro criamos um nó temporário
No temp = new No();
// apontamos o nó temporário para o início da lista
temp = inicio;
// e percorremos os nós até encontrar a posição
// de inserção
for(int i = 1; i < indice; i++) {
if (temp != null) {
// passa para o próximo nó
temp = temp.proximo;
}
}
// concluimos a inserção
novo.proximo = temp.proximo;
temp.proximo = novo;
}
// e retornamos o início da lista
return inicio;
}
// função que permite adicionar um nó no final da
// lista ligada
public static No inserirFinal(No inicio, int valor) {
// vamos apontar para o nó inicial
No atual = inicio;
// criamos um novo nó
No novo = criarNo(valor);
// a lista ligada ainda está vazia?
if (atual == null){
// inicio recebe o novo nó
inicio = novo;
}
else { // temos um ou mais nós na lista ligada
// vamos localizar o último nó
while (atual.proximo != null) {
atual = atual.proximo;
}
// encontramos o último nó. Agora vamos inserir
// o novo nó depois dele
atual.proximo = novo;
}
// e retornamos o início da lista
return inicio;
}
// função usada para construir e retornar um novo nó
public static No criarNo(int valor) {
// cria o novo nó
No no = new No(valor, null);
// retorna o nó criado
return no;
}
// função usada para percorrer a lista ligada e
// exibir os valores contidos em seus nós
public static void exibirLista(No inicio) {
// vamos apontar para o início da lista
No temp = inicio;
// a lista está vazia?
if (temp == null) {
System.out.println("A lista está vazia.");
}
else {
// esse laço se repete enquanto tempo for
// diferente de null
while (temp != null) {
// vamos mostrar o valor desse nó
System.out.print(temp.valor + " -> ");
// avança para o próximo nó
temp = temp.proximo;
}
// mostra o final da lista
System.out.println("null");
}
}
// função que retorna a quantidade de nós na lista ligada
public static int tamanhoLista(No inicio) {
int tamanho = 0;
// vamos apontar para o início da lista
No temp = inicio;
// a lista está vazia?
if (temp == null) {
return 0;
}
else {
// esse laço se repete enquanto tempo for
// diferente de null
while (temp != null) {
// vamos incrementar o tamanho
tamanho++;
// avança para o próximo nó
temp = temp.proximo;
}
}
return tamanho;
}
}
|
JavaScript ::: Dicas & Truques ::: Matemática e Estatística |
Como calcular juros simples e montante usando JavaScriptQuantidade de visualizações: 17422 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 JavaScript pode ser feito assim:
<script type="text/javascript">
var principal = 2000.00;
var taxa = 0.08;
var meses = 2;
var juros = principal * taxa * meses;
document.write("O total de juros a ser pago é: "
+ juros);
</script>
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:
<script type="text/javascript">
var principal = 2000.00;
var taxa = 0.08;
var meses = 2;
var juros = principal * taxa * meses;
var montante = principal + juros;
document.write("O total de juros a ser pago é: "
+ juros + "<br>");
document.write("O montante da dívida é: " + montante);
</script>
|
Java ::: Coleções (Collections) ::: ArrayList |
Java ArrayList - Como remover uma faixa de elementos de uma ArrayList simulando a função removeRange() do JavaQuantidade de visualizações: 9759 vezes |
|
Este exemplo mostra como remover uma faixa de elementos de uma ArrayList. Note que vamos simular o comportamento do método removeRange() da classe ArrayList. Este método é marcado como protected, o que nos possibilita acesso a ele somente se escrevermos uma classe que estende (extends) ArrayList. Veja o código completo para o exemplo:
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<>();
// adiciona itens na lista
nomes.add("Carlos");
nomes.add("Maria");
nomes.add("Fernanda");
nomes.add("Osmar");
nomes.add("Maria");
// exibe os elementos da ArrayList
System.out.println("Todos os elementos:");
for(int i = 0; i < nomes.size(); i++){
System.out.println(nomes.get(i));
}
// Vamos remover os elementos 2, 3 e 4
for(int i = 1; i < 4; i++){
nomes.remove(1);
}
// exibe os elementos da ArrayList
System.out.println("\nElementos restantes:");
for(int i = 0; i < nomes.size(); i++){
System.out.println(nomes.get(i));
}
System.exit(0);
}
}
Ao executar este código Java nós teremos o seguinte resultado: Todos os elementos: Carlos Maria Fernanda Osmar Maria Elementos restantes: Carlos Maria |
Nossas 20 dicas & truques de programação mais populares |
Você também poderá gostar das dicas e truques de programação abaixo |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |



