Este primer ejercicio es sencillo, no hace falta que loe xplique pero, pide edades y pesos y al final si es mayor de 18 y menor de 30, dice cuantas personas ahi.
CLASS1.H
Código:
#ifndef CLASS1_HH_ #define CLASS1_HH_ #include <iostream.h> #include <ostream> using namespace std; class Class1{ private: std::string nombre; int edad; int personas; int peso; public: Class1(std::string nmb, int edd, int prsonas); Class1(); void Saluda(ostream& ostr, istream& istr); void Asignar_Edad(int i); int Retornar_Edad(); void Contar_Personas(); int Retornar_Personas(); }; #endif /*CLASS1_HH_*/
CLASS1.CC
Código:
MAIN.CC#include <iostream.h> #include "class1.hh" #include <ostream> using namespace std; Class1::Class1(std::string nmb, int edd, int prsonas){ nombre = nmb; edad = edd; personas = prsonas; } Class1::Class1(){ nombre= ""; edad = 0; personas =0;} void Class1::Saluda(ostream& ostr, istream& istr){ ostr << "Bienvenido al programa, esto es una prueba." << std::endl<<"Introduce tu nombre: "<<std::endl; istr >> nombre; ostr << "Bienvenido " << nombre << " ¿cuantos años tienes?" <<std::endl; istr >> edad; ostr << "Vaya "<< edad << " años ya :-o"<< std::endl; } void Class1::Asignar_Edad(int i){ edad = i; } int Class1::Retornar_Edad(){ return edad; } void Class1::Contar_Personas(){ if(edad > 18) personas++; } int Class1::Retornar_Personas(){ return personas; }
Código:
#include <iostream.h> #include "class1.hh" #include <ostream> using namespace std; int main() { Class1 ab; cout << ab.Retornar_Personas(); ab.Saluda(std::cout, std::cin); std::cout << "De acuerdo, ahora introduce edades hasta introducir un numero negativo :): "<<std::endl; do{ std::cout <<"Introduce tu edad, para ver el funcionamiento de las clases se la asignaremos a la persona que creamos anteriormente" << std::endl; int i; std::cin >> i; ab.Asignar_Edad(i); ab.Contar_Personas(); }while(ab.Retornar_Edad() > 0); int j = ab.Retornar_Personas(); std::cout<<"El numero de personas enter 18 y 30 años es de " << j << std::endl; }
para todo aquel que no lo sepa, es TOTALMENTE desaconsejable poner cin y cout en los metodos, y para mostrar como poder hacerlo, he creado el metodo saludo, para que se peuda ver como se debe hacer este tipo de cosas en los metodos de las clases :).