Vous êtes sur la page 1sur 23

INSTITUTO TECNOLOGICO DE SALINA CRUZ

ASIGNATURA
ALGORITMO Y PROGRAMACIN

UNIDAD 4

TEMA
INVESTIGACIN SOBRE LAS FUNCIONES DE C.

DOCENTE
ROMN NJERA SUSANA MONICA

ALUMNO
CORTES VILLALOBOS XAVIER ALEXIS

CARRERA
INGENIERA MECNICA

SEMESTRE Y GRUPO
2.2B

NDICE

PGUINA

INTRODUCCIN.....I
TEMA INVESTIGACIN SOBRE LAS FUNCIONES DE C.
DEFINICIN DE FUNCIONES.......1
PARTES DE UNA FUNCIN......2
FUNCIONES: VENTAJAS...4
VARIABLES LOCALES Y GLOBALES..4
ARGUMENTOS DE FUNCIONES..4
TRANSFERENCIA DE INFORMACIN....5
FUNCIN MAIN DEL PROGRAMA...5
PROTOTIPOS DE LAS FUNCIONES.5
FUNCIONES RECURSIVAS...6
FUNCIONES DEFINIDAS POR EL USUARIO....6
VALORES DE RETORNO DE FUNCIONES....9
CONCLUSIONES...10
OTRAS FUENTES......11
ANEXO.........12

INTRODUCCIN
Es la preparacin de ingenieros en un mundo globalizado, exige al ingeniero el
dominio de herramientas bsicas de la programacin, con los conocimientos sobre
la estructura de control.

En este trabajo tiene como objetivo al proporcionar al estudiante informacin de la


materia, especificando lo que son las funciones en c, como las partes de una
funcin, sus ventajas, etc.

Este importante texto, ayudar al estudiante contar con apoyo de informacin y le


sirva como base para el aprendizaje que trae los contenidos para su desarrollo de
ingeniero.

Este texto fue desarrollado con el apoyo de informacin de pginas web, con el
anlisis de esta informacin se lograra este texto.

Para este proceso de aprendizaje, el estudiante podr conocer lo que son los
argumentos de informacin, transferencia de informacin y sus principales partes
de la funcin que se utilizan ya que le ser muy til en su profesin como
ingeniero.

Esperemos que le sirva la informacin del trabajo, y les ayude a su aprendizaje


para obtener ms conocimientos para nuestro desarrollo a nuestra profesin, el
contenido queda abierto para aportaciones y crticas a todo el pblico.

FUNCIONES DE

C.

DEFINICIN DE FUNCIONES
C++ es un lenguaje modular, y por sta razn, se puede dividir en varios
mdulos, cada uno de los cuales realiza una tarea determinada. Cada
mdulo es un subprograma llamado funcin.

Una funcin es un mini programa que se utiliza en un programa. Es un


conjunto de sentencias que se pueden llamar desde cualquier parte del
programa (incluso varias veces).

Las funciones sirven para:

Realizar tareas concretas y simplificar el programa

sirven para evitar escribir el mismo cdigo varias veces.

Una funcin es una rutina o conjunto de sentencias que realiza una determinada
labor. En C todas las funciones devuelven un valor, que por defecto es un entero.
Las funciones admiten argumentos, que son datos que le pasan a la sentencias
que la llaman.
Cuando un programa comienza a ser largo y complejo no es apropiado tener todas
las instrucciones en un solo bloque, ya que no es fcil entender lo que hace el
programa debido a que se intenta abarcar toda la solucin a la vez. Adems
suelen aparecer secciones de cdigo similares entre s a lo largo de todo el
programa lo que hace que el programa se vuelva an ms difcil de entender y
modificar.

Los lenguajes de alto nivel proporcionan herramientas para solucionar estos


problemas permiten estructurar el programa principal compuesto de subprogramas
(funciones y procedimientos)
que resuelven partes del
1
problema principal. A su vez,
cada
uno
de
estos
subprogramas puede estar resuelto por otro conjunto de subprogramas etc... Los
procedimientos y las funciones son los mecanismos de estructuracin que
permiten ocultar los detalles dela solucin de un problema y resolver una parte de
dicho problema en otro lugar del cdigo.
El lenguaje C utiliza bibliotecas de funciones con el fin de realizar unas algunas
operaciones clculos de uso comn. C adems permite que el programador defina
sus propias funciones para determinadas tareas.
Funcin: es un bloque de instrucciones que realiza tareas bien definidas. Todo
programa en C consta de una o ms funciones. La ejecucin de un programa en C
siempre comienza por la funcin. Cuando se ejecuta una funcin el control pasa al
punto donde esta inicia. Una vez finalizada su ejecucin, se devuelve el control al
punto desde el que se hizo la llamada a la funcin.
Procedimientos: Se llama as, en lenguaje Pascal, a un subprograma que ejecuta
unas ciertas acciones sin que valor alguno de retorno est asociado a su nombre.
En otras palabras: Un procedimiento es una funcin que NO devuelve valores.

