Título: 300 - C++ Solución Th3_Cr0w
Publicado por: 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. /**************************************************** * 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; }
Título: Re: 300 - C++ Solución Th3_Cr0w
Publicado por: RadicalEd en 22 Septiembre 2005, 02:19 am
#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); }
|