Untitled
Untitled
Untitled
3
Laboratorio Funciones en C++
I
OBJETIVOS
● La presente práctica de laboratorio tiene como objetivo el uso de funciones en C++ y
diferenciar los conceptos de funciones, métodos y procedimientos.
II
TEMAS A TRATAR
● Funciones en C++.
● Métodos.
● Procedimientos.
● Ejercicios de Funciones.
III
MARCO TEÓRICO
❖ INTRODUCCIÓN:
Una función es un bloque de código que realiza alguna operación. Una función puede
definir opcionalmente parámetros de entrada que permiten a los llamadores pasar
argumentos a la función. Una función también puede devolver un valor como
salida. Las funciones son útiles para encapsular las operaciones comunes en un solo
bloque reutilizable, idealmente con un nombre que describa claramente lo que hace la
función. La siguiente función acepta dos enteros de un llamador y devuelve su
suma; a y b son parámetros de tipo int.
No hay ningún límite práctico para la longitud de la función, pero un buen diseño
tiene como objetivo funciones que realizan una sola tarea bien definida. Los
algoritmos complejos deben dividirse en funciones más sencillas y fáciles de
comprender siempre que sea posible.
IV
ACTIVIDADES
● Consideraciones: Instalar un IDE para la programación de C++. Puede ser Zinjal,
Visual Studio 2019, entre otros.
● ACTIVIDAD 2.
● ACTIVIDAD 2.
V
EJERCICIOS RESUELTOS
● EJERCICIO 1.
Crear un programa en c++ que permita el ingreso por teclado la edad y que muestre en
pantalla dicha edad
#include <iostream>
using namespace std;
int main()
{
int edad;
cout << "Ingresa su edad:";
cin >> edad;
cout << "\nTu edad es: " << edad;
return 0;
}
● EJERCICIO 2.
Magister Oscar Alberto Ramirez Valdez
Magister Roni Guillermo Apaza Aceituno
4
Curso: Programación de Sistemas Página:
Crear un programa en c++ que permita crear una cadena de caracteres utilizando el
tipo de dato char y que lo muestre después
#include <iostream>
using namespace std;
int main()
{
char sample[] = "ProgramacióndeSistemas";
cout << sample << " - Un excelente curso ";
return 0;
}
● EJERCICIO 3.
Crear un programa en c++ que permita el ingreso de dos números y que los sume
utilizando las funciones cout y cin, además muestre el resultado, no utilizar
operadores “::”
#include <iostream>
● EJERCICIO 4.
Crear un programa en c++ que permita la visualización y uso de un menú con seis
opciones: “Ingreso”,“Modificación”, “Consultas”, “Reportes”, “Utilidades” y “Salir”,
en cada uno mostrar un mensaje correspondiente
cout<<"1 Ingreso\n";
cout<<"2 Modificación\n";
cout<<"3 consultas\n";
cout<<"4 Reportes\n";
cout<<"5 Utilidades\n";
cout<<"6 Salir\n\n";
cin>>m;
switch(m)
{
case 1:cout<<"Ud tiene S/. 2500"<<endl;break;
case 2:cout<<"¿Que desea modificar?"<<endl;break;
case 3:cout<<"Escriba su consulta aqui: "<<endl;break;
case 4:cout<<"Ud. no presenta reportes"<<endl;break;
case 5:cout<<"Este servicio esta bloqueado por el momento"<<endl;break;
case 6:cout<<"Ya esta fuera"<<endl;break;
default: cout<<"El valor ingresado no esta en el menu"<<endl;
}
cin.ignore();return 0;
}
● EJERCICIO 5.
Crear un programa en C++ que permita la visualización de un menú de cuatro
opciones: “Opción 1”, “Opción 2”, “Opción 3” y “Opción 4”, consecutivamente hasta
que se seleccione la opción “SALIR”.
#include <iostream>
#include <cstdlib>
int main()
{
int opcion;
bool repetir = true;
do{
//system("cls");
//Texto del menú que se verá cada vez
cout << "\n\nMenu de Opciones"<< endl;
cout << "1. Opción 1" << endl;
cout << "2. Opción 2" << endl;
cout << "3. Opción 3" << endl;
cout << "4. Opción 4" << endl;
cout << "0. SALIR" << endl;
switch (opcion) {
case 1:
break;
case 2:
break;
case 3:
break;
case 4:
break;
case 0:
repetir = false;
break;
}
}while(repetir);
return 0;
}
● EJERCICIO 6.
Crear un programa en C++ que muestre un menú con 4 opciones: “Función 1”,
“Función 2”, “Función 3” y “Función 4”, cada una debe implementar una función que
muestre el mensaje: “Función X” donde X es el número de función:
#include <iostream>
#include <cstdlib>
void funcion1();
void funcion2();
void funcion3();
void funcion4();
int main()
{
int opcion;
bool repetir = true;
do
{
cout << "\n\n\t\tMenu de Opciones" << endl;
cout << "\t\t -----------------" << endl;
cout << "\n\t1. Función 1" << endl;
cout << "\t2. Función 2" << endl;
cout << "\t3. Función 3" << endl;
cout << "\t4. Función 4" << endl;
cout << "\t0. SALIR" << endl;
cout << "\n\tIngrese una opción: ";
Magister Oscar Alberto Ramirez Valdez
Magister Roni Guillermo Apaza Aceituno
7
Curso: Programación de Sistemas Página:
● EJERCICIO 7.
Crear un programa en C++ que utilice la función rand() para crear un número
aletaorio:
#include <iostream>
Magister Oscar Alberto Ramirez Valdez
Magister Roni Guillermo Apaza Aceituno
8
Curso: Programación de Sistemas Página:
#include <cstdlib>
using namespace std;
int main()
{
int a;
a = rand();
cout << a << endl;
cout << "\n\nRAND MAX para este equipo tiene un valor de: " << RAND_MAX;
return 0;
}
● EJERCICIO 8.
Crear un programa en C++ que permita crear un limite superior para una función
rand(), este limite debe ser dado para valores del 0 al 1, del 0 al 9, del 0 al 1499 y del
0 al 65535
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int valor = 0;
cout << "rand() definiendo limite superior, el rango va de 0 a (limite -1)" << endl;
valor = rand() % 2;
cout << "rand() % 2\t\t" << valor << endl;
valor = rand() %10;
cout << "rand() % 10\t\t"<< valor << endl;
valor = rand() % 1500;
cout << "rand() % 1500\t\t"<< valor << endl;
valor = rand() % 65536;
cout << "rand() % 65536\t\t"<< valor << endl;
return 0;
}
● EJERCICIO 9.
Crear un programa en C++ que permita crear un limite inferior para una función
rand(), este límite debe ser dado para los valores que van del 10 para adelante y del
65000 para adelante
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int valor = 0;
cout << "rand() definiendo limite inferior" << endl;
valor = 10 + rand();
Magister Oscar Alberto Ramirez Valdez
Magister Roni Guillermo Apaza Aceituno
9
Curso: Programación de Sistemas Página:
● EJERCICIO 10.
Crear un programa en C++ que permita crear un límite inferior y un limite superior
que va del 1 al 99, del 25 al 99 y del 0 al 50
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int valor = 0;
cout << "rand() definiendo limite inferior e inferior" << endl;
valor = 1 + rand()%100;
cout << "1 + rand()%100\t\t" << valor << endl;
valor = 25 + rand()%100;
cout << "25 + rand()%100\t\t"<< valor << endl;
valor = 0 + rand() %51;
cout << "0 + rand() %51: \t\t" << valor << endl << endl;
return 0;
}
● EJERCICIO 11.
Crear un programa en C++ que permita crear un límite inferior y un límite superior
mostrándolos a partir de una resta en la implementación del programa para valores
entre 10 y 26 y 25 y 100
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int valor = 0;
cout << "rand() definiendo limite inferior y especificando el valor del limite
superior" << endl;
valor = 10 + rand() % (26-10);
cout << "10 + rand()% (26-10)\t\t" << valor << endl;
valor = 25 + rand()% (100-25);
cout << "25 + rand()% (100-25)\t\t"<< valor << endl;
return 0;
}
● EJERCICIO 12.
Magister Oscar Alberto Ramirez Valdez
Magister Roni Guillermo Apaza Aceituno
10
Curso: Programación de Sistemas Página:
#include <iostream>
#include <cstdlib>
using namespace std;
int main()
{
int valor1, valor2, valor3;
for (int i=1; i<=3; i++) {
cout << "Corrida: " << i << endl;
valor1 = rand();
cout << "Sin semilla: " << valor1 << endl;
srand(40);
valor2=rand();
cout << "valor2: " << valor2 << endl;
valor3=rand() %100 +1;
cout << "valor3: " << valor3 << endl;
srand(1);
}
return 0;
}
● EJERCICIO 13.
Crear un programa en C++ que permita de números aleatorios utilizando la función
rand(), srand() y time() para diversas usos del programa compilado
#include <iostream>
#include <cstdlib> //rand, srand
#include <ctime> //time
using namespace std;
int main()
{
int valor = 0;
srand(time(NULL));
for (int i=1; i<=20; i++){
valor = 5 + rand()%(10-5);
cout << "Calificación Simulada" << i << ": " << valor << "\t\t\t\t";
if (i%2 == 0) cout << endl;
}
return 0;
}
● EJERCICIO 14.
Crear un programa en C++ que permita la implementación de un juego que adivine un
número secreto
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
int valorrnd = 0;
int valorusr = 0; //numero introducido por el jugador
int contador = 0; //Para registrar el numero de iteraciones
srand(time(NULL)); //Generamos semilla basada en el reloj
valorrnd = 1 + rand()%10;
cout << "Este programa genera un valor entre 1 y 10, tiene 2 oportunidades" <<
endl;
cout << "para acertar el número correcto." << endl;
do{
contador +=1;
cout << "Escribe un número entre 1 y 10" << endl;
cin >> valorusr;
if (valorusr == valorrnd) {
cout << "Ganaste!, el número es correcto" << "(" << valorrnd <<
")";
break;
}else{
cout << "Lo siento, el numero no es ese." << endl << endl;
}
}
while (contador < 2);
if(contador = 2 ){
cout << "Perdiste, más suerte para la próxima, el número es: " << valorrnd;
}
return 0;
}
● EJERCICIO 15.
Crear un programa en C++ que permita mostrar por pantalla las combianciones de
letras a y b en grupos de 3
#include <bits/stdc++.h>
using namespace std;
{
//Caso base de k es 0
//imprimir prefijo
if (k==0)
{
cout << (prefix) << endl;
return;
}
//uno a uno todos los caracteres
//desde el conjunto recursivo
//llamados desde k igual a k - 1
for (int i = 0; i < n; i ++)
{
string newPrefix;
//k es decreciendo
//porque se añadio un nuevo caracter
imprimirtodaslascadenasgrabadas(set, newPrefix, n, k - 1);
}
}
int main()
{
cout << "primera prueba" << endl;
char set1[] = {'a', 'b'};
int k =3;
imprimirtodaslascadenas(set1, k, 2);
}
VI
EJERCICIOS PROPUESTOS
● EJERCICIO 1.
● EJERCICIO 2.
● EJERCICIO 3.
● EJERCICIO 4.
a) El juego de dados conocido como “craps” (tiro perdedor) es muy popular, realice un
programa que simule dicho juego, a continuación, se muestran las reglas para los
jugadores.
● Un jugador tira dos dados. Cada dato tiene seis caras. Las caras contienen 1, 2, 3, 4,
5 y 6 puntos.
● Una vez que los dados se hayan detenido, se calcula la suma de los puntos en las
dos caras superiores.
● Si a la primera tirada, la suma es 7, o bien 11, el jugador gana.
● EJERCICIO 5.
● EJERCICIO 6.
Escriba un programa que despliegue todas las permutaciones de los números del 1 a n.
Por ejemplo, si n = 3, debe obtenerse:
● EJERCICIO 7.
Escriba un programa que despliegue todos los subconjuntos no vacíos del conjunto de
los números del 1 a n. Por ejemplo, si n = 3, debe obtenerse
VII
CUESTIONARIO
¿Para que se emplea el término return?
VIII
BIBLIOGRAFÍA
[1] P.J. Deitel and H.M. Deitel, “Cómo Programar en C++”, México, Ed. Pearson
Educación, 2009