Вы находитесь на странице: 1из 4

Problema 1.

// Programa que lee un ao y muestra si es o no bisiesto


#include <iostream>
using namespace std;

int bisiesto(int); //declaracin o prototipo de la funcin

int main()
{
int anio;
cout<<"Introduce a"<<(char)164<<"o: "; //164 ascii de
cin >> anio;
if(bisiesto(anio)) //llamada a la funcin
cout << "Bisiesto" << endl;
else
cout << "No es bisiesto" << endl;

int bisiesto(int a) //definicin de la funcin


{
if(a%4==0 and a%100!=0 or a%400==0)
return 1;
else
return 0;
}

Problema 2.

// Programa C++ que lee la fecha actual y la fecha de nacimiento


// de una persona y calcula su edad

#include <iostream>
using namespace std;

int bisiesto(int);
int fecha_valida(int , int, int);
int calcular_edad(int, int, int, int, int, int);

int main()
{
int diaa, mesa, anioa, dian, mesn, anion, edad;

do
{
cout << "Introduce fecha actual: " << endl;
cout << "dia : "; cin >> diaa;
cout << "mes : "; cin >> mesa;
cout << "a" << (char)164 << "o: "; cin >> anioa;
}while(!(fecha_valida(diaa, mesa, anioa)));
do
{
cout << endl << "Introduce fecha de nacimiento: " << endl;
cout << "dia : "; cin >> dian;
cout << "mes : "; cin >> mesn;
cout << "a" << (char)164 << "o: "; ; cin >> anion;
}while(!(fecha_valida(dian, mesn, anion)));

edad = calcular_edad(diaa, mesa, anioa, dian, mesn, anion);


cout << endl << "Edad : " << edad << endl << endl;
return 0;
}

int calcular_edad(int da, int ma, int aa, int dn, int mn, int an)
{
int edad = aa - an;
if(ma < mn)
edad--;
else if(ma == mn and da < dn)
edad--;
return edad;

int bisiesto(int a) // definicin de la funcin bisiesto


{
if(a%4==0 and a%100 !=0 or a%400==0)
return 1;
else
return 0;
}

int fecha_valida(int d, int m, int a) //definicin de fecha_valida


{
if(d < 1 or d > 31 or m < 1 or m > 12 or a < 1)
{
return 0;
}

switch(m)
{
case 4:
case 6:
case 9:
case 11: if(d > 30)
{
return 0;
}
break;
case 2: if(bisiesto(a))
{
if(d > 29)
{
return 0;
}
}
else if(d > 28)
{
return 0;
}
break;
}
return 1;
}

Problema 3.

#include <iostream>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
using namespace std;

int lanzadados( void ); // funcin prototipo

main()
{
enum Estado { CONTINUAR, GANA, PIERDE };
int suma, puntaje;
Estado EstadoJuego;

srand( time( NULL ) );


suma = lanzadados(); // Primer lanzamiento del dado
switch ( suma ) {
case 7:
case 11: // gana al primer lanzamiento
EstadoJuego = GANA;
break;
case 2:
case 3:
case 12: // pierde al primer lanzamiento
EstadoJuego = PIERDE;
break;
default: //Continua el juego
EstadoJuego = CONTINUAR;
puntaje = suma;
cout << "El puntaje es " << puntaje << endl;
break; // opcional
}

while ( EstadoJuego == CONTINUAR )


{ // sigue lanzando
suma = lanzadados();
if ( suma == puntaje ) // gana al llegar al punto
EstadoJuego = GANA;
else
if ( suma == 7 ) // pierde al tirar 7
EstadoJuego = PIERDE;
}

if ( EstadoJuego == GANA )
cout << "El jugador gana" << endl;
else
cout << "El jugador pierde" << endl;
getch();
}

int lanzadados( void )


{
int valordado1, valordado2, sumadados;
valordado1 = 1 + rand() % 6;
valordado2 = 1 + rand() % 6;
sumadados = valordado1 + valordado2;
cout << "Tirada del jugador " << valordado1 << " + " << valordado2
<< " = " << sumadados << endl;
return sumadados;
}

Вам также может понравиться