Você está aqui: C# ::: Dicas & Truques ::: Data e Hora |
Como adicionar ou subtrair meses de uma data em C# usando a função AddMonths() da classe DateTimeQuantidade de visualizações: 12029 vezes |
Em algumas situações nossos códigos precisam adicionar ou subtrair meses de uma data. Isso pode ser feito com o auxílio do método AddMonths() da estrutura DateTime. Este método recebe o número de meses 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 3 meses à 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 3 meses à data de hoje DateTime data_futura = hoje.AddMonths(3); // exibe a data daqui a três meses System.Console.WriteLine("Daqui a 3 meses será {0:d}", data_futura); // pausa o programa System.Console.Write("\nPressione qualquer tecla para sair..."); Console.ReadKey(); } É possível também subtrair meses. Para isso só precisamos fornecer um valor negativo para o método AddMonths(). 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 5 meses da data de hoje DateTime data_passado = hoje.AddMonths(-5); // exibe a data 5 meses atrás System.Console.WriteLine("Há 5 meses 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 AddMonths() 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. Esta exceção também será disparada se o valor fornecido para o mês for menor que -120.000 ou maior que 120.000. |
Link para compartilhar na Internet ou com seus amigos: |
C# ::: LINQ ::: LINQ to Objects |
Como retornar o menor elemento em um array de int em C# usando a função Min() do LINQQuantidade de visualizações: 1148 vezes |
Nesta dica mostrarei, em um exemplo bem simples, como podemos usar o método Min() do LINQ (Language-Integrated Query) do C# para retornar o menor elemento de um vetor de inteiros. Note que temos um vetor de int com os valores {5, 2, 8, 3, 0, 1} e o valor 0 deverá ser retornado como sendo o menor. Veja o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- using System; using System.Linq; namespace Estudos { class Principal { static void Main(string[] args) { // vamos construir um vetor de inteiros int[] valores = {5, 2, 8, 3, 0, 1}; // vamos obter o menor elemento do vetor int menor = valores.Min(); // vamos mostrar o resultado Console.WriteLine("O menor valor é: {0}", menor); Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: O menor valor é: 0 Fique atento ao fato de que o método Min() pode atirar uma exceção do tipo InvalidOperation se o array ou coleção estiver vazia ou não incluir nenhum elemento que se encaixe nas condições testadas. Veja o resultado ao chamarmos este método em um vetor vazio: System.InvalidOperationException HResult=0x80131509 Message=Sequence contains no elements Source=System.Linq StackTrace: at System.Linq.ThrowHelper.ThrowNoElementsException() at System.Linq.Enumerable.Min(IEnumerable`1 source) at Estudos.Principal.Main(String[] args) in C:\estudos_c#\Estudos\Principal.cs:line 11 |
C# ::: Dicas & Truques ::: Matemática e Estatística |
Como gerar um número aleatório usando a função Next() da classe Random do C#Quantidade de visualizações: 23640 vezes |
Este exemplo mostra como gerar números randômicos usando C#. Para isso nós vamos usar o método Next() da classe Random. Este método retorna um número inteiro maior ou igual a zero e menor que a constante MaxValue (cujo valor é 2.147.483.647). Observe que cada chamada a Next() gera um número aleatório diferente, não havendo a necessidade de criar um novo objeto da classe Random para cada número desejado. Eis o código: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- static void Main(string[] args){ // cria um objeto da classe Random Random rnd = new Random(); // gera o número aleatório na faixa // 0 até MaxValue (2.147.483.647) int numero = rnd.Next(); // exibe o resultado Console.Write("O número gerado foi: {0}", numero); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } Ao executar este código C# nós teremos o seguinte resultado: O número gerado foi: 504 |
C# ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar o laço foreach da linguagem C#Quantidade de visualizações: 26322 vezes |
O laço foreach é usado quando queremos percorrer todos os elementos de um array (matriz) ou de coleções de dados, tais como uma ArrayList. Veja um exemplo:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- static void Main(string[] args){ // declara e inicializa um array de inteiros int[] valores = new int[5]{3, 2, 5, 11, 13}; // usa o laço foreach para percorrer todos // os elementos foreach(int valor in valores){ Console.WriteLine("{0}", valor); } Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } Aqui nós usamos este laço para percorrer todos os elementos do array. Note que, durante cada iteração do laço, uma referência ao elemento atual é guardada na variável valor. Agora uma advertência: a referência retornada pelo laço foreach é somente leitura. Observe o seguinte trecho de código: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // declara e inicializa um array de inteiros int[] valores = new int[5]{3, 2, 5, 11, 13}; // tenta alterar o valor da referência ao // elemento atual foreach(int valor in valores){ valor = 10; } Ao tentarmos compilar este código teremos a seguinte mensagem: Cannot assign to 'valor' because it is a 'foreach iteration variable' |
Vamos testar seus conhecimentos em Engenharia Civil - Estruturas de Aço e Madeira |
Perfil em aço O processo de conversão do minério de ferro em aço começa com a fundição do minério de ferro em ferro fundido. Por sua vez, este é produzido em alto-forno, com camadas alternadas compostas por alguns materiais em uma quantidade exata que vai dar a resistência correta aos futuros perfis de aço. Assinale a alternativa que apresenta corretamente os materiais que compõem as camadas para a fabricação do ferro fundido. A) Minério de ferro, coque e calcário moído. B) Minério de ferro, manganês e silício. C) Minério de ferro, fósforo e enxofre. D) Minério de ferro, oxigênio e nitrogênio. E) Nitrogênio, fósforo e silício. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Java |
Analise o seguinte código Javadouble a = 0.0 / 0; System.out.println(a); Qual é o resultado de sua execução? A) Infinity B) NaN C) Uma exceção java.lang.ArithmeticException: / by zero D) 0 Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Python |
Qual das formas abaixo é usada para criar uma LIST em Python? A) valores = {5, 1, 9, 4} B) valores = [5, 1, 9, 4] C) valores = (5, 1, 9, 4) D) valores = [5.. 1.. 9.. 4] E) valores = list[5, 1, 9, 4] Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Instalações prediais de combate a incêndio O fogo pode ser classificado em classes em função do tipo de material sujeito a combustão, tal que, para cada classe de fogo, existe uma categoria de extintor adequada para dissipar focos de incêndio. Sobre as categorias de extintores, são feitas as afirmações a seguir. Analise-as e assinale V para verdadeiro e F para falso: ( ) O extintor de água pressurizada é recomendado para extinguir o fogo por resfriamento de materiais de fácil combustão, como tecidos, madeira, papel e fibras. ( ) O extintor de espuma extingue o fogo por abafamento de equipamentos elétricos, como fios, quadro de distribuição, motores e transformadores. ( ) O extintor de pó químico emprega o abafamento para extinção do fogo, sendo recomendado para equipamentos elétricos energizados e pirofóricos. Assinale a alternativa que apresenta a sequência correta: A) V - F - F. B) V - F - V. C) F - V - V. D) F - V - F. E) V - V - F. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em |
Vantagens e Desvantagens do Concreto Armado O aparecimento de fissuras nos elementos estruturais em concreto armado tem origens diversas e representa uma desvantagem quanto ao uso desse material. Se não for controlado, pode comprometer a durabilidade da estrutura. Com relação à fissuração dos elementos de concreto armado, assinale a alternativa correta. A) As principais causas do aparecimento de fissuras nos elementos de concreto armado são a expansão e as solicitações normais de tração. B) Quanto maior é a espessura do elemento, maiores serão a retração e a possibilidade de fissuração. C) A retração do concreto pode ser evitada ou minimizada com a adoção de algumas medidas de proteção durante a fase de endurecimento do concreto fresco. D) Para evitar a fissuração do concreto por tensões de tração, seria necessário que fossem aplicadas tensões elevadas de tração na peça e nas armaduras. E) Os principais efeitos prejudiciais das fissuras do concreto armado estão ligados à estética e à sensação de insegurança aos usuários. 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 |
Software 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 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 |