Anda di halaman 1dari 8

PROGRAMA NACIONAL DE FORMACIN

EN INFORMATICA (PNFI)

ALGORITMICA Y PROGRAMACION

Algortmica y Programacin

Unidad 6. Ejercicios Programacin Modular

Ing. Sullin Santaella

UNIDAD CURRICULAR: ALGORITMICA Y PROGRAMACION


Ejercicios Programacin Modular
Puntos a tratar
1. Ejercicios Resueltos de Procedimientos y Funciones
2. Ejercicios Propuestos de Procedimientos y Funciones
1. Ejercicios Resueltos de Procedimientos y Funciones

1. Funcin F(X)
Inicio
F = X /(1 + X^2)
Fin
Inicio
Imprimir Este es el algoritmo principal Leer N
R = F(N)
llamado de la funcin
Imprimir El resultado de la funcin es:,R
Fin

1. Funcin que No reciben ni retornan parmetros, para sumar dos nmeros enteros.
#include<iostream>
using namespace std;

void sumar()
{
int num1, num2, r;
cout << "Numero 1: "; cin >> num1;
cout << "Numero 2: "; cin >> num2;
r = num1 + num2;
cout << "La suma es " << r;
}

int main()
{
Algortmica y Programacin

Unidad 6. Ejercicios Programacin Modular

Ing. Sullin Santaella

sumar();
}

2. Funcin que Reciben y No Retornan parmetros, para sumar dos nmeros enteros.
#include<iostream>
using namespace std;

void sumar(int num1, int num2)


{
int r;
r = num1 + num2;
cout << "La suma es " << r;
}

int main()
{
int num1, num2;
cout << "Numero 1: "; cin >> num1;
cout << "Numero 2: "; cin >> num2;
sumar(num1, num2);
}

3. Funcin que Retornan y No Reciben parmetros, para sumar dos nmeros enteros.
#include<iostream>
using namespace std;

int sumar()
{
int num1, num2, r;
cout << "Numero 1: "; cin >> num1;
cout << "Numero 2: "; cin >> num2;
Algortmica y Programacin

Unidad 6. Ejercicios Programacin Modular

Ing. Sullin Santaella

r = num1 + num2;
return r;
}

int main()
{
int r;
r = sumar();
cout << "La suma es " << r;
}

4. Funcin que Reciben y Retornan parmetros, para sumar dos nmeros enteros.
#include<iostream>
using namespace std;

int sumar(int num1, int num2)


{
int r;
r = num1 + num2;
return r;
}

int main()
{
int num1, num2, r;
cout << "Numero 1: "; cin >> num1;
cout << "Numero 2: "; cin >> num2;
r = sumar(num1, num2);
cout << "La suma es " << r;
}

Algortmica y Programacin

Unidad 6. Ejercicios Programacin Modular

Ing. Sullin Santaella

5. En la Gran Misin Vivienda Venezuela se desea calcular el monto generado por horas
extras de cinco trabajadores para ello se le proporciona: el nmero de horas extras
trabajadas, la suma devengada por hora, tenga en cuenta que la tarifa se incrementa en un
35% para las horas extras. Escribe una algoritmo principal que solicite datos de los 5
empleados, el monto cancelado por horas, llame a subrutinas/funciones que soliciten los
datos de entrada, calculen el monto por horas extras, y finalmente informe los resultados
en la accin principal.
vacio leer();
real MonHorExt(entero he, real mo);
constante entero NunTra = 5;
constante real factor = 0,4;
entero HorasExt, i;
real PagoHora, MontoTotal;
AlgoritmoPrincipal
para (i=1 ; i<=NumTra; inc I)
leer();
MontoTotal = MonHorExt(HorasExt, PagoHora);
escribir(Trabajador , i);
escribir(Horas Extras Trabajadas , HorasExt);
escribir(Monto por horas extras , MontoTotal);
finpara
FinAlgoritmoPrincipal
vacio leer()
escribir(introduzca la cantidad de horas extras: ); leer(HorasExt);
escribir(introduzca el monto por horas: ); leer(PagoHora);
finleer
real MonHorExt(entero he, real pa)
Algortmica y Programacin

Unidad 6. Ejercicios Programacin Modular

Ing. Sullin Santaella

real monto;
monto = he*pa + he*pa*factor;
retorne monto;
finMonHorExt

6.
//Programa que simula una calculadora bsica, usando funciones
#include <iostream>
using namespace std;
int a, b; /*Variables globales*/
void leerdatos();
void sumar();
void restar();
void multiplicar();
void dividir();
int main()
{
int opcion;
cout <<"Menu" <<endl;
cout <<"1. Sumar" << endl;
cout << "2. Restar" << endl;
cout << "3. Dividir" << endl;
cout <<"4. Multiplicar" <<endl;
cout <<"Elija una operacion: " << endl;
cin >> opcion;
leerdatos();
switch(opcion)
{
case 1:
sumar();
break;
case 2:
restar();
break;
case 3:
Algortmica y Programacin

Unidad 6. Ejercicios Programacin Modular

Ing. Sullin Santaella

dividir();
break;
case 4:
multiplicar();
break;
default:
cout <<"Opcion no valida" << endl;
break;
}
}

void leerdatos()/*Definicion de la funcion leer*/


{ //Inicio del cuerpo de la funcion
cout << "Ingrese un numero entero [a]: " << endl; //Solicita el valor del primer dato
cin >> a; //Lee el dato y lo guarda en la variable a
cout << "Ingrese un numero entero [b]: " <<endl;//Solicita el valor del segundo dato
cin >> b;//Lee el dato y lo guarda en la variable b
} //Fin de la funcion

void sumar()
{
int resultado;
resultado = a + b;
cout <<"El resultado de la Suma es: "<< resultado << endl;
}
void restar()
{
int resultado;
resultado = a - b;
cout <<"El resultado de la Resta es: "<< resultado << endl;
}
void dividir()
{
int resultado;
if (b==0) cout <<"ERROR division por cero" << endl;
else
{
resultado = a / b;
Algortmica y Programacin

Unidad 6. Ejercicios Programacin Modular

Ing. Sullin Santaella

cout <<"El resultado de la Division es: "<< resultado << endl;


}
}
void multiplicar()
{
int resultado;
resultado = a * b;
cout <<"El resultado de la Multiplicacin es: "<< resultado << endl;
}

2. Ejercicios Propuestos de Procedimientos y Funciones

1. Escribir un programa que, utilizando funciones con parmetros, lea desde el teclado las
unidades y el precio que quiere comprar, y segn las unidades introducidas le haga un
descuento o no (cuando las unidades excedan media docena se aplicar 4% y el 10%
cuando excedan la docena).

2. Disee un algoritmo que lea un nmero y mediante una funcin regrese el valor de 1
si el nmero es positivo y -1 si es negativo).

Se recomienda realizar todos los ejercicios practicados utilizando funciones con y sin
parmetros.

Algortmica y Programacin

Unidad 6. Ejercicios Programacin Modular

Ing. Sullin Santaella

Anda mungkin juga menyukai