ESPOCH

sábado, 15 de diciembre de 2012


C++
Funciones:
Una función es un módulo de un programa separado del cuerpo principal, que realiza una tarea específica y que puede regresar un valor a la parte principal del programa u otra funcion o procedimiento que la invoque.

La forma general de una funcion es:

Tipodato Nomfun(parametros)
{
cuerpo de instrucciones;
return [dato,var,expresion];
}
Clases:
  1. Las primeras son de tipo computacional que son diseñadas para realizar operaciones con los argumentos y regresan un valor basado en el resultado de esa operación.
  2. Las segundas funciones son aquellas que manipulan información y regresan un valor que indican la terminacion o la falla de esa manipulacion.
  3. Las terceras son aquellas que no regresan ningun valor, es decir son estrictamenta procedurales.
Esto quiere decir que en general toda operación o calculo en un programa debera convertirse a una o muchas funcíones y el resto deberan ser procedimientos.

Ejemplo:
#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;
}


Procedimientos:
Un camino para dividir un gran programa en partes más pequeñas es el uso de los llamados procedimientos.
Un procedimiento es un grupo de instrucciones, variables, constantes, etc, que están diseñados con un propósito particular y tiene su nombre propio.
Es decir un procedimiento es un módulo de un programa que realiza tareas específicas y que no puede regresar valores a la parte principal del programa u otro procedimiento que lo este invocando.
Ejemplo:
#include <stdio.h>
 
#include <conio.h>
 
#include <string.h>
 
void main()
 
{
 
clrscr();
 
// recordar declarar primero proc y funciones
 
void proc1();
 
//llamando o activando procedimiento
 
proc1();
 
} // fin del main
 
void proc1()
 
{
 
// area de declaracion de variables y captura de datos
 
int base1,altura; float area;
 
//area de captura
 
printf("dame base: ");scanf("%d",&base1);
 
printf("dame altura: ");scanf("%d",&altura);
 
// area de operaciones
 
area = base1 * altura / 2;
 
// area de despliegue
 
printf("area=%0.2f",area);
 
getchar();getchar();
 
}
 
// fin proc

4 comentarios:

  1. Para mi parecer en C++ no hay diferencias entre procedimientos y funciones: todo son funciones, con la diferencia de que un procedimiento es una función que no devuelve nada (void). Tanto procedimientos como funciones, deben ser declarados antes de poder ser usados. Esto es posible de dos formas: indicando su cabecera (nombre, parámetros y tipo de retorno) después de la zona de constantes y antes del programa
    principal, o bien escribir el procedimiento o la función entera en dicha zona. Nosotros recomendamos la primera opción, ya que evita problemas de orden de implementación para solucionar problemas de ámbito.

    ResponderEliminar
  2. Si nos damos cuenta los procedimientos y funciones ayudan a que el programador utilice menos código, o sea ayuda a que el programa no sea extenso, y hay que observar que esto es bueno ya que ayuda a compactar el programa, Cuando se tienen muchas funciones creadas, se agrupan de acuerdo a su tarea y se crean librerías, entonces cualquier otro programa puede hacer uso de estas funciones sin necesidad de volver a escribirlas. Tal como las librerías estándar que vienen con C++ y demás lenguajes, por lo que son muy utiles las mismas.

    ResponderEliminar
  3. dejo un aporte para el blog diseñando un programa principal que calcule la potencia enésima de un numero cualquiera utilizando funciones.

    #include
    #include
    #include
    #include

    int potencia(int base, int expo)
    {
    int p=1,i;
    for(i=0;i> base;
    cout<< " Ingrese el exponente";
    cin>> expo;

    p= potencia(base,expo);
    cout<< p;
    system ("pause");
    }
    getch();

    ResponderEliminar
  4. Como sabemos C++ es un lenguaje modular, por esta razón, se puede dividir en varios módulos, cada uno de los cuales realiza una tarea determinada.
    Cada módulo es un subprograma llamado función y cada función es un mini programa dentro de un programa. Es decir es un conjunto de sentencias que se pueden llamar desde cualquier parte del programa.

    Las funciones nos sirven para realizar tareas concretas y simplificar el programa así como evitar escribir el mismo código varias veces.

    Las ventajas de utilizar funciones son:
    1.-Aislar mejor los problemas
    2.-Escribir programas más rápido
    3.-Programas más fáciles de mantener (más legibles y más cortos)

    En cuanto a la estructura de una función hasta ahora hemos visto y utilizado funciones estándar es decir definidas en una biblioteca.
    C++ nos permite definir nuestras propias funciones. Pocas veces veremos un programa que no use funciones. Y como podemos evidenciar una de ellas, que usamos siempre, es la función main.

    Como recomendación el nombre de las funciones debe ser un identificador válido, es decir,
    - Debe comenzar con una letra o subrayado (_).
    - Después de la primera letra pueden aparecer otras letras, dígitos y caracteres.
    - No debe contener espacios en blanco.

    En la Estructura de una función por el tipo de dato de retorno
    Las funciones en C++ las podemos dividir en dos partes y muy importantes:

    –Funciones que realizan una tarea específica pero que no devuelven valores al programa principal o a la función que la llamó. Conocidas también como PROCEDIMENTOS.

    –Funciones que realizan operaciones con los argumentos o manipulan datos y devuelven un valor. Dicho valor, puede ser el resultado de esas operaciones ó un indicador de si la manipulación de los datos ha sido exitosa o no.

    ResponderEliminar