PARTES DE UNA FUNCIN


PROTOTIPO DE UNA FUNCIN. Tiene la sintaxis:
Tipo nombre (parmetro 1, parmetro 2,...parmetro N ); dnde :
Tipo: es el tipo de valor devuelto por la funcin. Los procedimientos son tipo void.
Nombre: es el nombre de la funcin
Parmetros: conjunto de argumentos, separados por comas y encerrados entre
parntesis. Los parmetros son opcionales, en caso de que no se especifiquen,
enseguida del nombre de la funcin se escribe un par de parntesis vacos. El
prototipo de la funcin va seguido de ;
DEFINICIN DE LA FUNCIN:

La definicin de la funcin se hace despus de cerrar la llave de main. Est


formado por las siguientes partes:
a) Encabezado de la funcin. Es igual al prototipo pero no termina con ;
b) Cuerpo de la funcin. Entre llaves se declaran las variables locales y luego se
escriben las instrucciones. El cuerpo de la funcin termina con la sentencia return
() que marca el final de la funcin. Slo se puede incluir una expresin (variable u
operacin) en la sentencia return.
LLAMADA A LA FUNCIN.
Es la ejecucin de la Funcin. La funcin se realiza en el momento en que desde
el programa principal se hace referencia a su nombre.
#include<stdio.h>

#include<conio.h>
void cuadro (int,int,int,int,int); //Prototipo
int suma(int , int );
void main()
{ int x1,y1,x2,y2,a,b,c;
clrscr();
printf("Coordenadas de la esquina superior izqui
erda");
scanf("%d,%d",&y1,&x1);
printf("Coordenadas de la esquina inferior derec
ha");
scanf("%d,%d",&y2,&x2);
clrscr();

cuadro (y1,x1,y2,x2,RED); // Llamada a la func


ion
gotoxy(20,10);printf("Primer Numero:");scanf("%d
",&a);
gotoxy(20,11);printf("Segundo Numero:");scanf("%
d",&b);
c=suma(a,b);
clrscr();
cuadro(15,8,35,12,MAGENTA);
gotoxy(20,10);printf("La suma es %d",c);
getch();
}
void cuadro(int coli, int reni, int colf, int renf,
int color)
{ int i;
textcolor(color);
for (i=coli;i<=colf;i++)
{ gotoxy(i,reni); cprintf("%c",219);
gotoxy(i,renf); cprintf("%c",219);
}
for (i=reni;i<=renf;i++)
{ gotoxy(coli,i); cprintf("%c",219);

gotoxy(colf,i); cprintf("%c",219);
}
}
int suma(int n1, int n2)
{ int resp;
resp=n1+n2;
return(resp);
}

FUNCIONES:

VENTAJAS

1.-Facilita el diseo descendente.


2.- Los procedimientos dentro de ellas se pueden ejecutar varias veces.
3.- Facilita la divisin de tareas.
4.- Se pueden probar individualmente
5.- Con funciones apropiadamente diseadas, es posible ignorar como se realiza
una tarea, sabiendo qu es lo que hacen.

VARIABLES LOCALES Y GLOBALES

Variables Locales:
Se declaran dentro de la funcin y slo estn disponibles durante su

ejecucin.

Se crean cuando se entra en ejecucin una funcin y se destruyen


cuando se termina.

Variables globales:

Se declaran fuera de las funciones. Pueden ser utilizadas por todas

las funciones.
Existen durante toda la vida del programa.

ARGUMENTOS DE FUNCIONES
Son variables locales conocidas como parmetros formales y se utilizan como un
medio para entregarle informacin a la funcin.
Los parmetros formales reciben sus valores iniciales desde los parmetros
reales, es decir desde los valores que se les pasan a travs de la llamada.
Ejemplo:

Parmetro real (llamada)


main( ){

Parmetro formal
(declaracin)

imprimeEntero(5);
}

TRANSFERENCIA DE

INFORMACIN

void imprimeEntero(int x){

Por valor: copia el valor de un argumento de la llamada en el parmetro formal de


la funcin. Por lo tanto, los cambios en los parmetros de la funcin no afectan a
las variables que se usan en la llamada.

printf(%d\n, x);/* x vale 5 */

Por referencia: se copia la direccin del argumento en el parmetro. Los cambios


hechos a los parmetros afectan a las variables usadas en la llamada a la funcin.

FUNCIN MAIN DEL PROGRAMA


La funcin main es la encargada de llamar las dems subrutinas del programa,
cuenta con dos argumentos de entrada; el primero es un nmero, el cual nos
indica cuntos argumentos fueron pasados por la lnea de comando al programa y
el segundo son cada uno de los argumentos en un arreglo de cadenas de

caracteres; adems retorna un valor entero que indica al sistema operativo si la


ejecucin se realiz con xito o no.
Ejemplo
#include<stdio.h>
#include<stdlib.h>//libreria que contiene atof
#include<string.h>//para manejar string
int main(int argc, char *argv[]){
if(argc==1){
printf("ingrese -h/--help para obtener ayuda\n");
}else if(argc==2){
if((strcmp(argv[1],"-h")==0) || (strcmp(argv[1],"--help")==0)){
printf("uso: %s a b ...\n",argv[0]);
}else{
printf("Opcin invalidad, ingrese -h/--help para obtener ayuda\n.");
}
}else {
int i=0;
float valor=0;
for(i=1;i<argc;i++){
valor+=atof(argv[i]);
}
printf("la suma es: %f\n",valor);

}
return 0;
}

PROTOTIPOS DE LAS

FUNCIONES

Los prototipos de las funciones son aquellas partes de la funciones que me indican
lo esencial de ellas, como lo son los argumentos y el valor de retorno, pero no
indica nada de informacin asociada a como se construye la implementacin; La
mayora de veces, los prototipos de las funciones son usados al principio del
cdigo fuente para indicar a la funcin principal u otras funciones que necesiten
que dichas funciones existan.
Ejemplo
#include<stdio.h>
#include<stdlib.h>
double max(double a, double b); //la creo pero no la construyo
int main(int argc, char *argv[]){
if(argc==3){
double a,b;
a=atof(argv[1]);
b=atof(argv[2]);
printf("el maximo es %lf\n",max(a,b));
}else{
printf("USO: %s a b\n",argv[0]);

}
return 0;
}
double max(double a, double b){
if(a>b){
return a;
}else{
return b;
}}

FUNCIONES RECURSIVAS
Son aquellas funciones que se llaman a s misma dentro de su implementacin,
deben contar con una regla de rompimiento que impida que dicha funcin se
quede en un ciclo infinito.
#include<stdio.h>
int factorial(int numero){
if (numero == 0)
return 1;
else return numero*factorial(numero-1);
}
int main(){
printf("el factorial de 4 es %d\n",factorial(4));
}

FUNCIONES DEFINIDAS POR EL USUARIO.


Las funciones de usuario son, como su nombre indica, las que el propio usuario
declara, de igual manera que declara procedimientos. Las funciones nacen con el
propsito de ser subprogramas que siempre tienen que devolver algn valor.
Las dos principales diferencias entre procedimientos y funciones son:
Las funciones siempre devuelven un valor al programa que las invoc.

Para llamar a un procedimiento se escribe su nombre en el cuerpo del


programa, y si los necesita, se incluyen los parmetros entre parntesis.
Para invocar una funcin es necesario hacerlo en una expresin.
Las funciones de usuario vienen definidas por un nombre, seguidas de dos
parntesis () entre los que puede haber o no argumentos. Los argumentos son
valores que se le pasan a la funcin cuando se llama.
Un ejemplo de una funcin sin argumentos:
#include <stdio.h>
main ()
{
printf (\nEste mensaje lo muestra la funcin main());
MiFuncion ();
}
/* Definicin de la funcin MiFuncion() */
MiFuncion ()
{
printf (\nEste otro lo muestra MiFuncion());

}
En este ejemplo se utiliza la funcin MiFuncion() para mostrar en pantalla una
frase. Como se ve, MiFuncion() se invoca igual que printf() o scanf(), es decir,
simplemente se escribe el nombre de la funcin y los parntesis. La definicin de
MiFuncion() tiene el mismo aspecto que main(): el nombre de la funcin con los
parntesis y, seguidamente, el cuerpo de la funcin encerrado entre llaves.

Un ejemplo de una funcin con argumentos. El programa visualiza el cuadrado de


un nmero entero por medio de una funcin que recibe dicho nmero como
argumento.
8

#include <stdio.h>
main ()
{
int num;
printf (\nTeclee un nmero entero: );
scanf (%d, &num);
cuadrado (num);
}
/* Definicin de la funcin cuadrado() */
cuadrado (int x)
{
printf (\nEl cuadrado de %d es %d\n, x, x * x);
}

Es la declaracin de la funcin cuadrado (). Dentro de los parntesis se pone la


variable que recibir el valor pasado a cuadrado () y de qu tipo es. As, si se
teclea el valor 6, se almacena en num y al hacer la llamada cuadrado (num), la
variable num se copia en la variable x, que es con la que trabaja internamente la
funcin cuadrado ().
Es importante mantener claros dos trminos:
1. El trmino Argumento se refiere a la variable usada al llamar la funcin.
2. El trmino Parmetro Formal se refiere a la variable de una funcin que recibe
el valor de los argumentos.
Tambin es importante tener claro que la copia de variables se hace slo en una
direccin: del argumento al parmetro formal. Cualquier modificacin del
parmetro formal realizado dentro de la funcin no tiene ninguna influencia en el
argumento.
Hay que tener en cuenta es que el tipo de argumento que se utiliza para llamar a
una funcin debe ser el mismo que el del parmetro formal que recibe el valor. As,
no debe llamarse a la funcin cuadrado con un argumento de tipo float.
Un ejemplo que utiliza una funcin que devuelve un valor. El siguiente programa
lee dos nmeros enteros del teclado y muestra su producto en pantalla. Para el
clculo se usa una funcin que recibe los dos nmeros y devuelve el producto de
ambos.
#include <stdio.h>
main ()
{
int a, b, producto;
printf (\nTeclee dos nmeros enteros: );
scanf (%d %d, &a, &b);
producto = multiplica (a, b);
printf (\nEl resultado es %d, producto);

}
/* Definicin de la funcin multiplica() */
multiplica (int x, int y)
{
return (x * y);
}

VALORES DE RETORNO DE FUNCIONES


Una funcin en C puede retornar cualquier tipo de dato definido en el lenguaje o
por el usuario, inclusive si no se quiere retornar nada se puede poner void para
indicar que no se espera ningn valor despus del procedimiento.
void funcion(){
...
}
double funcion(void){
....
return valor;
}

10

CONCLUSIONES
En esta investigacin e obtenido mucha informacin sobre las funciones en el
lenguaje de programacin y nos ayuda para comprender mejor el lenguaje de
programacin.
Este texto me servir de mucha ayuda para poder entender mejor y utilizar los
tipos de funciones, las funciones recursivas o las funciones que son definidas por
el usuario que hay en lenguaje y poder usarlos adecuadamente.
Como futuro ingeniero mecnico este texto me servir como poder entender el
lenguaje de programacin, sobres las funciones en C ya que con ellos podremos
programar sin tener dificultades.
El C++ por ser un lenguaje modular y se puede dividir en varios mdulos, ya que
cada uno de ellos puede realizar una tarea determinada. Y pues una funcin viene
siendo un mini programa que se puede utilizar en un programa
Las funciones de usuario son las que el propio usuario declara. Las funciones
nacen para ser subprogramas que siempre tienen que devolver algn valor.
Sin nada ms que decir esperamos que este pequeo texto sea de mucha ayuda
en su profesin y que con ello haya podido aclarar sus dudas.

OTRAS FUENTES
Funciones en el lenguaje C. (2014). Internet. En lnea. Pgina consultada el 3 de
mayo
del
2014.
Disponible
en:
11
http://www.josedomingo.org/web/pluginfile.php/1269/mod_resource/content/0/curs
o/Funciones_en_el_Lenguaje_C.pdf

Funciones. (2014). Internet. En lnea. Pgina consultada el 3 de mayo del 2014.


Disponible
en:
http://www.nebrija.es/~abustind/Informatica/MetodologiaI/funciones.pdf

Creacin definidas por el usuario. (2014). Internet. En lnea. Pgina consultada el


5
de
mayo
del
2014.
Disponible
en:
http://lenguajecmasmas.wordpress.com/2007/10/01/creacion-de-funcionesdefinidad-por-el-usuario/

Funciones en lenguaje C. (2014). Internet. No en lnea. Pgina consultada el 5 de


mayo
del
2014.
Disponible
en:
http://www.google.com.mx/url?
sa=t&rct=j&q=&esrc=s&source=web&cd=5&cad=rja&uact=8&ved=0CEcQFjAE&url
=http%3A%2F%2Fwww.inf.udec.cl%2F~jlopez%2FFUNDPRO%2FLAMINASCurso
%2F07_Funciones.ppt&ei=tD9pUaXG4af8QG5r4CoCQ&usg=AFQjCNGVcpUvrFClBf3GhaK5acROPoqg0g&bvm=bv
.66111022,d.b2U

Funciones. (2014). Internet. En lnea. Pgina consultada el 3 de mayo del 2014.


Disponible en: http://fcqi.tij.uabc.mx/usuarios/palacios/Funciones.pdf

Lenguaje C funciones. (2014). Internet. En lnea. Pgina consultada el 5 de mayo


del 2014. Disponible en: http://gfif.udea.edu.co/cursos/extension/C/CursoC_II.pdf

ANEXO
MAPA CONCEPTUAL DEL TEMA

15
TEMA

PREGUNTAS

12

RELACIONADO AL

1. Cul es la definicin de una funcin en el lenguaje?


R= C++ es un lenguaje modular, y por sta razn, se puede dividir en varios
mdulos, cada uno de los cuales realiza una tarea determinada. Cada mdulo es
un subprograma llamado funcin.
2. Cules son las partes de una funcin?
R= Prototipo de una funcin, definicin de la funcin y llamada a la funcin.
3. Cules son los prototipos de una funcin?
R= Tipo: es el tipo de valor devuelto por la funcin. Los procedimientos son tipo
void.
Nombre: es el nombre de la funcin
Parmetros: conjunto de argumentos, separados por comas y encerrados entre
parntesis
4. Qu es llamada a la funcin?
R= Es la ejecucin de la Funcin. La funcin se realiza en el momento en que
desde el programa principal se hace referencia a su nombre.
5. Defina cuerpo de la funcin?

R= Entre llaves se declaran las variables locales y luego se escriben las


instrucciones. El cuerpo de la funcin termina con la sentencia return () que marca
el final de la funcin.
6. Mencione por lo menos 3 ventajas de las funciones?
R= Facilita el diseo descendente, los procedimientos dentro de ellas se pueden
ejecutar varias veces y facilita la divisin de tareas.
7. Qu son variable locales?
R=

Se declaran dentro de la funcin y slo estn disponibles durante su


ejecucin.

13

Se crean cuando se entra

en ejecucin una funcin y

se destruyen cuando se termina.


8. Qu son variables globales?
R=

Se declaran fuera de las funciones. Pueden ser utilizadas por todas las
funciones.

Existen durante toda la vida del programa.

9. Qu son argumentos de funciones?


R= Son variables locales conocidas como parmetros formales y se utilizan como
un medio para entregarle informacin a la funcin.
Los

parmetros formales reciben sus valores iniciales desde los parmetros

reales, es decir desde los valores que se les pasan a travs de la llamada.

10. Cules son la transferencia de informacin?


R= Por valor: copia el valor de un argumento de la llamada en el parmetro formal
de la funcin. Por lo tanto, los cambios en los parmetros de la funcin no afectan
a las variables que se usan en la llamada.
Por referencia: se copia la direccin del argumento en el parmetro. Los cambios
hechos a los parmetros afectan.
11. Qu es la funcin main?
R= La funcin main es la encargada de llamar las dems subrutinas del programa,
cuenta con dos argumentos de entrada; el primero es un nmero, el cual nos
indica cuntos argumentos fueron pasados por la lnea de comando al programa y
el segundo son cada uno de los argumentos en un arreglo de cadenas de
caracteres.
12. Cules son las funciones definidas por el usuario?
R= Las funciones de usuario son, como su nombre indica, las que el propio
usuario declara, de igual manera que declara procedimientos. Las funciones
nacen con el propsito de ser subprogramas que siempre tienen que devolver
algn valor.
13. Qu son funciones recursivas?
14
R= Son aquellas funciones
que se llaman a s misma
dentro de su implementacin,
deben contar con una regla
de rompimiento que impida que dicha funcin se quede en un ciclo infinito.

14. Las dos principales diferencias entre procedimientos y funciones son:?


R=
Las funciones siempre devuelven un valor al programa que las invoc.
Para llamar a un procedimiento se escribe su nombre en el cuerpo del programa, y
si los necesita, se incluyen los parmetros entre parntesis. Para invocar una
funcin es necesario hacerlo en una expresin.

15. Es importante mantener claros dos trminos en las funciones definidas por
el usuario: ?
El trmino Argumento se refiere a la variable usada al llamar la funcin.
El trmino Parmetro Formal se refiere a la variable de una funcin que recibe el
valor de los argumentos.

15

Vous aimerez peut-être aussi