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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Ejercicios
| | | |-+  300 - C++ Solución Th3_Cr0w
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: 300 - C++ Solución Th3_Cr0w  (Leído 3,910 veces)
Th3_Cr0w
Ex-Staff
*
Desconectado Desconectado

Mensajes: 1.479



Ver Perfil
300 - C++ Solución Th3_Cr0w
« en: 5 Mayo 2005, 23:03 pm »

Lo he programado para windows. Si quereis que lo adapte a linux (es cambiar dos lineas) decídmelo.

Código:
/****************************************************
 *                  EJERCICIO 300                   *
 *                 AUTOR: Th3_Cr0w                  *
 ****************************************************/

#include <iostream.h>
#include <stdlib.h>
#include <string>

int main()
{

      string fecha;        // Fecha introducida por el usuario.
      int idia, imes;      // Contienen dia y fecha pasadas a entero.
      int i, contdias = 0; //Contadores
      string sdia, smes;   // En ellas se extrae el día y el mes de la fecha.

      /* El usuario introduce la fecha */
      cout << endl;
      cout << " Introduce una fecha (DD-MM-AAAA).\n";
      cout << " Fecha: ";
      cin >> fecha;
      cout << endl;

      /* Se extraen las subcadenas de caracteres correspondientes a día y mes */
      sdia = fecha.substr(0,2);
      smes = fecha.substr(3,2);

      /* Las cadenas "día" y "mes" son convertidas a enteros */
      idia = atoi(sdia.c_str());
      imes = atoi(smes.c_str());


      for(i = 1; i < imes; i++) // Desde el primer mes del año hasta el anterior al introducido.
      {
         switch(i) // Si el mes es...
         {
           case 2:            // Febrero:
             contdias += 28;  // Mes de 28 días. Lo sumamos al contador.
             break;

           case 4:            // Abril:
           case 6:            // Junio:
           case 9:            // Septiembre:
           case 11:           // Noviembre:
             contdias += 30;  // Mes de 30 días. Lo sumamos al contador.
             break;

           default:           // El resto de los meses:
             contdias += 31;  // Mes de 31 días. Lo sumamos al contador.
         } // Fin del switch
      } // Fin del for

      /* Se suman al contador los días que han pasado durante el mes actual */
      contdias += (idia - 1);

      /* Se muestra el resultado por pantalla */
      cout << " Han pasado " << contdias << " dias desde el inicio del año.\n\n";

      system("PAUSE");
      return 0;
}


En línea

RadicalEd

Desconectado Desconectado

Mensajes: 19



Ver Perfil WWW
Re: 300 - C++ Solución Th3_Cr0w
« Respuesta #1 en: 22 Septiembre 2005, 02:19 am »

Código:
#include <stdio.h>
#include <windows.h>
int main(void)
{
 int tdias=0, meses[12], c, iDia, iMes;
 meses[0]=31;
 meses[1]=28;
 meses[2]=31;
 meses[3]=30;
 meses[4]=31;
 meses[5]=30;
 meses[6]=31;
 meses[7]=31;
 meses[8]=30;
 meses[9]=31;
 meses[10]=30;
 meses[11]=31;
 printf("Digite dia: ");
 scanf("%d",&iDia);
 printf("Digite mes: ");
 scanf("%d",&iMes);
 for(c=0;c<=iMes-1;c++)
 {
  tdias=tdias+meses[c];
 }
 printf("total dias hasta la fecha: %d",tdias);
 Sleep(2000);
}


En línea

Erik# el más inteligente de todos, ya empezó su lenguaje script y ahora quiere empezar un lenguaje esóterico
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines