PDF de programación - Modularización en lenguaje C - Funciones

Imágen de pdf Modularización en lenguaje C - Funciones

Modularización en lenguaje C - Funcionesgráfica de visualizaciones

Publicado el 26 de Junio del 2018
391 visualizaciones desde el 26 de Junio del 2018
2,6 MB
38 paginas
Creado hace 9a (01/01/2015)
Modularización en lenguaje C

Funciones

PrimerCuatrimestre 2015

F. de la Informática- Int.a la Computación - Int.a la Programación

1

Modularización

F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

2

Subalgoritmo “Ingreso” (inout NUM: arreglo entero ,in inicio, final, FE: entero)
Comenzar

Modularización

I: entero
Escribir: “ingrese datos enteros”
Para I desde inicio hasta final con paso FE hacer
Leer NUM[I]
Fin para

Fin

Algoritmo "ALGO”
Comenzar
NUM1: arreglo [1…30] de entero
NUM2: arreglo [1…20] de entero
I: entero
Ingreso (NUM1 ,1,30,1)
Ingreso (NUM2 ,20,1,-1)
. . .
Fin


3

Modularización

Subalgoritmo “Multiplo” (inout NUM1: arreglo entero,
inout NUM2: arreglo entero)
Comenzar
I: entero
Cant: entero
Cant2: entero
Cant <-0
Para I desde 1 hasta 30 con paso 1 hacer
Si NUM1 [I]//7 <>0 entonces
Cant<-cant +1
Fin si
Fin para
Cant2<-0
Para I desde 20 hasta 1 con paso -1 hacer
Si NUM2 [I] //4 <>0 entonces
Cant 2 <- cant2 +1
Fin si
Fin para
Fin

F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

4

Introducción

#include
 <stdio.h>
 
int
 main(){
 
int
 resultado=1;
 /*
 valor
 fibonacci
 */
 
int
 numero;
 /*
 numero
 a
 introducir
 por
 el
 usuario
 */
 
int
 p;
 
 

 
printf(
 "Introduzca
 un
 entero:
 "
 );
 
scanf(
 "%d",
 &numero);
 /*
 obtiene
 un
 entero
 del
 usuario
 */
 
getchar();
 
 
/*
 calcula
 el
 valor
 fibonacci
 del
 numero
 ingresado*/
 
if
 (
 numero
 ==
 0
 ||
 numero
 ==
 1
 )
 {
 

resultado
 =
 numero;}
 /*
 fin
 de
 if
 */
 

else
 {
 
 
 

for
 (p=1;
 p<numero;
 p++){
 
 
resultado
 =
 resultado+
 (p+1);}
 
 
}
 

printf(
 "Fibonacci(
 %d
 )
 =
 %d",
 numero,
 resultado
 );
 /*
 muestra
 el
 resultado
 */
 

 
return
 (0);
 /*
 indica
 terminacion
 exitosa
 */
 
 
}
 /*
 fin
 de
 main
 */
 

5

F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

printf(
 "Introduzca
 un
 entero:
 "
 );
 
scanf(
 "%d",
 &numero);
 /*
 obtiene
 un
 entero
 del
 usuario
 */
 
getchar();
 
 
/*
 calcula
 el
 valor
 fibonacci
 del
 numero
 ingresado*/
 
if
 (
 numero
 ==
 0
 ||
 numero
 ==
 1
 )
 {
 

resultado
 =
 numero;}
 /*
 fin
 de
 if
 */
 

else
 {
 
 
 

for
 (p=1;
 p<numero;
 p++){
 
 
resultado
 =
 resultado+
 (p+1);}
 
 
}
 

 

printf(
 "Fibonacci(
 %d
 )
 =
 %d",
 numero,
 resultado
 );
 /*
 muestra
 el
 resultado
 */
 

6

F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

printf(
 "Fibonacci(
 %d
 )
 =
 %d",
 numero,
 resultado
 );
 /*
 muestra
 el
 resultado
 */
 
printf(
 "Introduzca
 otro
 entero:
 "
 );
 
scanf(
 "%d",
 &numero);
 /*
 obtiene
 segundo
 entero
 del
 usuario
 */
 
getchar();
 
 
/*
 calcula
 el
 valor
 fibonacci
 del
 numero
 ingresado*/
 
if
 (
 numero
 ==
 0
 ||
 numero
 ==
 1
 )
 {
 

resultado
 =
 numero;}
 /*
 fin
 de
 if
 */
 

else
 {
 
 
 

for
 (p=1;
 p<numero;
 p++){
 
 
resultado
 =
 resultado+
 (p+1);}
 
 
}
 

Objetivo:

Una vez que definimos un método que

resuelva un problema

concreto, se pretende ser capaces de
usarlo tantas veces como sea necesario

sin

tener que reescribirlo.

L. de Diseño

C

Subalgoritmos

Funciones

Modularización

F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

7

Una función (subalgoritmo) es un conjunto de
instrucciones que realizan una tarea en
particular.

FUNCIONES


La modularización determina como mínimo dos módulos bien definidos de la
solución: el Módulo Principal y el Módulo que realiza la Tarea Específica.
El módulo principal es el algoritmo que soluciona el problema general planteado y
que invoca a la/s función/es. Usualmente es el Programa Principal.


Módulo que Invoca

Módulo Invocado

Programa Principal

Función de Tarea Específica

F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

8

Una función (subalgoritmo) es un conjunto de
instrucciones que realizan una tarea en
particular.

FUNCIONES


La modularización determina como mínimo dos módulos bien definidos de la
solución: el Módulo que Invoca y el Módulo Invocado.


Módulo que Invoca

Módulo Invocado

F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

9

Una función (subalgoritmo) es un conjunto de
instrucciones que realizan una tarea en
particular.

FUNCIONES


La modularización determina como mínimo dos módulos bien definidos de la
solución: el Módulo que Invoca y el Módulo Invocado.


Módulo que Invoca

Módulo Invocado

F. de la Informática - Int.a la Computación - Int.a la Programación
F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

10

Lenguaje C

FUNCIONES

Ejemplo:
 
 

 
Dado
  un
  número
  n
  entero
  posi0vo,
  se
  desea
  calcular
  e
 
imprimir
  el
  factorial
  de
  n,
  n2
  y
  de
  n3.
  Definir
  un
  módulo
 
(función)
 para
 el
 cálculo
 del
 factorial.
 
 
(Ejemplo
 visto
 en
 Lenguaje
 de
 Diseño)
 

F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

11

ALGORITMO
 Calculo
 Factoriales
 
COMENZAR
 

 
 
 
 FACTORIAL
 

 
 
 
 FACTORIAL
 

 
 
 
 FACTORIAL
 
FIN
 

Programa Principal

SUBALGORITMO
 “Factorial”
 
COMENZAR
 

 
 
 N,
 FACT,
 I:
 entero
 

 
 
 LEER
 N
 

 
 
 FACT

 
 
 PARA
 I
 DESDE
 1
 HASTA
 N
 CON
 PASO
 1
 HACER
 


 
 
 
 
 
 
 
 1
 


 FACT
 


 
 
 
 
 
 
 FACT
 *
 I
 

Función

F
U
N
C
I
O
N
E
S


 
 
 FINPARA
 

 
 
 ESCRIBIR
 FACT
 
FIN
 

F. de la Informática - Int.a la Computación - Int.a la Programación
F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

12

Gráficamente

FUNCIONES

invocación

retorno

Programa Principal

Factorial

F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

13

Solución General (en Leng. de Diseño)


FUNCIONES

Cuerpo del
Programa Ppal.

ALGORITMO Calculo Factoriales
COMENZAR
N, AUX: entero
LEER AUX
N
AUX
N
FACTORIAL
N
N
FACTORIAL
N
N
FACTORIAL
FIN

AUX^2

AUX^3

Cuerpo de la
Función.

Queda por resolver

?

SUBALGORITMO Factorial
COMENZAR
FACT, I: entero
FACT 1
PARA I DESDE 1 HASTA N CON PASO 1
HACER

FACT

FACT * I

FINPARA
ESCRIBIR FACT
FIN

14

F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

Solución General (en Leng. C)


FUNCIONES

El programa principal
conserva el nombre main



#include <stdio.h>

int main() {
int n;
int aux;

printf(Ingrese el número);
scanf(%d, &aux);
getchar();

n = aux;
Factorial(); /* 1er Fact. */
n = aux * aux;
Factorial(); /* 2do Fact. */
n = aux * aux * aux;
Factorial(); /* 3er Fact. */

return(0);
}


F. de la Informática - Int.a la Computación - Int.a la Programación
F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

15

Cuerpo del
Programa
Ppal.

Cuerpo de la
Función.

FUNCIONES

La función adquiere
nombre propio.



int Factorial(){
int i;
int fact;

?
fact = 1;
for (i =1; i <= n; i=i+1 ){
fact = fact * i;
}
printf(El factorial es: %d\n, fact);
return(0);
}



Que valores toma

F. de la Informática - Int.a la Computación - Int.a la Programación
F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

16

F
U
N
C
I
O
N
E
S

#include <stdio.h>

int Factorial(){
int i;
int fact;

fact = 1;
for (i =1; i <= n; i=i+1 ){
fact = fact * i;
}
printf(El factorial es: %d\n, fact);
return(0);}

int main() {
int n;
int aux;
printf(Ingrese el número);
scanf(%d, &aux);
getchar();
n = aux;
Factorial(); /* 1er Fact. */
n = aux * aux;
Factorial(); /* 2do Fact. */
n = aux * aux * aux;
Factorial(); /* 3er Fact. */
return(0);}



F. de la Informática - Int.a la Computación - Int.a la Programación
F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

17

Ámbito de una variable / constante


FUNCIONES

El ámbito de una variable es el bloque

de código en el cual una variable existe

y puede ser utilizada para procesar.
#include <stdio.h>

int main() {
int n;
int aux;

printf(Ingrese el número);
scanf(%d, &aux);
getchar();

n = aux;
Factorial(); /* 1er Fact. */
n = aux * aux;
Factorial(); /* 2do Fact. */
n = aux * aux * aux;
Factorial(); /* 3er Fact. */

return(0);
}



F. de la Informática - Int.a la Computación - Int.a la Programación
F. de la Informática - Int.a la Computación - Int.a la Programación - 2015

Ámbito para n,
aux

18

Ámbito de una variable / constante


FUNCIONES

Ámbito para i, fact
  • Links de descarga
http://lwp-l.com/pdf12159

Comentarios de: Modularización en lenguaje C - Funciones (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad