Está en la página 1de 7

FACULTAD DE INGENIERÍA

ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

PRACTICA 12.1: “FUNCIONES EN C++”

1. Producto esperado de la actividad


Ejercicios con Funciones en C++ resueltos.

Ejercicios Propuestos:
1. Elaborar un programa que calcule el MCD de dos números enteros.
2. Elaborar un programa para reportar todos los divisores de un número
entero.
3. Desarrollar un programa para reportar los factores primos de un número
entero.
4. Programa para ingresar un número y se reporte si es primo o no.
5. Escribir un programa que permita leer dos números y reportar si son amigos
o no. Se dice que dos números son amigos si cada uno de ellos es igual a la
suma de los divisores (menores que el número) del otro. Ejemplo 220 y 284
son amigos.
6. Realizar un menú que tenga las opciones para desarrollar los 5 programas
mencionados e incluir la opción salir.

Página 1

Fundamentos de Programación 1
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

EJERCICIOS RESUELTOS
Gabriel Jesus Torres Huillca

1. Elaborar un programa que calcule el MCD de dos números enteros.


#include <iostream>
using std::cout;
using std::cin;

int mcd(int x, int y);


int main()
{
int x, y;
cout << "Ingrese numero 1: ";
cin >> x;

cout << "Ingrese numero 2: ";


cin >> y;

cout << "MCD de " << x << " , " << y << " es: " << mcd(x, y);

cin.ignore();
cin.get();
return 0;
}
int mcd(int x, int y)
{
int ref;
int maxdiv;
x > y ? ref = x : ref = y;

for (int i{ 1 }; i < ref; i++)


{
if (x % i == 0 && y % i == 0)
maxdiv = i;
}
return maxdiv; Página 2
}

Fundamentos de Programación 2
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

2. Elaborar un programa para reportar todos los divisores de un número


entero.

#include <iostream>

using namespace std;

main(){

int a,c=0;
cout<<"Ingrese numero entero: "; cin>>a;

cout<<"Sus divisores son: ";


for (int i=1;i<=a;i++){
if(a%i==0){
cout<<i<<" ";
c++;
}
}
return 0;
}

Página 3

Fundamentos de Programación 3
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

3. Desarrollar un programa para reportar los factores primos de un número


entero.

#include <iostream>
#include <conio.h>

using namespace std;

int main(){

int numero, x = 2;

cout<<"Ingrese un numero entero: ";


cin>>numero;

while(numero != 1){

if(numero % x == 0){

cout << x << "\t";


numero = numero / x;

}else
x = x + 1;

}
return 0;
}

Página 4

Fundamentos de Programación 4
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

4. Programa para ingresar un número y se reporte si es primo o no.

#include <iostream>

using namespace std;

int main(){

int num;
cout << "Ingrese numero: ";
cin >> num;
bool primo = true;
for(int i = 2 ; i < num ; i++){
if(num % i == 0) primo = false;

}
if (primo == true) cout << "El numero es primo";
else cout << "El numero no es primo";

return 0;
} Página 5

Fundamentos de Programación 5
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

5. Escribir un programa que permita leer dos números y reportar si son amigos
o no. Se dice que dos números son amigos si cada uno de ellos es igual a la
suma de los divisores (menores que el número) del otro. Ejemplo 220 y 284
son amigos.

#include <iostream>
using namespace std;

int main(int argc, char *argv[])


{
int a, b, suma1=0, suma2=0;
cout<<"Ingrese el primer numero: ";
cin>>a;
cout<<"Ingrese el segundo numero: ";
cin>>b;
for(int i=1;i<a;i++){
if(a % i == 0)suma1+= i;
if(b % i == 0)suma2+= i;
}

if(suma1 == b && suma2 == a)cout<<"Los numeros son amigos";


else cout<<"Los numeros no son amigos";

Página 6
return 0;
}

Fundamentos de Programación 6
FACULTAD DE INGENIERÍA
ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS

6. Realizar un menú que tenga las opciones para desarrollar los 5 programas
mencionados e incluir la opción salir.

Página 7

Fundamentos de Programación 7

También podría gustarte