Você está aqui: C# ::: Datas e Horas ::: DateTime

Como adicionar ou subtrair dias de uma data em C# usando o método AddDays() da estrutura DateTime

Quantidade de visualizações: 7653 vezes
Em algumas situações nossos códigos precisam adicionar ou subtrair dias de uma data. Isso pode ser feito com o auxílio do método AddDays() da estrutura DateTime. Este método recebe o número de dias a serem acrescidos ou substraídos da data representada pelo DateTime atual e retorna um novo DateTime com as devidas modificações.

Veja um trecho de código no qual adicionamos 5 dias à data atual:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

static void Main(string[] args){
  // vamos obter a data de hoje
  DateTime hoje = DateTime.Now;

  // exibe a data de hoje
  System.Console.WriteLine("Hoje é {0:d}", hoje);

  // vamos adicionar 5 dias à data de hoje
  DateTime data_futura = hoje.AddDays(5);

  // exibe a data daqui a cinco dias
  System.Console.WriteLine("Daqui a 5 dias será {0:d}", data_futura);

  // pausa o programa
  System.Console.Write("\nPressione qualquer tecla para sair...");
  Console.ReadKey();
}

É possível também subtrair dias. Para isso só precisamos fornecer um valor negativo para o método AddDays(). Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

static void Main(string[] args){
  // vamos obter a data de hoje
  DateTime hoje = DateTime.Now;

  // exibe a data de hoje
  System.Console.WriteLine("Hoje é {0:d}", hoje);

  // vamos subtrair 7 dias da data de hoje
  DateTime data_passado = hoje.AddDays(-7);

  // exibe a data sete dias atrás
  System.Console.WriteLine("Há 7 dias era {0:d}", data_passado);

  // pausa o programa
  System.Console.Write("\nPressione qualquer tecla para sair...");
  Console.ReadKey();
}

Lembre-se, contudo, que o método AddDays() pode disparar uma exceção do tipo ArgumentOutOfRangeException se o DateTime resultante for menor que MinValue ou maior que MaxValue. MinValue e MaxValue são os menor e maior valores que um DateTime pode representar.

Link para compartilhar na Internet ou com seus amigos:

C# ::: Windows Forms ::: ListBox

Como inserir um item em uma determinada posição da ListBox do C# Windows Forms usando o método Insert()

Quantidade de visualizações: 653 vezes
Em algumas situações nós gostaríamos de adicionar um novo item a uma ListBox do C# Windows Forms e indicar a posição (índice) na qual ela deverá ficar. Para isso podemos usar a função Insert() do objeto Items da ListBox.

O método Insert() recebe o índice no qual o elemento será inserido e o item a ser inserido. Veja um exemplo de seu uso no trecho de código a seguir:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

private void button2_Click(object sender, EventArgs e)
{
  // insere um item na terceira posição
  listBox1.Items.Insert(2, "Fortaleza");
}

Se o índice fornecido para o método Insert() não estiver dentro da faixa de índices válidos para os elementos da ListBox, uma exceção do tipo ArgumentOutOfRangeException será atirada:

System.ArgumentOutOfRangeException
HResult=0x80131502
Message=InvalidArgument=Value '20' não é um valor válido para 'index'.
Parameter name: index
Source=System.Windows.Forms
StackTrace:
em System.Windows.Forms.ListBox.ObjectCollection.Insert(Int32 index, Object item)


C# ::: Dicas & Truques ::: Matemática e Estatística

Como testar se um número é par ou ímpar em C#

Quantidade de visualizações: 2698 vezes
Muitas vezes precisamos saber se um determinado número é par ou ímpar. Isso pode ser feito em C# usando-se o operador de módulo %, que retorna o resto de uma divisão entre números inteiros. Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

static void Main(string[] args){
  Console.Write("Informe um valor inteiro: ");
  int num = int.Parse(Console.ReadLine());

  if(num % 2 == 0){
    Console.WriteLine("Você informou um numero par");
  }
  else{
    Console.WriteLine("Você informou um numero impar");
  } 

  Console.WriteLine("\nPressione qualquer tecla para sair...");
  // pausa o programa
  Console.ReadKey();
}

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

Informe um valor inteiro: 8
Você informou um numero par


C# ::: Coleções (Collections) ::: ArrayList

Como percorrer os elementos de uma ArrayList do C# usando um objeto da interface IEnumerator

