Vous êtes sur la page 1sur 10

PROGRAMACIO N ORIENTADA A OBJETOS 1

Actividad 3. Sobre parmetros

UNIDAD 2

GUILLERMO DURAN GARCIA AL12524075

Actividad 3. Sobre parmetros


Con el fin de distinguir lo qu son los parmetros, realiza lo siguiente: 1. Elabora una definicin propia de parmetros. 2. Posteriormente investiga y responde cules tipos de parmetros existen , y cmo se de!en utili"ar dentro de un programa #. Guarda la acti$idad con el nom!re P%%1&'2&(#&))*+. Sustituye las )) por las dos primeras letras del primer nom!re, la Y por la inicial del apellido paterno y la + por la inicial del apellido materno. ,. Enva el arc-i$o a tu .acilitador/a0 para reci!ir retroalimentacin

Definicin personal de Parmetro: 1n ciencias de la computacin, un argumento o parmetro es una $aria!le que puede ser reci!ida por una rutina o su!rutina. 'na su!rutina usa los $alores asignados a sus argumentos para alterar su comportamiento en tiempo de e2ecucin P ! "E#!$S 'n parmetro es una $aria!le que puede pasar su $alor a un procedimiento desde el principal o desde otro procedimiento. 1xisten ocasiones en que es necesario mandar al procedimiento ciertos $alores para que los use en alg3n proceso. 1stos $alores que se pasan del cuerpo principal del programa al procedimiento se llaman parmetros. 1ntonces la declaracin completa de un procedimiento es: 4tatic $oid 5omProc/lista de parmetros0 6 cuerpo de instrucciones7 87 prog.2a$a import 2a$a.a9t.:7 import 2a$a.applet.:7 import 2a$a.a9t.e$ent.:7 pu!lic class prog2; extends (pplet 6 static <ext.ield t1=ne9 <ext.ield/1>07 static ?utton !1=ne9 ?utton/@oA@07 pu!lic $oid init/0 6 BB a!a2o no se puso el o!2eto a la propiedad, porque el default es el propio prog2; o applet add/t107 add/!107 !1.addCouseDistener/ne9 Couse(dapter/0 6 pu!lic $oid mousePressed/Couse1$ent e0 6 int x = ;>>7 proc1/x07 8 8 07 8 BB cierra init static $oid proc1/int x0 6 x=xE1>>7 t1.set<ext/4tring.$alue%f/x007 87 8 BB cierra clase codigo.-tml que acti$a applet FG<CDH F(PPD1< C%I1=@prog2;@ 9idt-=1>> -eig-t=1>>HFB(PPD1<H FBG<CDH

corrida:

J1KD(4 P(J( 1D '4% I1 P(J(C1<J%4 1.L Cuando se usan $aria!les como parmetros, la $aria!le que se manda de!e ser declarada dentro del principal o del procedimiento de donde se esta en$iando. 2.L Da $aria!le que se manda tiene un nom!re, la que se reci!e puede tener otro nom!re. #.L Da cantidad de $aria!les que se en$Man de!en ser igual en cantidad, orden y tipo a las $aria!les que reci!en. ,.L Da $aria!le que se reci!e tiene un m!ito local dentro del procedimiento, es decir solo la puede usar ese procedimiento.

-ttp:BB999.programacionfacil.comB2a$aBparametros

P !%"E#!$S DE &$S S'S#E" S 1l sistema se caracteri"a por ciertos parmetros. Parmetros son constantes ar!itrarias que caracteri"an, por sus propiedades, el $alor y la descripcin dimensional de un sistema especMfico o de un componente del sistema. &os parmetros de los sistemas son: Entrada o insumo o impulso (input): 1s la fuer"a de arranque del sistema, que pro$ee el material o la energMa para la operacin del sistema. Salida o producto o resultado (output): 1s la finalidad para la cual se reunieron elementos y relaciones del sistema. Dos resultados de un proceso son las salidas, las cuales de!en ser co-erentes con el o!2eti$o del sistema. Dos resultados de los sistemas son finales, mientras que los resultados de los su!sistemas con intermedios. Procesamiento o procesador o transformador (t*roug*put): 1s el fenmeno que produce cam!ios, es el mecanismo de con$ersin de las entradas en salidas o resultados. Keneralmente es representado como la ca2a negra, en la que entra los insumos y salen cosas diferentes, que son los productos. !etroaccin o retroalimentacin o retroinformacin (feedbac+): 1s la funcin de retorno del sistema que tiende a comparar la salida con un criterio presta!lecido, mantenindola controlada dentro de aquel estndar o criterio. mbiente: 1s el medio que en$uel$e externamente el sistema. 1st en constante interaccin con el sistema, ya que ste reci!e entradas, las procesa y efect3a salidas. Da super$i$encia de un sistema depende de su capacidad de adaptarse, cam!iar y responder a las exigencias y demandas del am!iente externo. (unque el am!iente puede ser un recurso para el sistema, tam!in puede ser una amena"a.

#ipos de parmetros Dos tipos de parmetros a utili"ar $an a depender siempre de la necesidad que se le presente al programador. Ie todos modos -ay dos necesidades !sicas que generalmente estn $igentes: 1. Poder o!tener el contenido de una $aria!le. 2. Poder modificar el contenido de una $aria!le. Parmetros por valor Cuando surge la necesidad de o!tener el $alor o contenido de una $aria!le original o local a una funcin, en otra funcin, se utili"a parmetros por $alor. 1n este caso se produce una copia de la $aria!le original -acia el argumento formal de la funcin receptora. Iic-a $aria!le tendr como m!ito la funcin receptora y al culminar esta li!erar el espacio de memoria que ocupa. $oid imprime&cantidad/int can06 printf/NOdPnQ,can07 8 $oid alguna&funcion/$oid06 int cantidad7 : imprime&cantidad/cantidad07 : 8 1l $alor de una $aria!le original puede pasar de una funcin a otra y a su $e" a otras funciones, sin incon$enientes. Ie pronto en 1>L Ciclo de 4eminarios y <alleres del (rea de Programacin. Parmetros y (rgumentos en el lengua2e de programacin CEE. 5uestro desarrollo, nos podemos encontrar con una -o2a de ruta de $alores de $aria!les que pasan por funciones. 4i usamos parmetros por $alor, nunca podremos modificar los $alores de las $aria!les originales ya que se producen copias de las mismas -acia las $aria!les de la funcin llamada y su m!ito es local. (l utili"ar parmetros por $alor, stos pueden ser constantes como por e2emplo: Rinclude Fstdio.-H $oid imprime&datos/c-ar nom!reST, int edad06 printf/@5om!re :Os , edad: OdPn@,nom!re, edad07 8

$oid main/$oid06 c-ar aliasS#;T = 6@Pepe@87 imprime&datos/alias,2#07 8 Parmetros por referencia Da referencia indica tra!a2ar so!re la direccin de memoria que ocupa el parmetro o $aria!le original. $oid ingresar&cantidad/int Ucan06 cinHHcan7 8 $oid alguna&funcion/$oid06 int cantidad7 : ingresar&cantidad/cantidad07 : 8 Como se o!ser$a en este e2emplo, el argumento de la funcin receptora, presenta el operador unario U precediendo al nom!re de la $aria!le. 1sto indica que se tome la direccin del parmetro -acia el argumento, produciendo un espe2o o alias de la $aria!le original cantidad. Do cual significar, que toda alteracin producida so!re el argumento can, afectar a la $aria!le original o parmetro cantidad. 4iempre que sur2a la necesidad de afectar a las $aria!les originales de!emos usar parmetros por referencia. (lgunos casos serMan: Cargar un dato o recalcular un dato. *a que las funciones de$uel$en solo un $alor, es -a!itual usar $arios parmetros por referencia cuando necesitamos que una funcin pro$oque $arios resultados y no solo uno. 4i al argumento por referencia lo precedemos de la pala!ra const, dic-a $aria!le no podr ser alterada en el m!ito de la funcin receptora, por lo tanto nunca afectar a la $aria!le original. Rinclude Fiostream.-H $oid icrementa&sin&exito/int !0 6 !EE78 BB no afecta a la $aria!le original a $oid incrementa&con&exito/const int U!0 6 !EE78 BB 1rror de compilacin $oid main/$oid06 int a = ,7 coutFFaFF@Pn@7

incrementa&sin&exito/a07 coutFFaFF@Pn@7 incrementa&con&exito/a07 coutFFaFF@Pn@7 8 4i extraemos la pala!ra reser$ada const del argumento ! en la funcin incrementa&con&exito/0, no -a!rMa error de compilacin y la $aria!le original a se $erMa afectada al incrementarse en uno por el !EE. Parmetros por referencia puntero Vernig-an y Jitc-ie# el su capMtulo apuntadores y arreglos nos -acen notar que la definicin de los argumentos c-ar sST7 y c-ar :s7 son completamente equi$alentes cuando se pasa un nom!re de un arreglo de caracteres a una funcin. *a que al pasar un arreglo como parmetro, lo que en realidad se esta pasando es la direccin del comien"o del mismo. Jecordemos la funcin carga/0 de nuestro e2emplo de un arreglo de n3meros enteros. $oid carga/int U!06 BB sin U funciona igual por que for /int i = >7i F ;7iEE0 cinHH!SiT7 8 4i escri!imos $oid carga/int : !06 for /int i = >7i F ;7iEE0 cinHH!SiT7 8 o !ien $oid carga/int : !06 for /int i = >7i F ;7iEE0 cinHH:!EE7 8 1n definiti$a y aceptando los conceptos de ?rian y Iennis la $aria!le original de tipo arreglo de enteros se $er modificada al producirse la carga de elementos, manipulando el arreglo a partir de su!Mndices o !ien un puntero a enteros. <am!in podrMamos -a!er escrito la funcin carga del siguiente modo: $oid carga/int : !06 for /int i = >7:! == WP>W7!EE06 iEE7 cinHH:!7 8 8

4iempre y cuando los elementos del arreglo estn iniciali"ados en cero, ya que de lo contrario tendrMamos algunos incon$enientes. Parmetros de tipo puntero o apuntadores siempre tomarn la direccin de la $aria!le original, por consecuencia la referencia a la misma. Dos parmetros por referencia puntero pueden tener el mismo cometido que los por referencia, solo en el concepto que al modificar un argumento, se afectar al parmetro. Pero no en su tratamiento, donde se tra!a2a siempre so!re la !ase de la aritmtica de punteros. Completemos la idea, con un e2emplo sencillo: Rinclude Fiostream.-H $oid incrementa/int :!0 6 /:!0EE7 8 $oid main/$oid06 int a = ,7 incrementa/Ua07 coutFFaFF@Pn@7 BB imprime ; 8 que serMa totalmente equi$alente a escri!ir Rinclude Fiostream.-H 1,L Ciclo de 4eminarios y <alleres del (rea de Programacin. Parmetros y (rgumentos en el lengua2e de programacin CEE. $oid incrementa/int :!0 6 /:!0EE7 8 $oid main/$oid06 int a = ,7 int : ptero7 ptero = Ua7 incrementa/ptero07 coutFFaFF@Pn@7 BB imprime ; 8 ya que el parmetro de!e ser una $aria!le de tipo puntero o !ien la direccin de una $aria!le. 12emplo para una matri" !idimensional: Rinclude Fstdio.-H Rinclude Fiostream.-H typedef int matri"S2TS2T7 $oid carga/int :a06 BB reci!e la direccin de mS>TS>T for /int i = >7i F 27iEE0 for /int 2 = >72 F 272EE0 cinHH:aEE7 BB incrementa direcciones de la matri" 8

$oid muestra/matri" !06 for /int i = >7i F 27iEE0 for /int 2 = >72 F 272EE0 printf/@Od,@,!SiTS2T07 8 int suma/matri" c06 int $alor=>7 for /int i = >7i F 27iEE0 for /int 2 = >72 F 272EE0 $alor E= cSiTS2T7 return/$alor07 '<5, .J<, Iepartamento de 4istemas de XnformacinL 1; Xng. '!aldo Yos ?onaparte 8 $oid main/06 matri" m = 6>,>,>,>87 cargapuntero/UmS>TS>T07 muestra/m07 printf/@PnDa suma de los elementos es = OdPn@,suma/m007 8 (l tra!a2ar con una $aria!le su!indi"ada y !idimensional cuando in$ocamos a la funcin carga/0, de!emos pasarle como parmetro la direccin de la $aria!le local entera m /UmS>TS>T0, para tratar la matri" con punteros. 1l argumento de la funcin carga/0, reci!e dic-a direccin so!re una $aria!le de tipo puntero a un entero a, y manipula las direcciones de memoria de la matri" m con la aritmtica de punteros aplicada a dic-a $aria!le.

-ttp:BB999.edutecne.utn.edu.arBsemin&progr&frtBparam&y&argum&lengua2e& C.pdf

Vous aimerez peut-être aussi