Ejercicios resueltos en C++

Ejercicios resueltos de C++, poco a poco iré agregando nuevos ejercicios.


Publicado: Editado: Estado:

Dev-C ++ es un entorno con todas las funciones de desarrollo integrado (IDE) para el lenguaje de programación C C / ++. Se utiliza el puerto Mingw de GCC (GNU Compiler Collection), ya que es compilador. Dev-C ++ también se puede utilizar en combinación con Cygwin o cualquier otro compilador basado en GCC. (Descargar)

Ejemplo #1

Este primer ejemplo consiste en aprender como se declaran las funciones, como se utilizan, ademas veremos librerías importantes para acentuar palabras o como las "Ñ" en lenguaje español. El #include <windows.h>using namespace std; pone a su disposición los objetos cout y cin, el #include <locale.h> para utilizar los acentos.

#include <iostream>/*Librería, in out stream que se usa para las lineas cout y cin*/
#include <windows.h>/*Librería específico de Windows que contiene las funciones Windows API*/
#include <locale.h>/*Librería para establecer la configuración regional actual*/
using namespace std;
int suma(int, int);/*Se declara la función suma*/

/*Todo lo que está en el main se va a ejecutar*/
int main(){
    setlocale(LC_CTYPE, "Spanish");/*Para poder utilizar los acentos*/ 
    int num1, num2;/*Se declara los campos que digitará el usuario*/
   
    cout<<"Escriba el primer número: ";
    cin>> num1;
   
    cout<<"Escriba el segundo número: ";
    cin>> num2;

    cout<<"La suma es: "<< suma(num1, num2)<<"\n";/*Llama a la función y envía los 2 números*/
    system("pause");/*Congela el resultado para que puedas verlo*/
}

/*Función suma que recibe los dos números y retorna el total de la suma*/
int suma(int a, int b){
    int c;/*Declaro "c" privada para la función*/
    c = a + b;
    return c;
}

Ejemplo #2

El promedio de N notas, utiliza funciones, do while, arreglos 

#include <iostream>
#include <windows.h>
using namespace std;

/*Declaras la función al mismo tiempo calcula el promedio*/
/*Si quieres cambiar de posición por ejemplo ubicarla abajo*/
/*no lo podras hacer y te daría un error, ya que las funciones*/
/*se declaran antes del main*/
float promedio(int valores[], int cantidad) {
    int i;
    float suma = 0.0;

    /*El ciclo for cuenta el número de notas que desea promediar*/
    for (i = 0; i < cantidad; ++i)
        suma += valores[i];/*Suma las notas ingresadas*/

    return suma / (float) cantidad;/*La suma total de notas entre la cantidad de notas*/
}

int main() {

    /*Se declaran las variables y se establece un espacio*/
    int notas[10];
    char nombre[20];
    char opcion[3];
    int n, i;

    /*Se inicia la sentencia do while*/
    do{
        /*Se piden los datos para que ingrese el usuario*/
        cout<<"Escriba el nombre del alumno: ";
        cin>> nombre;

        cout<<"Cuantas notas tiene "<<nombre<<"? ";
        cin>> n;

        /*ciclo for te pide en pantalla las notas, según la cantidad que ingresastes*/
        for (i = 0; i < n; ++i) {
            cout<<"  Nota "<< i + 1<<": ";
            cin>> notas[i];
        }

        /*Llamas a la función promedio y le das los parámetros y te muestra el resultado*/
        cout<<"El promedio de "<<nombre<<" es: "<< promedio(notas, n)<<"\n";

        /*Te pide si deseas seguir calculando promedios que este dato lo almacena opcion*/
        cout<<"Desea calcular mas promedios (si/no)? ";
        cin>> opcion;

    }
    /*While es el ciclo que si el usuario ingres s o S el ciclo iniciará una vez más*/
    /*si el usuario elige No el ciclo se detendra*/
    while (opcion[0] == 's' || opcion[0] == 'S');
    return 0;
}

Ejemplo #3

Calcular el factorial de un número entero positivo (n!). El factorial de 5, 5! = 5 x 4 x 3 x 2 x 1 osea: 5! = 120 

#include <iostream>
#include <windows.h>
using namespace std;
6
int main(void){
    /*Declaro las variables*/
    int i=0, fact=1, n=0;

    cout<<"Escriba el numero para calcular el Factorial: ";
    cin>> n;

    /*Un for que multiplica el factorial de un número*/
    for (i=1;i<=n;++i){
       fact=fact*i;
    }

    /*Muestra el resultado en pantalla*/
    cout<<"El Factorial de "<<n <<" es "<<fact<<"\n";
    system("pause");
}

Ejercicio #4

