FUNCIONES SIN PASO DE PARAMETROS
SUBPROCESOS:
Las Sub Procesos son bloques de código utilizados para dividir un programa en partes más pequeñas, cada una de las cuáles tendrá una tarea determinada, estos son la base de la programación estructurada.
Permiten dar nombre a un grupo de instrucciones y que estas se ejecuten cuando las nombremos.
En PSeInt los sub-procesos se crean con la instrucción SubProceso.
Podemos clasificar lo subprocesos en tres tipos:
-
Acciones
-
No aceptan entradas y no retornan valores.
-
Solo realizan acciones.
-
-
Acciones con parámetros
-
Aceptar valores de entrada que influyen en su ejecución.
-
-
Funciones
-
Realizan cálculos y retornan valores.
-
SubProceso Saludar
Escribir "Hola mundo!";
FinSubProceso
Proceso Ejemplo
Saludar; //1 vez
Saludar; //2 vez
FinProceso
Por claridad los sub procesos los escribiremos delante del proceso.
El nombre de un sub proceso sigue las mismas normas que una variable.
El nombre de ser claro y concreto.
Los sub procesos evitan tener procesos tan grandes, facilitan el diseño divide y vencerás y dan claridad a los algoritmos.
EJERCICIO DE APLICACION...
FORMULAS:
Funcion Dens_Corriente()
Escribir "Ingrese el Valor del Area de la Seccion Tranversal:";
Leer Area_Secc;
Inicial4<-50;
Final4<-100;
Si (Area_Secc != 0) Entonces
Para Corrien<-Inicial4 Hasta Final4 Con Paso 2.55 Hacer
Dens_Corrient<-(Corrien)/(Area_Secc);
Escribir "El valor de la Densidad de Corriente es: ", Dens_Corrien,"Para el Valor de la Corriente: ", Corrien,", Para el Valor del Area de la Seccion: ", Area_Secc;
Escribir "Algoritmo DJ";
Fin Para
SiNo
Escribir "Es Indeterminado";
Escribir "Algoritmo DJ";
Fin Si
Fin Funcion
Funcion Resisti()
Escribir "Ingrese el Valor de la Densidad de Corriente:";
Leer Dens_Corrien;
Inicial3<-30;
Final3<-50;
Si (Dens_Corrien != 0) Entonces
Para Campo_Elec<-Inicial3 Hasta Final3 Con Paso 1.5 Hacer
Resis<-(Campo_Elec)/(Dens_Corrien);
Escribir "El valor de la Resistividad es: ", Resis,"Para el Valor del Campo Electrico: ", Campo_Elec,", Para el Valor de la Densidad de Corriente: ", Dens_Corrien;
Escribir "Algoritmo DJ";
Fin Para
SiNo
Escribir "Es Indeterminado";
Escribir "Algoritmo DJ";
Fin Si
Fin Funcion
Funcion Potencia()
Escribir "Ingrese el Valor de la Corriente:";
Leer Corr;
Inicial2<-30;
Final2<-90;
Para Volt<-Inicial2 Hasta Final2 Con Paso 5 Hacer
Pot<-((Volt)*(Corr));
Escribir "El valor de la Potencia es:", Pot,", Para el Valor del Voltaje: ", Volt,", Para el Valor de la Corriente: ", Corr;
Escribir "Algoritmo DJ";
Fin Para
Fin Funcion
Funcion Ley_Ohm()
Escribir "Ingrese el Valor de la Resistencia:";
Leer R;
Inicial1<-20;
Final1<-50;
Si (R > 10 Y R <= 50) Entonces
Para I<-Inicial1 Hasta Final1 Con Paso 3.5 Hacer
V<-((I)*(R));
Escribir "El Valor del Voltaje es:", V,", Para el Valor de la Corriente: ", I,", Para el Valor de la Resistencia:", R;
Escribir "Algoritmo DJ";
Fin Para
SiNo
Escribir "Fuera de Rango";
Escribir "Algoritmo DJ";
Fin Si
Fin Funcion
Algoritmo VARIABLES
//Variables del 1er SubProceso
Definir Inicial1, Final1, V, I, R Como Real;
//Variables del 2do SubProceso
Definir Pot, Volt, Corr, Inicial2, Final2 Como Real;
//Variables del 3er SubProceso
Definir Inicial3, Final3, Resis, Campo_Elec, Dens_Corrien Como Real;
//Variables del 4to SubProceso
Definir Inicial4, Final4, Dens_Corrient, Corrien, Area_Secc Como Real;
//Variable del Algoritmo
Definir Menu Como Entero;
Escribir "*******************************";
Escribir "Menu";
Escribir "*******************************";
Escribir "Ingrese una opcion";
Escribir "*******************************";
Escribir "1) Ley de Ohm";
Escribir "*******************************";
Escribir "2) Potencia";
Escribir "*******************************";
Escribir "3) Resistividad";
Escribir "*******************************";
Escribir "4) Densidad de Corriente";
Escribir "*******************************";
Leer Menu;
Segun Menu Hacer
1:
Ley_Ohm();
2:
Potencia();
3:
Resisti();
4:
Dens_Corriente();
De Otro Modo:
Escribir "No existe esa opcion";
Fin Segun
FinAlgoritmo