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 Engenharia Civil - Estruturas de Concreto Armado
Card 1 de 40
Segurança e Estados Limites Ações nas Estruturas de Concreto Armado

As combinações últimas normais e as combinações últimas de construção ou especiais se diferem apenas pelo coeficiente ψ, que é ψ0 para as combinações normais últimas e pode ser ψ0 ou ψ2 para as combinações últimas de construção ou especiais, dependendo da duração da ação variável principal.

Nas combinações últimas excepcionais, a ação excepcional é considerada em seu valor característico, isto é, não majorada.

As ações variáveis são consideradas com seus valores quase permanentes pela multiplicação pelo fator de redução ψ2.

Nas combinações frequentes de serviço, existe uma ação variável principal considerada no seu valor frequente pela multiplicação pelo fator ψ1, e as demais consideradas em seus quase permanentes, pela multiplicação por ψ2.

Já, nas combinações raras de serviço, a variável principal se encontra em seu valor característico, ao passo que as demais ações variáveis são consideradas em seus valores frequentes, pela multiplicação por ψ1.

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:

Java ::: Dicas & Truques ::: Entrada e Saída em Arquivos (File Input/Output - IO)

Como ler o conteúdo de um arquivo uma linha de cada vez usando o método readLine() da classe RandomAccessFile da linguagem Java

Quantidade de visualizações: 13798 vezes
Uma das operações mais frequentes em um programa é a leitura do conteúdo de arquivos. A classe RandomAccessFile nos fornece o método readLine() que é muito útil quando precisamos ler as linhas de conteúdo em um arquivo.

O método readLine() lê bytes consecutivos do arquivo, começando na posição atual do ponteiro de arquivos até alcançar um caractere marcador de final de linha ou o fim do arquivo. Cada byte é convertido em um caractere tomando-se o valor do byte para os oito bits de menor ordem do caractere e definindo os oito bits de ordem alta do caractere como zero. Desta forma, este método não suporta Unicode completamente. Uma linha de texto é finalizada por um caractere de retorno de carro ("\r"), um caractere de nova linha ("\n"), um caractere de retorno de carro seguido por um caractere de nova linha, ou o final do arquivo. Caracteres de final de linha não são incluídos na string retornada pelo método.

É importante observar que, a cada chamada ao método readLine(), o ponteiro de arquivo é avançado e posicionado para a leitura subsequente. Veja o exemplo:

import java.io.*;

public class Estudos{
  public static void main(String[] args){
    // uma instância de RandomAccessFile para leitura e escrita
    try{
      RandomAccessFile arquivo = 
        new RandomAccessFile("C:\\java\\conteudo.txt", "rw");

      // vamos ler o conteúdo do arquivo uma linha de cada vez
      String linha;
      
      while((linha = arquivo.readLine()) != null){
        System.out.println("Posição do ponteiro: " +
          arquivo.getFilePointer());
        System.out.println(linha); 
      }

      arquivo.close();    
    }
    catch(FileNotFoundException fnfe){
      System.out.println(fnfe.getMessage());
    }
    catch(IOException ioe){
      System.out.println(ioe.getMessage());
    }

    System.exit(0);
  }
}

Ao executar este exemplo nós teremos o seguinte resultado:

Posição do ponteiro: 27
Primeira linha do arquivo
Posição do ponteiro: 53
Segunda linha do arquivo
Posição do ponteiro: 78
Terceira linha do arquivo


Delphi ::: VCL - Visual Component Library ::: TListBox

Como excluir o item ou itens selecionados em uma TListBox do Delphi usando a função DeleteSelected

Quantidade de visualizações: 14002 vezes
Em algumas ocasiões nós precisamos excluir o item ou os itens selecionados em uma TListBox. Isso pode ser feito com o auxílio do método DeleteSelected da classe TListBox. Veja um trecho de código no qual excluímos apenas o item selecionado:

procedure TForm3.FormCreate(Sender: TObject);
begin
  // vamos adicionar alguns itens na ListBox
  ListBox1.Items.Add('Goiânia');
  ListBox1.Items.Add('Curitiba');
  ListBox1.Items.Add('Brasilia');
end;

procedure TForm3.Button1Click(Sender: TObject);
begin
  // vamos excluir o item selecionado
  ListBox1.DeleteSelected;
