Ofereço ajuda em Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD
+55 (062) 98553-6711
Ofereço ajuda em PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO
+55 (062) 98243-1195

Você está aqui: Cards de Engenharia Civil - Materiais de Construção
Card 1 de 1
Materiais de construção

Materiais de construção são todos os corpos, objetos ou substâncias que são usados em qualquer obra de engenharia. Desde o início da civilização, os materiais são utilizados para facilitar a vida do ser humano. Na Pré-história, o sílex lascado era o principal material utilizado na confecção de objetos e ferramentas. Na sequência, o homem passou a produzir seus utensílios cotidianos a partir da pedra polida, evoluindo para aplicação de cerâmicas em materiais a partir da descoberta do fogo. Neste mesmo período, o que hoje conhecemos como compósito, o barro reforçado com madeira e palha possibilitava a construção de casas.

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:

PHP ::: Dicas & Truques ::: Strings e Caracteres

Como usar as funções strpos() e stripos() do PHP para obter uma matriz contendo todas as posições das ocorrências de uma substring dentro de uma string

Quantidade de visualizações: 3143 vezes
Em algumas situações percebemos que uma substring aparece mais de uma vez em uma string e gostaríamos de obter mais informações sobre tais ocorrências. No trecho de código abaixo eu mostro como usar as funções strpos() e stripos() para obter uma matriz contendo todas as posições das ocorrências de uma substring dentro de uma string:

<?php
  $frase = "PHP? Gosto muito de PHP e Java. Mas prefiro PHP e Delphi";
  $palavra = "PHP";
  
  // primeiro vamos verificar se a palavra está contida na frase
  if(strpos($frase, $palavra) !== false){
     // agora vamos obter as posições de todas as ocorrências
     $posicoes = array();
     $offset = 0;
     $posicao = -1;
     
     while($offset < strlen($frase)){
	$posicao = strpos($frase, $palavra, $offset);
	if($posicao !== false){
	   $posicoes[] = $posicao;
	   $offset = $posicao + strlen($palavra);
	}
	else{
	   $offset++;
	}
     }
	 
     // percorre a matriz de posições e informa o usuário
     echo "A palavra foi encontrada nas posições: ";
     for($i = 0; $i < count($posicoes); $i++){
	echo $posicoes[$i] . ", "; 
     }
  }
  else{
     echo "A palavra não está contida na string"; 
  }
?>

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

A palavra foi encontrada nas posições: 0, 20, 44,

Note que a função strpos() diferencia maiúsculas de minúsculas. Se você quiser efetuar uma pesquisa de substrings desconsiderando maiúsculas e minúsculas, use a função stripos().


Ruby ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como remover elementos repetidos de um array em Ruby usando as funções uniq e uniq!

Quantidade de visualizações: 10168 vezes
Em algumas situações nós precisamos excluir os itens duplicados de um array em Ruby. Para isso nós podemos usar as funções uniq e uniq!. A função uniq remove os itens duplicados e retorna um novo array, enquanto uniq! opera no array original, ou seja, modificando seus valores.

Veja o código Ruby completo para o exemplo:

# Cria um array de inteiros com duplicações
valores = [2, 3, 3, 5, 5, 6, 3]

# Exibe os valores do array original
puts "Os valores do array são:\n"
valores.each do | valor |
  print valor.to_s + " "
end

# Obtém um novo array sem as duplicações
valores2 = valores.uniq
puts "\n\nO novo array sem repetições:\n"
valores2.each do | valor |
  print valor.to_s + " "
end

# Remove as duplicações do array original
valores.uniq!
puts "\n\nO array original sem repetições:\n"
valores.each do | valor |
  print valor.to_s + " "
end

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

Os valores do array são:
2 3 3 5 5 6 3

O novo array sem repetições:
2 3 5 6

O array original sem repetições:
2 3 5 6


Delphi ::: Data Access Controls (Controles de Acesso a Dados) ::: TClientDataSet

Como usar a propriedade Active da classe TClientDataSet do Delphi

Quantidade de visualizações: 11879 vezes
A propriedade Active de um controle TClientDataSet pode ser definida em tempo de design (pelo Object Inspector) ou em tempo de execução. Se o valor for True os dados armazenados no TClientDataSet podem ser lidos e manipulados. Se o valor for False, o client dataset está fechado (closed) e não podemos acessar nem manipular os dados contidos nele.

Veja no trecho de código abaixo como definir o valor da propriedade Active em tempo de execução:

procedure TForm3.Button3Click(Sender: TObject);
begin
  // vamos ativar o client dataset
  ClientDataSet1.Active := True;

  // vamos testar se o client dataset foi mesmo ativado
  if ClientDataSet1.Active then
    ShowMessage('O ClientDataSet está ativo')
  else
    ShowMessage('O ClientDataSet  NÃO está ativo')
end;

