elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Programa que calcule la diferencia de días entre dos fechas
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Programa que calcule la diferencia de días entre dos fechas  (Leído 13,116 veces)
davisinful

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Programa que calcule la diferencia de días entre dos fechas
« en: 9 Noviembre 2011, 22:53 pm »


HOLA AMIGOS NECESITO REALIZAR UN PROGRAMA QUE CALCULE EL NUMERO DE DIAS UTILIZANDO FUNCIONES UNICAMENTE PARA EL AÑO 2011
SE DEBERAN VALIDAR LOS MESES Y EL AÑO OJO 2011
PERO PARA LA FECHA (DIA,MES,AÑO) Y PARA LA FECHA 2 DEBO UTILIZAR LA MISMA FUNCION ES UN TRABAJO Q MI PROFESOR ME ENVIO LO CUAL NO COMPRENDO MUCHO:
EJEM HOY ES 9 DE SEP DEL 2011 FECHA 1
        OTRA FECHA 7 DE SEP DEL 2011 LA DIFERENCIA DE DIAS ES 2 DIAS


AQUI LES DEJO UN PROGRAMA QUE ES SIMILIAR AL PEDIDO Y QUE TIENE LA METODOLOGIA QUE EL PROFESOR APLICA. PORFA VOR AYUDA. GRACIAS

#include <stdio.h>

int validadia ();
int validames ();
int validaanio ();
int dias(int d, int m);
void nombredia(int acu);
void nombremes (int mm);
void main ()
{
  int d,m,a,acudias;
  d=validadia();
  m=validames();

  while ((m==2)&&(d>28))
  {
    printf ("Febrero solo tiene 28 días... Ingrese día ==>  ");
    scanf("%d",&d);
  }



  while (((m==4)||(m==6)||(m==9)||(m==11))  &&(d>30))
  {
    printf ("Estos mese solo tienen 30 días... Ingrese día ==>  ");
    scanf("%d",&d);
  }
  a=validaanio();

  acudias=dias(d,m);

  acudias%=7;

  nombredia(acudias);

  printf ("\n Fecha ingresada dia %d mes ",d);
  nombremes(m);
  printf("año %d",a);
}

int validadia ()
{
  int dd;
  do{
  printf("Ingrese dia ==>  ");
  scanf("%i",&dd);
  }while ((dd>31)||(dd<0));
  return dd;
  }
int validames ()
{
  int mm;
  do{
  printf("Ingrese mes ==>  ");
  scanf("%i",&mm);
  }while ((mm>12)||(mm<0));
  return mm;
}
int validaanio ()
{
  int aa;
  do{
  printf("Ingrese año ==>  ");
  scanf("%i",&aa);
  }while (aa!=2011);
  return aa;
}
int dias (int dd, int mm)
{
  int acu=0;

  switch (mm)
  {
    case 1: acu=dd;
       break;
    case 2: acu=31+dd;
       break;
    case 3: acu=59+dd;
       break;
    case 4: acu=90+dd;
       break;
    case 5: acu=120+dd;
       break;
    case 6: acu=151+dd;
       break;
    case 7: acu=181+dd;
       break;
    case 8: acu=212+dd;
       break;
    case 9: acu=243+dd;
       break;
    case 10: acu=273+dd;
       break;
    case 11: acu=304+dd;
       break;
    case 12: acu=334+dd;
       break;

  }
  return acu;
}


void nombredia(int acu)
{
  switch (acu)
  {
    case 3: printf ("Lunes");
       break;
    case 4: printf ("Martes");
       break;
    case 5: printf ("Miercoles");
       break;
    case 6: printf ("Jueves");
       break;
    case 7: printf ("Viernes");
       break;
    case 1: printf ("Sabado");
       break;
    case 2: printf ("Domingo");
       break;
  }
}

void nombremes(int mm)
{
  switch (mm)
  {
    case 1: printf ("Enero");
       break;
    case 2: printf ("Febrero");
       break;
    case 3: printf ("Marzo");
       break;
    case 4: printf ("Abril");
       break;
    case 5: printf ("Mayo");
       break;
    case 6: printf ("Junio");
       break;
    case 7: printf ("Julio");
       break;
    case 8: printf ("Agosto");
       break;
    case 9: printf ("Septiembre");
       break;
    case 10: printf ("Octubre");
       break;
    case 11: printf ("Noviembre");
       break;
    case 12: printf ("Diciembre");
       break;
  }
}


En línea

..:ALT3RD:..

Desconectado Desconectado

Mensajes: 205


C++ Programmer


Ver Perfil
Re: Programa que calcule la diferencia de días entre dos fechas
« Respuesta #1 en: 9 Noviembre 2011, 22:55 pm »

Creo que se podría simplicar el codigo.


En línea

"Mañana sabrás que hoy no sabes nada"
rir3760


Desconectado Desconectado

Mensajes: 1.639


Ver Perfil
Re: Programa que calcule la diferencia de días entre dos fechas
« Respuesta #2 en: 10 Noviembre 2011, 00:57 am »

AQUI LES DEJO UN PROGRAMA QUE ES SIMILIAR AL PEDIDO Y QUE TIENE LA METODOLOGIA QUE EL PROFESOR APLICA. PORFA VOR AYUDA. GRACIAS
Simplifica el programa al maximo empezando por quitar la parte que imprime el mes.

Despues de eso solo debes verificar cual fecha es menor y restar esta a la otra. El proceso es similar al calculo de la diferencia entre dos fechas. De ella puedes encontrar bastantes ejemplos en la red.

Un saludo
« Última modificación: 10 Noviembre 2011, 01:01 am por rir3760 » En línea

C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Calcular días entre dos fechas...
Ejercicios
*-.Sub-Vorbio.-* 0 5,023 Último mensaje 13 Noviembre 2008, 00:51 am
por *-.Sub-Vorbio.-*
Calcular numero de días entre dos fechas!
Java
*-.Sub-Vorbio.-* 9 40,144 Último mensaje 26 Marzo 2009, 23:34 pm
por Choclito
Ayuda con un programa que calcule la diferencia entre dos fechas
Programación C/C++
davisinful 1 4,595 Último mensaje 10 Noviembre 2011, 09:15 am
por do-while
Pasar string a time. Número de días entre dos fechas
Programación C/C++
capitandelpanel 5 4,200 Último mensaje 3 Junio 2015, 16:21 pm
por rir3760
Diferencia entre fechas
Bases de Datos
M4RQUS 1 2,677 Último mensaje 10 Octubre 2017, 17:24 pm
por Carloswaldo
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines