Jump to content
Sign in to follow this  
sabing

Comparar data antes de 5 dias da data atual c#

Recommended Posts

sabing

Pessoal eu estou com grande problema eu quero compara uma data com a outra sendo o programa avise se aquela data esta 5 dias antes da data atual que seria hoje eu montei uma logica em algoritmo

Logica em algoritmo

Algoritmo TesteData;

variaveis

data1,data2:Caracteres;

data1Temporario:Vetor[1..10] de caracteres;

data2Temporario:Vestor[1..10] de caracteres;

RecebeValorTemporarioData1:Char;

RecebeValorTemporarioData2:Char;

ResultadoData,i,data1Soma,data2Soma:Inteiro;

inicio

i=0;

Escreva("digite a data atual: " );

Leia(data1);

Escreva("digite a data da comparação: ");

Leia(data2);

se data1> data2 entao

inicio

para de i ate 10 faça

inicio

data1Temporario = cortar.data1;

data2Temporario = cortar.data2;

fimpara

// PRIMEIRA DATA

RecebeValorTemporarioData1 = data1Temporario[1];

RecebeValorTemporarioData1 = RecebeValorTemporarioData1+ data1Temporario[2];

//SEGUNDA DATA

RecebeValorTemporarioData2 = data2Temporario[1];

RecebeValorTemporarioData2 = RecebeValorTemporarioData1+ data2Temporario[2];

//CONVERSÃO

data1Soma = converterInteiro.RecebeValorTemporarioData1;

data2Soma = converterInteiro.RecebeValorTemporarioData2;

ResultadoData = data1Soma - data2Soma;

//COMPARAÇÃO

se ResultadoData < 5 ou ResultadoData = 5 entao

inicio

Escreva("Falta 5 dias");

senao

Escreva("Não falta 5 dias");

fimse

senao

Escreva("Data1 tem que ser maior que a data2 ");

fimse

Fim.

Montei uma logica em c#

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

namespace DataTeste

{

class Procedures

{

Atributos at = new Atributos();

public static void Tela()

{

Procedures teste = new Procedures();

teste.Dados();

Console.ReadKey();

}

private void Dados()

{

try

{

Console.WriteLine("FORMATO DE DATA DD/MM/AAAA");

Console.Write("Digite a data: ");

at.Data1 = Console.ReadLine();

Console.WriteLine("Digite a data: ");

at.Data2 = Console.ReadLine();

CortaData();

}

catch (Exception erro)

{

Console.WriteLine("Houve um erro: " + erro.Message);

}

}

private void CortaData()

{

string[] Data1Cortado = at.Data1.Split('/');

string[] Data2Cortado = at.Data2.Split('/');

string[] DataHojeCortado = DateTime.Today.ToShortDateString().Split('/');

if (Data1Cortado[2].ToString() == DataHojeCortado[2].ToString() && Data2Cortado[2].ToString() == DataHojeCortado[2].ToString())

{

// A COMPARAÇÃO DO MES ESTA AQUI

if (Data1Cortado[1].ToString() == DataHojeCortado[1].ToString() && Data2Cortado[1].ToString() == DataHojeCortado[1].ToString())

{

CalculoData();

}

else

{

Console.WriteLine("Mês invalidos");

}

}

else

{

Console.WriteLine("Ano(s) invalido(s)!");

}

}

private void CalculoData()

{

at.I = Convert.ToInt16(String.Compare(at.Data1, at.Data2, StringComparison.Ordinal));

at.ResultadoFinal = at.I * -1;

ComparacaoData();

}

private void ComparacaoData()

{

if (at.ResultadoFinal <= 5)

{

Console.WriteLine("Falta 5 dias");

}

else

{

Console.WriteLine("Ainda nao falta 5 dias");

}

}

}

}

Então funciona porem o mes antigo por exemplo 30/06/2013 comparado com 04/07/2013 fala se falta 5 dias ou não eu estou com dificuldade!

Share this post


Link to post
Share on other sites
bioshock

Mas que filme estás tu a fazer?

private void Form1_Load(object sender, EventArgs e)
	{
		DateTime data_1 = new DateTime(2013, 07, 15);
		DateTime data_2 = new DateTime(2013, 07, 08);

		MessageBox.Show(verifica(data_1, data_2).ToString());
	}
	private int verifica(DateTime dt_1, DateTime dt_2) {
		return (int)(dt_1 - dt_2).TotalDays;
	}

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.