Dúvidas, comentários e doaçoes: +55 62 9 8513 2505

Planilha de Dimensionamento de Tubulações Hidráulicas Água Fria e Água Quente Completa
Nossa 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 Cards de Hidrologia
Card 1 de 75
O regime de escoamento laminar

O regime laminar na hidrologia refere-se ao tipo de fluxo de água que ocorre em um corpo d'água, como um rio ou um lago, onde o movimento da água é suave e ordenado. Nesse regime, as camadas de água deslizam umas sobre as outras de maneira paralela, sem causar turbulência.

Esse tipo de fluxo é caracterizado por um baixo número de Reynolds, o que significa que a viscosidade da água é predominante em relação às forças inerciais. O regime laminar é comum em águas calmas ou em seções de rios com baixa inclinação e velocidade de fluxo.

O entendimento do regime laminar é importante para a modelagem de transporte de sedimentos, a qualidade da água e a gestão de recursos hídricos, pois influencia a dinâmica do ecossistema aquático e a erosão das margens.

Filtrar Cards
Use esta opção para filtrar os cards pelos tópicos que mais lhe interessam.
Termos:
Aviso Importante: Nos esforçamos muito para que o conteúdo dos cards e dos testes e conhecimento seja o mais correto possível. No entanto, entendemos que erros podem ocorrer. Caso isso aconteça, pedimos desculpas e estamos à disposição para as devidas correções. Além disso, o conteúdo aqui apresentado é fruto de conhecimento nosso e de pesquisas na internet e livros. Caso você encontre algum conteúdo que não deveria estar aqui, por favor, nos comunique pelos e-mails exibidos nas opções de contato.
Link para compartilhar na Internet ou com seus amigos:

Ruby ::: Dicas & Truques ::: Data e Hora

Datas e horas em Ruby: Time, Date ou DateTime - Qual classe devo usar?

Quantidade de visualizações: 9201 vezes
A linguagem Ruby oferece três classes básicas para lidar com datas e horas: Time, Date e DateTime. Para ajudá-lo em seus estudos, veja uma descrição breve de cada uma:

1) A classe Time está mais para um encapsulamento das funções de datas e horas da biblioteca C. Estas bibliotecas são geralmente baseadas na época UNIX (UNIX epoch) e, assim, não conseguem representar datas e horas antes de 1970.

2) A classe Date foi criada para superar estas deficiências da classe Time. Com esta classe nós podemos lidar com datas realmente antigas, tais como o aniversário de Leonardo da Vinci (15 de abril de 1452) e, esta classe funciona muito bem com a reforma do calendário. No entanto, a classe Date não permite lidar com horas, ou seja, ao usá-la não seremos capazes de representar a hora que Leonardo da Vinci nasceu. Apenas a data de nascimento.

3) A classe DateTime herda da Date e tenta ser o melhor de ambos os mundos. Com esta classe podemos representar datas da mesma forma que Date e horas da mesma forma que Time. Geralmente os desenvolvedores optam por esta classe, por considerá-la a forma mais correta de representar datas e horas.


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 encadeada

Quantidade de visualizações: 1209 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
Resposta/Solução:

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;
  }
}



VB.NET ::: Dicas & Truques ::: Data e Hora

Como adicionar horas à data e hora atual em VB.NET usando a função AddHours() da classe DateTime

Quantidade de visualizações: 13147 vezes
Nesta dica mostrarei como podemos adicionar horas à data e hora atual em VB.NET usando o método AddHours() da classe DateTime. Note que estamos obtendo a data e hora atual usando DateTime.Now. Em seguida nós adicionamos 5 horas e mostramos a nota data e hora.

Veja o código VB.NET completo para o exemplo:

Imports System

Module Program
  Sub Main(args As String())
    Dim agora As DateTime = DateTime.Now
    Dim horas As Integer = 5 ' vamos adicionar 5 horas

    ' exibe a data e hora atual
    Console.WriteLine("Agora são: " _
      & agora.ToString("dd/MM/yyyy - hh:mm:ss"))

    ' adiciona as horas
    agora = agora.AddHours(horas)

    ' exibe a nova data e hora
    Console.WriteLine("Daqui " & horas & " horas será: " _
      & agora.ToString("dd/MM/yyyy - hh:mm:ss"))

    Console.WriteLine(vbCrLf & "Pressione qualquer tecla para sair...")
    ' pausa o programa
    Console.ReadKey()
  End Sub
End Module

Ao executar este código VB.NET nós teremos o seguinte resultado:

Agora são: 11/07/2022 - 03:47:01
Daqui 5 horas será: 11/07/2022 - 08:47:01


JavaScript ::: Dicas & Truques ::: Strings e Caracteres

Como testar se uma string começa com uma determinada substring em JavaScript usando a função startsWith()

Quantidade de visualizações: 2752 vezes
O método startsWith() da linguagem JavaScript foi adicionado ao objeto String na revisão ECMAScript 2015, ou ES6, também chamado de ECMAScript 6.

Este método é chamado diretamente em uma variável do tipo string e retorna true se a palavra, frase ou texto começar com uma substring específica e false em caso contrário.

Veja um exemplo no qual verificamos se uma frase começa com a palavra "JavaScript":

<script type="text/javascript">
  var frase = "JavaScript é uma das melhores linguagens";
  
  if(frase.startsWith("JavaScript")){
    document.writeln("A frase começa com a palavra JavaScript");  
  }
  else{
    document.writeln("A frase não começa com a palavra JavaScript");  
  }
</script>

Ao executarmos este código JavaScript nós teremos o seguinte resultado:

A frase começa com a palavra JavaScript

É importante ter em mente que a função startsWith() diferente letras maiúsculas de letras minúsculas.


VB.NET ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar o laço Do...While...Loop do VB.NET

Quantidade de visualizações: 18334 vezes
Um instrução de repetição (também chamada de laço ou loop) permite que um bloco de códigos seja executado repetidamente até que uma condição seja satisfeita.

O laço Do...While...Loop é usado quando queremos testar uma condição e, executar um bloco de código repetidamente enquanto esta condição for verdadeira. Lembre-se de que, se a condição já for falsa, o laço nunca será executado.

Veja um exemplo de laço Do...While...Loop que nos permite exibir os números de 0 a 10:

Dim numero As Integer = 0

Do While numero <= 10
  Console.WriteLine(numero)
  numero += 1
Loop

Veja uma nova versão deste código, desta vez contando de 10 a 0:

Dim numero As Integer = 10

Do While numero >= 0
  Console.WriteLine(numero)
  numero -= 1
Loop

Aqui nós estamos novamente avaliando uma condição, ou seja, se o resultado da condição for True, a execução do laço continua. Se for False, o laço pára. Veja um exemplo no qual a condição booleana está bem explícita:

Dim pode As Boolean = True
Dim valor As Integer = 1

Do While pode
  Console.WriteLine(valor)
  valor += 1

  If valor > 20 Then
    pode = False
  End If
Loop



Desafios, Exercícios e Algoritmos Resolvidos de VB.NET

Veja mais Dicas e truques de VB.NET

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby


E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser. Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 32,90

Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.


© 2026 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 40 usuários muito felizes estudando em nosso site.