Desarrolle una estructura que guarde los datos de "N" alumnos de la materia de Estructuras de Datos, y los muestres por pantalla, la estructura debe tener (cedula, nombre, apellido, edad, profesión, lugar de nacimiento, dirección y teléfono).  

#include <iostream>
#include <windows.h>
#define max 100 /*Constante*/
using namespace std;

int main(void){
    /*Declara las variables para los ciclo for*/
    int i = 0, n = 0;

    /*Declara estructura persona*/
    struct persona{
        char cedula[14];
        char nombre[15];
        char apellido[15];
        int edad;
        char profesion[20];
        char lugar[50];
        char direccion[50];
        int telefono;
    };
    /*Declara alumno, arreglo de la estructura persona*/
    struct persona alumno[max];

    /*Se pide cuantos registros de alumnos se guardaran*/
    cout<<"Cuantos datos desea introducir?/n";
    cin>> n;

    /*Ciclo for que va a recorrer según la cantidad escrita anteriormente*/
    for (i = 0; i < n; i++){
        cout<<"\nEscriba la Cedula "<< i+1<<":";
        cin>> alumno[i].cedula;
  
        cout<<"\nEscriba el Nombre "<< i+1<<":";
        cin>> alumno[i].nombre;
  
        cout<<"\nEscriba el Apellido "<< i+1<<":";
        cin>> alumno[i].apellido;

        cout<<"\nEscriba la Edad de "<< i+1<<":";
        cin>> alumno[i].edad;
  
        cout<<"\nEscriba la Profesion de "<< i+1<<":";
        cin>> alumno[i].profesion;
  
        cout<<"\nEscriba el Lugar de Nacimiento de "<< i+1<<":";
        cin>> alumno[i].lugar;
  
        cout<<"\nEscriba la Direccion de "<< i+1<<":";
        cin>> alumno[i].direccion;
  
        cout<<"\nEscriba el Telefono de "<< i+1<<":";
        cin>> alumno[i].telefono;
    }

    cout<<"/nEl registro de Alumnos que se introdujeron son: \n\n";

    /*Ciclo for que muestra el listado de registro ingresados*/
    for (i = 0; i < n; i++){
        /*Se llama al arreglo alumno seguido de la variable cedula*/
        cout<< alumno[i].cedula;
        cout<<"\t"<<alumno[i].nombre;
        cout<<"\t"<<alumno[i].apellido;
        cout<<"\t"<<alumno[i].edad;
        cout<<"\t"<<alumno[i].profesion;
        cout<<"\t"<<alumno[i].lugar;
        cout<<"\t"<<alumno[i].direccion;
        cout<<"\t"<<alumno[i].telefono<<"\n\n";
   }
   
   system("pause");
}

Ejercicio #5

Escriba un programa que en una estructura guarde los datos de 5 amigos (as) suyos (as) y los muestre en pantalla, utilizando para ello un arreglo de estructura, la misma estructura contendrá (Nombre, Apellido, Edad, Sexo, Dirección, y Teléfono).

#include <iostream>
#include <windows.h>
#define max 100 /*Constante*/
using namespace std;

int main(void){
    /*Declara las variables para los ciclo for*/
    int i = 0;

    /*Declara estructura persona*/
    struct persona{
        char nombre[15];
        char apellido[15];
        int edad;
        char sexo;
        char direccion[50];
        int telefono;
    };
    /*Declara alumno, arreglo de la estructura persona*/
    struct persona amigo[max];

    /*Ciclo for que va a recorrer 5 veces*/
    for (i = 0; i < 5; i++){

        cout<<"\nEscriba 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 la Direccion de "<< i+1<<":";
        cin>> amigo[i].direccion;

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

    cout<<"/nEl registro de Alumnos que se introdujeron son: \n\n";

    /*Ciclo for que muestra el listado de 5 registro ingresados*/
    for (i = 0; i < 5; i++){
        /*Se llama al arreglo amigo seguido de la variable*/
        cout<<"\t"<<amigo[i].nombre;
        cout<<"\t"<<amigo[i].apellido;
        cout<<"\t"<<amigo[i].edad;
        cout<<"\t"<<amigo[i].sexo;
        cout<<"\t"<<amigo[i].direccion;
        cout<<"\t"<<amigo[i].telefono<<"\n\n";
   }

   system("pause");
}
Bibliografía
  1.  Ejercicios inventados
  2. Algunos tomados de la web y modificados
  3. Otros de Libros luego mencionaré el autor
Dar puntos de agradecimiento
Reportar esta publicación

Déjanos tu comentario

Comentarios (1)

Muchas gracias Mario, estos ejercicios me han servido de mucho.

mariogarcia

(Administrador)

Intereses

música, diseño, programación, electrónica, historia, geografía

Puntos: 146 Votos: 113