Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

afonso didone

Data em C

Recommended Posts

Bom Dia Pessoal;

Preciso fazer um cálculo de Juros em C++. Para isso preciso ler a data final do calculo e descontar os dias da data atual.

Alguém pode me ajudar com algum exemplo de como fazer isso?

Outra coisa que preciso é pegar apenas os dias úteis entre o intervalo de datas, se alguém tiver algum material.

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Perae a unica coisa que precisa é comparar as datas?

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como você está fazendo a leitura das datas??

fiz uma procura pela net e não vi nenhuma função pronta para isso, + a gente desenvolve juntos.

 

[]s

 

---

Bom

#include <iostream>
#include <ctime>

int main()
{
   struct std::tm a = {0,0,0,24,5,104}; /* June 24, 2004 */
   struct std::tm b = {0,0,0,5,6,104}; /* July 5, 2004 */
   std::time_t x = std::mktime(&a);
   std::time_t y = std::mktime(&B);
   if ( x != (std::time_t)(-1) && y != (std::time_t)(-1) )
   {
	 double difference = std::difftime(y, x) / (60 * 60 * 24);
	 //std::cout << std::ctime(&x);
	 //std::cout << std::ctime(&y);
	 std::cout << "Diferenca = " << difference << " dias" << std::endl;
   }
   return 0;
}
Referência: http://www.daniweb.com/forums/thread7813.html#

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como você está fazendo a leitura das datas??

fiz uma procura pela net e não vi nenhuma função pronta para isso, + a gente desenvolve juntos.

 

[]s

 

---

Bom

#include <iostream>
#include <ctime>

int main()
{
   struct std::tm a = {0,0,0,24,5,104}; /* June 24, 2004 */
   struct std::tm b = {0,0,0,5,6,104}; /* July 5, 2004 */
   std::time_t x = std::mktime(&a);
   std::time_t y = std::mktime(&B);
   if ( x != (std::time_t)(-1) && y != (std::time_t)(-1) )
   {
	 double difference = std::difftime(y, x) / (60 * 60 * 24);
	 //std::cout << std::ctime(&x);
	 //std::cout << std::ctime(&y);
	 std::cout << "Diferenca = " << difference << " dias" << std::endl;
   }
   return 0;
}
Referência: http://www.daniweb.com/forums/thread7813.html#

 

 

Talvez eu tenha explicado direito no tópico, é a primeira vez que estou utilizando o forum, estou cursando Sistemas de Informação e tenho um trabalho em C++ que:

Preciso ler, valor do titulo, data vencimento, data atual(Pegar data automaticamente), % juros diarios , e se considera somente dias uteis ou todos.

O resultado do programa é o valor dos juros a serem pagos.

Como é o ínicio da cadeira a instrução que temos é pegar a data de vencimento assim:

scanf("%02i/%02i/%4d\i",diaatu,mesatu,anoatu); ou seja ler 3 inteiros.

Mas se tiver outra maneira beleza, mas no geral é isso que preciso fazer, o programa seria barbada se não tivesse esse negócio de datas.

Muito Obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O código para retornar as diferentes já temos, e o código para pegar a data do sistema é essa:

#include <Windows.h>
#include <stdio.h>

int main(){
    SYSTEMTIME st;
    GetSystemTime(&st);
    printf("Year:%d\nMonth:%d\nDate:%d" ,st.wYear,st.wMonth,st.wDay);
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

beleza, a maioria desses comandos não vimos ainda, vou ter que pesquisar para ver como trabalhar com eles, por exemplo, std::cout << "Diferenca = " << difference << " dias" << std::endl; nem idéia do que faz isso.

Se alguém tiver algum exemplo que e consiga utilizar pegar essa diferença podem postar.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom no seu tópico você disse C++ então pensei que saberia pra que o 'cout' serve;

 

é C ou C++??

 

a data do sistema você vai ter q utilizar um código parecido com o q te passei.

agora para calcular a diferença claro que usando a lógica da pra fazer uma procedure um pouco extensa que faça isso;

 

[]s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como faço para pegar os dias da semana em c?

Consegui fazer a diferença de dias, agora a única coisa que falta é contar quantos dias são úteis, esquecendo os feriados.

Não tenho nem idéia de como começar.

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.