end;

É possível conseguir o mesmo resultado usando o método Delete() do objeto Items (do tipo TStrings). Veja:

procedure TForm3.Button1Click(Sender: TObject);
begin
  // vamos excluir o item selecionado
  ListBox1.Items.Delete(ListBox1.ItemIndex);
end;

Note que o método Delete() do objeto Items exige o índice do elemento a ser removido. Com o método DeleteSelected da classe TListBox esta exigência não existe. Além disso, o método DeleteSelected permite excluir mais de um elemento selecionado, ou seja, ele excluir todos os elementos selecionados. Veja:

procedure TForm3.FormCreate(Sender: TObject);
begin
  // vamos adicionar alguns itens na ListBox
  ListBox1.Items.Add('Goiânia');
  ListBox1.Items.Add('Curitiba');
  ListBox1.Items.Add('Brasilia');

  // para que este exemplo funcione corretamente, a ListBox
  // deverá permitir seleção múltipla
  ListBox1.MultiSelect := True;
end;

procedure TForm3.Button1Click(Sender: TObject);
begin
  // vamos excluir todos os itens selecionados
  ListBox1.DeleteSelected;
end;

Execute este código, selecione mais de um item e clique no botão para verificar o resultado.

Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009.


C# ::: Windows Forms ::: Formulários e Janelas

C# Windows Forms - Como obter a quantidade de controles em um formulário usando a propriedade Controls.Count

Quantidade de visualizações: 8939 vezes
Em algumas situações nós precisamos saber quantos controles existem atualmente em um formulário Windows Forms. Isso pode ser feito com uma chamada à propriedade Count da classe ControlCollection. Um objeto da classe ControlCollection é retornado quando acessamos a propriedade Controls de um formulário (e presente também em outros controles que podem conter controles filhos).

Veja um trecho de código no qual obtemos a quantidade de controles em um formulário ao clicarmos em um botão:

private void button1_Click(object sender, EventArgs e){
  // vamos obter a quantidade de controles no formulário
  int quantControles = this.Controls.Count;

  // vamos exibir o resultado
  MessageBox.Show("O formulário contém " + quantControles + 
    " controles.");
}

Note que a coleção ControlCollection retorna apenas os controles visuais no formulário, ou seja, componentes tais como Timer, DirectoryEntry, etc, não são incluídos.


Python ::: NumPy Python Library (Biblioteca Python NumPy) ::: Arrays e Matrix (Vetores e Matrizes)

Como multiplicar um vetor ou uma matriz por um escalar no NumPy do Python - Python NumPy para Engenharia

Quantidade de visualizações: 4932 vezes
Esta dica de Python e NumPy é direcionada, principalmente, aos estudantes de Engenharia Civil, que se deparam, logo no início do curso, com o estudo da Geometria Analítica e gostariam de entender melhor a multiplicação de vetores por um escalar. Lembre-se de que um escalar é um valor único, enquanto vetores e matrizes são estruturas que guardam vários valores ao mesmo tempo.

Nosso primeiro exemplo será feito em cima de um vetor com os seguintes valores: [3, -5, 4, 1, 9]. O escalar usado será o valor 2, ou seja, temos que multiplicar cada valor no vetor pelo valor 2 e, dessa forma, obtermos um novo vetor.

Veja como a linguagem Python facilita esta operação:

# importamos a bibliteca NumPy
import numpy as np

def main():
  # declara e cria o vetor
  vetor = np.array([3, -5, 4, 1, 9])
  
  # agora vamos multiplicar este vetor pelo escalar 2
  escalar = 2
  novoVetor = vetor * escalar

  # vamos exibir o resultado
  print("Vetor inicial: ", vetor)
  print("Valor do escalar: ", escalar)
  print("Novo vetor: ", novoVetor)

if __name__== "__main__":
  main()

Este código Python vai gerar o seguinte resultado:

Vetor inicial: [3 -5 4 1 9]
Valor do escalar: 2
Novo vetor: [6 -10 8 2 18]

Veja agora como podemos efetuar a mesma operação em uma matriz de 2 linhas e 3 colunas (recorde que, em Python, uma matriz nada mais é que um vetor de vetores, ou seja, cada elemento do vetor contém outro vetor):

# importamos a bibliteca NumPy
import numpy as np

def main():
  # declara e cria a matriz
  matriz = np.array([(4, 12, 50), (5, 3, 1), (11, 9, 7)])
  
  # agora vamos multiplicar esta matriz pelo escalar 2
  escalar = 2
  novaMatriz = matriz * escalar

  # vamos exibir o resultado
  print("Matriz inicial: ", matriz)
  print("Valor do escalar: ", escalar)
  print("Nova matriz: ", novaMatriz)

if __name__== "__main__":
  main()

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

Matriz inicial: [[4 12 50]
[5 3 1]
[11 9 7]]
Valor do escalar: 2
Nova matriz: [[8 24 100]
[10 6 2]
[22 18 14]]


Python ::: Dicas & Truques ::: Ordenação e Pesquisa (Busca)

Como usar a busca binária em Python - Pesquisa binária na linguagem Python

Quantidade de visualizações: 1059 vezes
A busca binária, ou pesquisa binária, é um algoritmo eficiente para encontrar um item em uma lista (vetor ou array) ordenada. Sim, os itens devem, obrigatoriamente, estar ordenados.

O processo é bem simples. A busca binária começa a partir do meio da lista e compara o item nesta posição com o valor sendo pesquisado. Se o valor não for encontrado e for menor que o item no meio da lista, o algoritmo passa para a porção à esquerda da lista, eliminando, assim, metade dos elementos do vetor ou array (a porção maior que o valor pesquisado).

Se o valor não for encontrado e for maior que o item no meio da lista, então a busca reinicia a partir da metade da sub-lista à direita (os itens maiores que o valor pesquisado). Essa divisão continua até que o valor seja encontrado ou não seja mais possível dividir a lista pela metade.

Se um array ou vetor possuir 100 elementos e usarmos a busca binária nele, precisaremos efetuar no máximo 7 tentativas para encontrar o valor desejado. Se a lista possuir 4 bilhões de itens nós teremos que fazer no máximo 32 tentativas.

Isso acontece porque a pesquisa binária é executada em tempo logarítmico, ou seja, log2 n, onde n é a quantidade de itens no vetor. Dessa forma, se tivemos 1.000 itens em um array, log2 1000 = 10 tentativas. Lembre-se de que, na programação log e log2 retornam resultados diferentes: log(10) = 2.302585092994046 enquanto log2(10) = 3.321928094887362. Na análise da busca binária nós usamos sempre log2.

Vamos agora ver como podemos codificar a busca binária em Python. Veja o código a seguir:

# função principal do programa
def main():
  # vamos criar uma lista ordenada de inteiros
  valores = [3, 5, 7, 8, 9, 12, 43, 50, 52, 60]
  print("Os valores da lista são: {0}".format(valores))

  # vamos pedir o item a ser pesquisado
  numero = int(input("Informe o número a ser pesquisado: "))

  # agora vamos pesquisar o número no array usando a pesquisa
  # binária
  # a variável esquerda aponta para o primeiro elemento do vetor
  esquerda = 0
  # a variável direita aponta para o último elemento do vetor
  direita = len(valores) - 1
  # para indicar se o valor foi encontrado
  encontrado = False

  # enquanto houver mais de um elemento a ser comparado
  while esquerda <= direita:
    # obtemos o elemento na metade da lista
    meio = (esquerda + direita) // 2
    
    # fazemos a comparação
    if numero == valores[meio]:
      print("O número foi encontrado no índice {0}".format(
        meio))
      encontrado = True
      break # sai do laço  

    # o item atual é maior que o valor pesquisado?
    if valores[meio] > numero:
      direita = meio - 1
    # o item atual é menor que o valor pesquisado?
    else:
      esquerda = meio + 1

  # o valor foi encontrado?
  if not encontrado:
    print("O valor pesquisado não foi encontrado")  

if __name__== "__main__":
  main()

Ao executar este código Python nós teremos o seguinte resultado:

Os valores da lista são: [3, 5, 7, 8, 9, 12, 43, 50, 52, 60]
Informe o número a ser pesquisado: 9
O número foi encontrado no índice 4


Desafios, Exercícios e Algoritmos Resolvidos de Python

Veja mais Dicas e truques de Python

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 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 Apenas R$ 19,90


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