Ao clicar no botão nós "ativamos" o client dataset e em seguida testamos o valor da propriedade Active para informar se o controle foi realmente ativado. É preciso ter muito cuidado. Tentar manipular os dados de um client dataset fechado pode resultar em uma exceção do tipo EDatabaseError com mensagens parecidas com:

Project Projeto.exe raised exception class EDatabaseError with message 'ClientDataSet1: Cannot perform this operation on a closed dataset'.

Ao definirmos o valor True para a propriedade Active as seguintes ações ocorrem:

1) O client dataset é preenchido com dados. Dependendo das propriedades do controle, estes dados podem vir de três formas diferentes: a) Do arquivo especificado na propriedade FileName; b) Do provider especificado na propriedade ProviderName ou por meio do método SetProvider. (algumas classes derivadas de TCustomClientDataSet possuem um componente interno que faz o papel do provider); c) Os dados que estavam ativos quando o client dataset foi desativado (somente se a aplicação foi executada durante um certo período depois que o dataset foi desativado).

2) O evento BeforeOpen é disparado.

3) O valor dsBrowse é atribuído à propriedade State do dataset.

4) Abre e posiciona um cursor no primeiro registro do conjunto de dados.

5) Dispara o evento AfterOpen.

Se o client dataset nunca foi ativado, atribuir o valor True para a propriedade Active faz com que a estrutura (metadata) do client dataset seja definida. Esta estrutura é obtida juntamente com o pacote de dados a partir do provider ou armazenado em disco. Se não houver pacote de dados, tal estrutura é construída usando o valor atual da propriedade FieldDefs ou a partir dos componentes de campos persistentes listados na propriedade Fields.

Se um erro ocorrer durante a abertura do dataset, seu estado (State) é definido como dsInactive e o cursor de navegação é fechado.

Ao definirmos o valor False para a propriedade Active as seguintes ações ocorrem:

1) O evento BeforeClose é disparado.

2) O valor para a propriedade State é definido como dsInactive.

3) O cursor de navegação é fechado, salvando os dados atuais em disco se a propriedade FileName estiver definida e salvando o pacote de dados atual em cache de forma que o mesmo possa ser restaurado mais tarde quando o dataset for reaberto.

4) O evento AfterClose é disparado.

Importante: Uma chamada ao método Open do TClientDataSet define a propriedade Active como True, enquanto uma chamada ao método Close a define como False.

Esta dica foi escrita e testada no Delphi 2009.


C# ::: Dicas & Truques ::: Arquivos e Diretórios

Como renomear um diretório em C# usando o método MoveTo() da classe DirectoryInfo

Quantidade de visualizações: 9620 vezes
Nesta dica mostrarei como podemos usar a função MoveTo() da classe DirectoryInfo para renomear um diretório na linguagem C#. Note que, na verdade, o que o método MoveTo() faz é mover todo o conteúdo de um diretório (incluindo seu conteúdo) para um novo diretório, o que dá o mesmo resultado que simplesmente renomear o diretório antigo.

Veja um exemplo completo de seu uso:

using System;
using System.IO;

namespace Estudos {
  class Program {
    static void Main(string[] args) {
      // vamos criar uma instância da classe DirectoryInfo
      DirectoryInfo dir = new DirectoryInfo(@"C:\estudos_csharp\teste");
      try {
        // vamos chamar o método MoveTo() para renomear o diretório
        dir.MoveTo(@"C:\estudos_csharp\teste_2");
        Console.WriteLine("Diretório renomeado com sucesso.");
      }
      catch (Exception e) {
        Console.WriteLine("Não foi possível renomear o diretório: {0}", e.ToString());
      }
      finally { }

      Console.WriteLine("\n\nPressione uma tecla para sair...");
      Console.ReadKey();
    }
  }
}

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

Diretório renomeado com sucesso.


VB.NET ::: Dicas & Truques ::: Matemática e Estatística

Como calcular juros simples e montante em VB.NET

Quantidade de visualizações: 8591 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 VB.NET pode ser feito assim:

Module Module1
  Sub Main()
    Dim principal As Double = 2000.0
    Dim taxa As Double = 0.08 '8%
    Dim meses As Integer = 2

    Dim juros As Double = principal * taxa * meses

    Console.WriteLine("O total de juros a ser pago é: " _
       & juros)

    Console.WriteLine()
    Console.WriteLine("Pressione uma tecla para sair...")
    Console.ReadKey()
  End Sub
End Module

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:

Module Module1
  Sub Main()
    Dim principal As Double = 2000.0
    Dim taxa As Double = 0.08 '8%
    Dim meses As Integer = 2

    Dim juros As Double = principal * taxa * meses
    Dim montante As Double = principal * (1 + (taxa * meses))

    Console.WriteLine("O total de juros a ser pago é: " _
       & juros)
    Console.WriteLine("O montante a ser pago é: " & montante)

    Console.WriteLine()
    Console.WriteLine("Pressione uma tecla para sair...")
    Console.ReadKey()
  End Sub
End Module



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



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