Quantidade de visualizações: 8452 vezes
Um objeto da interface IEnumerator (no namespace System.Collections) pode ser usado para percorrer os elementos de uma coleção não-genérica, como é o caso da classe ArrayList. Podemos usar um enumerador para acessar os itens da lista individualmente, mas estes não poderão sofrer modificações por meio do enumerador.

Um enumerador para uma ArrayList é obtido por meio do método GetEnumerator(). Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

// vamos obter um enumerador para a lista
IEnumerator enumerador = lista.GetEnumerator();

Observe agora um trecho de código no qual temos uma lista contendo 5 inteiros. Note o uso de um IEnumerator para percorrer os elementos e exibir o valor contido no elemento atual:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

static void Main(string[] args){
  // não se esqueça
  // using System.Collections;

  // Cria o ArrayList
  ArrayList lista = new ArrayList();

  // Adiciona 5 inteiros
  lista.Add(65);
  lista.Add(2);
  lista.Add(13);
  lista.Add(97);
  lista.Add(4);

  // vamos obter um enumerador para a lista
  IEnumerator enumerador = lista.GetEnumerator();

  // vamos percorrer a lista usando o enumerador
  while(enumerador.MoveNext()){
    Console.WriteLine(enumerador.Current); 
  }

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

Para saber mais sobre os enumeradores, consulte minhas dicas sobre a interface IEnumerator.


Vamos testar seus conhecimentos em

Domínios de Deformações

O dimensionamento de uma seção transversal de um elemento linear concreto armado, sujeito a solicitações normais, de acordo com a NBR 6118 - "Projeto de estruturas de concreto" - é realizado com base em hipóteses básicas.

A respeito dessas hipóteses, analise as informações a seguir, indicando V para as verdadeiras e F para as falsas:

( ) A distribuição das deformações ocorre de forma não linear ao longo da altura da seção.

( ) As deformações nas barras de armadura são idênticas às deformações do concreto que as envolve.

( ) Admite-se que todas as tensões de tração existentes serão resistidas pelo concreto e pela armadura.

( ) Adota-se o diagrama parábola-retângulo idealizado para o concreto comprimido.

Assinale a alternativa que contém a sequência correta:

A) V - V - F - F.

B) V - F - F - F.

C) F - V - F - V.

D) F - V - V - V.

E) V - F - F - V.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fundações

Sondagem à Percussão (SPT) e Rotativa (RQD)

Um boletim de sondagem SPT está indicando uma camada de solo residual de granito de 4m com N variando de 3 a 8 golpes. Atingido os 4m, verificou-se que o solo é impenetrável à percussão. O engenheiro solicitou que fizesse outro ensaio ao lado daquele (2m) e o perfil obtido foi de uma camada de solo variando de 3 a 25 golpes até a profundidade de 8m. O que o engenheiro pretendeu comprovar, realizando outro ensaio logo ao lado do primeiro?

A) A tentativa foi de comprovar que o solo era de péssima qualidade.

B) A tentativa foi de comprovar que se tratava de um solo com uma camada de menor resistência logo abaixo.

C) A tentativa foi de provar que se tratava de argilas de consistência mole.

D) A tentativa foi de comprovar que no solo residual de granito podem ocorrer matacões.

E) A tentativa foi de comprovar que o ensaio SPT não é eficiente para solos residuais.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em JavaScript

Analise o seguinte código JavaScript

var a = new Array("teste", 1, 2, -1, -2, 0xFFFFF);
a.sort();
document.write(a);

Qual é o resultado de sua execução?

A) teste,1,2,-1,-2,1048575

B) -1,-2,1,1048575,2,teste

C) Um erro na criação do array

D) teste,-2,-1,1,2,1048575
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Hidrologia

Como é chamado o processo em que a água passa do estado líquido para o estado sólido no meio atmosférico?

A) Infiltração.

B) Condensação.

C) Evapotranspiração.

D) Transpiração.

E) Precipitação.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Hidrologia

(IDECAN - 2021 - Perito Criminal de 1ª Classe (PEFOCE)/Engenharia Civil) O aparelho utilizado para medição e registro de precipitações é o

A) pluviômetro.

B) fluviógrafo.

C) pluviógrafo.

D) limnímetro.

E) limnígrafo.
Verificar Resposta Estudar Cards Todas as Questões

Desafios, Exercícios e Algoritmos Resolvidos de C#

Veja mais Dicas e truques de C#

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

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



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