65. C++ || Estructuras ejercicios




96. Hacer una estructura en C++ que registre los datos de cinco personas como: Nombre, apellido, edad, sexo y teléfono.

#include <iostream>
using namespace std;

struct persona{
        char nombre[15];
        char apellido[15];
        int edad;
        char sexo[15];
        int telefono;
};

int main(){
    persona amigo[5];
    for (int i = 0; i < 5; i++){
        cout <<"Escriba el Nombre "<<i+1<<":";
        cin >> amigo[i].nombre;

        cout <<"\nEscriba el Apellido "<<i+1<<":";
        cin >> amigo[i].apellido;

        cout <<"\nEscriba la Edad de "<<i+1<<":";
        cin >> amigo[i].edad;

        cout <<"\nEscriba el sexo "<<i+1<<":";
        cin >> amigo[i].sexo;

        cout <<"\nEscriba el Telefono de "<<i+1<<":";
        cin >> amigo[i].telefono;
        
        cout <<endl;
    }

    cout<<"El registro de personas que se introdujeron es: \n\n";

    for (int i = 0; i < 5; i++){
        cout<<"\t"<<amigo[i].nombre;
        cout<<"\t"<<amigo[i].apellido;
        cout<<"\t"<<amigo[i].edad;
        cout<<"\t"<<amigo[i].sexo;
        cout<<"\t"<<amigo[i].telefono<<"\n\n";
   }
   
   return 0;
}

97. Hacer un programa en C++ para registrar los datos de tres libros como: título, autor, año y color del libro. El color se deberá hacer mediante una enumeración y sólo habrá rojo, verde y azul.

#include <iostream>
using namespace std;

enum Color{
 rojo,verde,azul
};

struct Libro{
 char titulo[20],autor[20];
 int anio;
 Color color;
};

void datosLibro(Libro[]);
void mostrarLibro(Libro[]);

int main(){
 Libro libro[3];
 datosLibro(libro);
 mostrarLibro(libro);
   
   return 0;
}

void datosLibro(Libro libro[3]){
 for(int i = 0; i < 3; i++){
  cout <<"Titulo libro " <<i+1 <<endl;
  cin.getline(libro[i].titulo,20);
  cout <<"Autor libro " <<i+1 <<endl;
  cin.getline(libro[i].autor,20);
  cout <<"Año libro " <<i+1 <<endl;
  cin >> libro[i].anio;
  cin.ignore();
 }
 libro[0].color = rojo;
 libro[1].color = verde;
 libro[2].color = azul;
}

void mostrarLibro(Libro libro[3]){
 for(int i = 0; i < 3; i++){
  cout <<"Titulo: " <<libro[i].titulo <<endl;
  cout <<"Autor: " <<libro[i].autor <<endl;
  cout <<"Año: " <<libro[i].anio <<endl;
  
  switch(libro[i].color){
   case rojo: 
    cout <<"Color: Rojo" <<endl; break;
   case verde:
    cout <<"Color: Verde" <<endl; break;
   case azul:
    cout <<"Color: Azul" <<endl; break;
  }
 }
}

98. Hacer estructuras anidadas para registrar los datos de un trabajador y de una persona sin oficio.

#include <iostream>
using namespace std;

struct Fecha{
 int dia,mes,anio;
};

struct Persona{
 char nombre[20];
 int edad,peso;
 Fecha fecha;
}persona = {"Cindy",20,45,2,12,1997};

struct Empleado{
 Persona persona;
 int salario;
}trabajador = {"Steven",19,60,22,7,1998,1000};

int main(){
 cout <<"Persona: " <<persona.nombre;
 cout <<"\nEdad: " <<persona.edad;
 cout <<"\nPeso: " <<persona.peso;
 cout <<"\nDia nacimiento: " <<persona.fecha.dia;
 cout <<"\nMes nacimiento: " <<persona.fecha.mes;
 cout <<"\nAño nacimiento: " <<persona.fecha.anio;
 
 cout <<"\n\n----------Trabajador----------" <<endl;
 
 cout <<"\nTrabajador: " <<trabajador.persona.nombre;
 cout <<"\nEdad: " <<trabajador.persona.edad;
 cout <<"\nPeso: " <<trabajador.persona.peso;
 cout <<"\nDia nacimiento: " <<trabajador.persona.fecha.dia;
 cout <<"\nMes nacimiento: " <<trabajador.persona.fecha.mes;
 cout <<"\nAño nacimiento: " <<trabajador.persona.fecha.anio;
 cout <<"\nSalario: " <<trabajador.salario;
   
   return 0;
}

99. Hacer un programa que establesca las coordenadas de una curva en el dominio [-3,3]. El programa sólo deberá pedir la altura que tenga en el punto del dominio, luego, mostrar las coordenadas resultantes.

#include <iostream>
using namespace std;

struct Punto{
 int x,y;
};

int main(){
 Punto punto[7] = {0,0};
 
 for(int i = 0; i < 7; i++){
  cout <<"Introduce la altura de la curva en " <<i - 3;
  cout <<": ";
  cin >> punto[i].y;
  cout <<endl;
 }
 
 cout <<"Las coordenadas son: " <<endl;
 
 for(int i = 0; i < 7; i++){
  cout <<"(" <<i - 3 <<"," <<punto[i].y <<")\n";
 }
   
   return 0;
}

100. Hacer un programa donde se ingrese la fecha actual y se comprube si corresponde al día de tu cumpleaños. Mostrar un mensaje de felicitaciones en tal caso.

#include <iostream>
using namespace std;

struct Fecha{
 int dia,mes,anio;
};

int main(){
 Fecha hoy, cumpleanios;
 cout <<"Ingrese la fecha de hoy" <<endl;
 cout <<"Dia: "; cin >> hoy.dia;
 cout <<"Mes: "; cin >> hoy.mes;
 cout <<"Año: "; cin >> hoy.anio;
 
 cout <<"Ingrese su cumpleaños" <<endl;
    cout <<"Dia: "; cin >> cumpleanios.dia;
 cout <<"Mes: "; cin >> cumpleanios.mes;
 cout <<"Año: "; cin >> cumpleanios.anio;
 
 if(cumpleanios.dia == hoy.dia){
  if(cumpleanios.mes == hoy.mes){
   cout <<"FELIZ CUMPLEAÑOS. FELICITACIONES!!!!" <<endl;
  }else{
   cout <<"Hoy es el mismo dia de tu cumpleaños." <<endl;
   cout <<"Pero de diferente mes. ";
  }
 }else{
  cout <<"Hoy no es tu cumpleaños." <<endl; 
 }
   return 0;
}

7 comentarios:

  1. excelente ejemplos gracias totales

    ResponderEliminar
  2. Implementar en C++ un programa que maneje un arreglo de estructuras para almacenar
    las fechas de cumpleaños de n cantidad de amigos. Los datos a almacenar sobre cada
    amigo son nombre, día, mes y año. El programa debe indicarnos cuántos de nuestros
    amigos cumplen años un día y mes determinados introducidos por teclado.

    Me pueden ayudar a hacer ese problema en Dev C++

    ResponderEliminar
    Respuestas
    1. Creo que es muy tarde XD pero aquí mando mi código
      #include
      #include
      #include
      using namespace std;


      struct Amigos{
      char nombre[20];
      int dia,mes,anio;

      }amigos[100],Dia,Mes;

      int main(){

      setlocale(LC_CTYPE, "spanish");
      cout.precision(12);

      int amigosUsuario,totalAmigos = 0;

      cout << "Digite la cantidad de amigos a procesar: ";
      cin >> amigosUsuario;

      cout << "\nDigite el dia de cumpleaños a procesar: ";
      cin >> Dia.dia;

      cout << "Digite el mes de cumpleaños a procesar: ";
      cin >> Mes.mes;

      cout << "\n";
      for (int i = 0; i < amigosUsuario; i++){
      fflush(stdin);
      cout << "\n.:Amigo #"<> amigos[i].dia;

      cout << "Mes: ";
      cin >> amigos[i].mes;

      cout << "Año: ";
      cin >> amigos[i].anio;

      if ( amigos[i].dia == Dia.dia){
      if(amigos[i].mes == Mes.mes){
      totalAmigos++;
      }
      }
      cout << "\n";
      }

      //imprimiendo datos
      cout << "La cantidad de amigos que cumplen años en el dia y fecha a procesar son: " << totalAmigos++ << endl;

      cout << "\n";
      system("pause");
      return 0;

      }

      por si a alguien mas le sirve, y si ven algun error en el codigo me dicen para corregirlo, ya que todavia estoy aprendiendo. Gracias!

      Eliminar
  3. Transcriba un programa que lea un conjunto de hileras de caracter de longitud arbitraria.Para cada hilera leida, su programa debe hacer lo siguiente:
    a. imprimir la longitud de la hilera
    b. contar e numero de veces que aparecen palabras de cuatro letras en cada hilera.
    c. reemplazar cada palabra de cuatro letras por una hilera de cuatro asteriscos e imprimir la nueva hilera

    me ayudas

    ResponderEliminar
  4. buenas tarde, me pueden ayudar con este ejercicio por favor.
    Realice un algoritmo considerando como volver a casa una vez que ha
    Salido del parque donde se encontraba pasando un momento de
    Distracción. Considere los casos: a) no tenía dinero para regresar a casa,
    b) Tenía poco dinero y c) tenía mucho dinero. . Recuerde colocar la
    Estructura selectiva correspondiente.


    ResponderEliminar
  5. Su catedrático le pide apoyo para crear un programa que permita calcular su nota final del curso de programación 3. El programa debe permitir el ingreso de cualquier cantidad de alumnos y para cada alumno, se podrá ingresar la nota del primer parcial, segundo parcial, tareas y examen final. En resumen, deberá ingresar al programa, el nombre del alumno, su carné, parcial1, parcial2, tareas, examen final.



    i. Ingresar los datos al árbol AVL

    ii. Buscar datos en el árbol AVL

    iii. Mostrar el árbol AVL Vertical

    iv. Salir



    Cada nodo del árbol debe tener la información del alumno (nombre, carnet, parcial1, parcial2, tareas, examen final).

    ResponderEliminar