SlideShare une entreprise Scribd logo
1  sur  20
Télécharger pour lire hors ligne
Módulo I- Introducción a la Programación en
la Plataforma .Net con C#
TEMARIO

CAPITULO III.- INTRODUCCIÓN AL
LENGUAJE DE PROGRAMACIÓN C#

  Introducción a los Métodos
  Utilización de Parámetros
INTRODUCCIÓN A LOS MÉTODOS

Definición de métodos
   Main es un método
      Para definir métodos propios se usa la misma
       sintaxis
using System;
using System;
class ExampleClass
 class ExampleClass
{{
     static void ExampleMethod( )
     static void ExampleMethod( )
     {
     {
         Console.WriteLine("ExampleMethod");
         Console.WriteLine("ExampleMethod");
     }
     }
     static void Main( )
     static void Main( )
     {
     {
         // ...
         // ...
     }
     }
}}
Tipos Métodos
 Procedimiento Void : Un procedimiento debe
 tener un nombre. Este nombre será utilizado para
 invocarle. No retorna datos. Ej: Void Hola Mundo()
 Funciones: Si un método devuelve valor, se
 llama función sino retorna valor se le llama
 procedimiento.
 Procedimientos de eventos : 2 elementos
 distinguen un procedimiento clásico a un de
 eventos:
    La llamada al procedimiento de eventos se realiza
     automáticamente.
    El nombre del procedimiento de eventos es la
     concatenación del nombre del evento para la cual se
     gestiona el evento: Ej: button_click()
Llamadas a métodos
 Una vez definido un método, se puede:
    Llamar a un método desde dentro de la misma
     clase
      Se usa el nombre del método seguido de una
        lista de parámetros entre paréntesis
    Llamar a un método que está en una clase
     diferente
      Hay que indicar al compilador cuál es la clase
        que contiene el método que se desea llamar
      El método llamado se debe declarar con la
        palabra clave public
    Usar llamadas anidadas
      Unos métodos pueden hacer llamadas a
        otros, que a su vez pueden llamar a otros
        métodos, y así sucesivamente.
Uso de la instrucción return
  Return inmediato
  Return con una instrucción condicional

   static void ExampleMethod( )
   static void ExampleMethod( )
   {
   {
      int numBeans;
      int numBeans;
      //...
      //...

       Console.WriteLine("Hello");
       Console.WriteLine("Hello");
       if (numBeans < 10)
       if (numBeans < 10)
          return;
          return;
       Console.WriteLine("World");
       Console.WriteLine("World");
   }
   }
Uso de variables locales
  Variables locales
     Se crean cuando comienza el método
     Son privadas para el método
     Se destruyen a la salida
  Variables compartidas
     Para compartir se utilizan variables de clase
  Conflictos de ámbito
     El compilador no avisa si hay conflictos entre
      nombres locales y de clase
Devolución de valores
    El método se debe declarar con un tipo
    que no sea void
    Se añade una instrucción return con una
    expresión
       Fija el valor de retorno
       Se devuelve al llamador
    Los métodos que no son void deben
    devolver un valor
static int DosMasDos( )
static int DosMasDos( )            {in t x ;
                                   i nt x;
                                    {
    int a,b;
    int a,b;                       x = DosMasDos( );
                                    x = DosMasDos( );
    a = 2;
    a = 2;                         Console.WriteLine(x);
                                    Console.WriteLine(x);
    b = 2;
    b = 2;
    return a + b;
    return a + b;
}
}
UTILIZACIÓN DE PARAMETROS
     Declaración y llamadas a
     parámetros
            Declaración de parámetros
               Se ponen entre paréntesis después del nombre
                del método
               Se definen el tipo y el nombre de cada parámetro
            Llamadas a métodos con parámetros
               Un valor para cada parámetro

st a t i c v o i d
 tatic void            MethodWithParameters(int n, string y)
                       MethodWithParameters(int n, string y
{ ... }
   ... }

Me t h o d W i t h P a r a m e t e r s ( 2 , " H o l a , m u n d o " ) ;
 ethodWithParameters(2, "Hola, mundo");
Mecanismos de paso de
parámetros
 Tres maneras de pasar parámetros

   entrada Paso por valor
   entrada Paso por valor

   entrada
   entrada Paso por referencia
           Paso por referencia
    salida
    salida
   salida Parámetros de salida
   salida Parámetros de salida
Paso por valor
         Mecanismo predeterminado para el paso de
         parámetros:
            Se copia el valor del parámetro
            Se puede cambiar la variable dentro del método
            No afecta al valor fuera del método
            El parámetro debe ser de un tipo igual o compatible
at i c v o i d S u m a U n o ( i n t x )
 tic void SumaUno(int x)
    x++; // Incrementar x
    x++; // Incrementar x
at i c v o i d M a i n ( )
 tic void Main( )
    int k = 6;
    int k = 6;
    SumaUno(k);
    SumaUno(k);
    Console.WriteLine(k); // Muestra el valor 6, no
    Console.WriteLine(k); // Muestra el valor 6, n
Paso por referencia
  ¿Qué son los parámetros referencia?
     Una referencia a una posición de memoria
  Uso de parámetros referencia
     Se usa la palabra clave ref en la declaración y
      las llamadas al método
     Los tipos y valores de variables deben coincidir
     Los cambios hechos en el método afectan al
      llamador
     Hay que asignar un valor al parámetro antes de
      la llamada al método
Parámetros de salida
   ¿Qué son los parámetros de salida?
      Pasan valores hacia fuera, pero no
       hacia dentro
   Uso de parámetros de salida
    Como ref , pero no se pasan valores al
     método
    Se usa la palabra clave out en la
static void OutDemo(out int p)
static void OutDemo(out int p)
{
{    declaración y las llamadas al método
       // ...
       // ...
}
}
int n;
int n;
OutDemo(out n);
OutDemo(out n);
Uso de listas de parámetros de
longitud variable
    Se usa la palabra clave params
    Se declara como tabla al final de la lista de
    parámetros
    Siempre paso por valor
static long AddList(params long[ ] v)
static long AddList(params long[ ] v)
{
{
    long total, i;
    long total, i;
    for (i = 0, total = 0; i < v.Length; i++)
    for (i = 0, total = 0; i < v.Length; i++)
        total += v[i];
         total += v[i];
    return total;
    return total;
}
}
static void Main( )
static void Main( )
{
{
    long x = AddList(63,21,84);
    long x = AddList(63,21,84);
}
}
Normas para el paso de
parámetros
 Mecanismos
    El paso por valor es el más habitual
    El valor de retorno del método es útil para un
     solo valor
    ref y/o out son útiles para más de un valor de
     retorno
    ref sólo se usa si los datos se pasan en ambos
     sentidos
 Eficiencia
    El paso por valor suele ser el más eficaz
Uso de métodos recursivos
  Un método puede hacer una llamada a sí
  mismo
     Directamente
     Indirectamente
  Útil para resolver ciertos problemas
Declaración de métodos
    sobrecargados
       Métodos que comparten un nombre en una
       clase
la s s O e r l odistinguen m p l e
 a s s Ov eSe oa d i n g E x a examinando la lista de parámetros
         v rl adingExample
   static int Suma(int a, int b)
   static int Suma(int a, int b)
   {
   {
       return a + b;
       return a + b;
   }
   }
   static int Suma(int a, int b, int
   static int Suma(int a, int b, int              c)
                                                  c)
   {
   {
       return a + b + c;
       return a + b + c;
   }
   }
   static void Main( )
   static void Main( )
   {
   {
       Console.WriteLine(Suma(1,2) +
       Console.WriteLine(Suma(1,2) +              Suma(1,2,3))
                                                  Suma(1,2,3))
   }
   }
Signaturas de métodos
     Las signaturas de métodos deben
     ser únicas dentro de una clase
     Definición de signatura
  Forman la definición
  Forman la definición     No afectan a la
                           No afectan a la
    de la signatura
     de la signatura         signatura
                             signatura
      Nombre del método
      Nombre del método    Nombre de parámetro
                            Nombre de parámetro

      Tipo de parámetro
      Tipo de parámetro    Tipo de retorno de
                            Tipo de retorno de
                             método
                             método
      Modificador
      Modificador
Uso de métodos sobrecargados
 Conviene usar métodos sobrecargados si:
    Hay métodos similares que requieren
     parámetros diferentes
    Se quiere añadir funcionalidad al código
     existente
 No hay que abusar, ya que:
    Son difíciles de depurar
    Son difíciles de mantener
Ejercicios
1.   Desarrolle un programa que calcule la fórmula de energía cinética. El
     cálculo debe estar definido en una función que reciba los datos para el
     cálculo y que retorne el resultado a una variable. Fórmula: Ec   =   1 / 2
     *  M *  V 2.
2.   Desarrolle un programa que determine si un número es primo, el
     calculo debe ser realizado en una función que recibe como parámetro
     el numero a evaluar y retorno si es primo o no (verdadero o falso). Un
     número es primo cuando solo es divisible entre él y la unidad. Ej.: 3, 5,
     7, 11,17….
3.   Desarrolle un programa que calcule en factorial de un numero. El
     calculo debe ser realizado en una función que reciba como parámetro
     el numero a factorizar.
4.   Opcional: Desarrollar el programa de factorial pero con funciones
     recursivas

Contenu connexe

Tendances

Estructura de Lenguaje C++
Estructura de Lenguaje C++Estructura de Lenguaje C++
Estructura de Lenguaje C++Nana Garces
 
Modelo incremental
Modelo incrementalModelo incremental
Modelo incrementalRoxny Moreno
 
Métodos en programacion
Métodos en  programacionMétodos en  programacion
Métodos en programacioncrisricguepi
 
IDR Unidad 2: Elicitación de requerimientos
IDR Unidad 2: Elicitación de requerimientosIDR Unidad 2: Elicitación de requerimientos
IDR Unidad 2: Elicitación de requerimientosFranklin Parrales Bravo
 
Desarrollo estructurado
Desarrollo estructuradoDesarrollo estructurado
Desarrollo estructuradowaralivt
 
Metricas de los Factores de Calidad
Metricas de los Factores de CalidadMetricas de los Factores de Calidad
Metricas de los Factores de CalidadLu Martinez
 
Mdb metodologia para la elicitacion
Mdb metodologia para la elicitacionMdb metodologia para la elicitacion
Mdb metodologia para la elicitacionRene Guaman-Quinche
 
Ingeniería de Requerimientos: Software Orientado al Negocio
Ingeniería de Requerimientos: Software Orientado al NegocioIngeniería de Requerimientos: Software Orientado al Negocio
Ingeniería de Requerimientos: Software Orientado al NegocioSoftware Guru
 
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++die_dex
 
Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoMarvin Zumbado
 
Ingeniería de requisitos y la ingeniería de requerimientos
Ingeniería de requisitos y la ingeniería de requerimientos Ingeniería de requisitos y la ingeniería de requerimientos
Ingeniería de requisitos y la ingeniería de requerimientos unrated999
 

Tendances (20)

Clases abstractas
Clases abstractasClases abstractas
Clases abstractas
 
Estructura de Lenguaje C++
Estructura de Lenguaje C++Estructura de Lenguaje C++
Estructura de Lenguaje C++
 
Modelo incremental
Modelo incrementalModelo incremental
Modelo incremental
 
Métodos en programacion
Métodos en  programacionMétodos en  programacion
Métodos en programacion
 
IDR Unidad 2: Elicitación de requerimientos
IDR Unidad 2: Elicitación de requerimientosIDR Unidad 2: Elicitación de requerimientos
IDR Unidad 2: Elicitación de requerimientos
 
5.manejo de excepciones
5.manejo de excepciones5.manejo de excepciones
5.manejo de excepciones
 
Desarrollo estructurado
Desarrollo estructuradoDesarrollo estructurado
Desarrollo estructurado
 
Metricas de los Factores de Calidad
Metricas de los Factores de CalidadMetricas de los Factores de Calidad
Metricas de los Factores de Calidad
 
Mdb metodologia para la elicitacion
Mdb metodologia para la elicitacionMdb metodologia para la elicitacion
Mdb metodologia para la elicitacion
 
Ingeniería de Requerimientos: Software Orientado al Negocio
Ingeniería de Requerimientos: Software Orientado al NegocioIngeniería de Requerimientos: Software Orientado al Negocio
Ingeniería de Requerimientos: Software Orientado al Negocio
 
Clases y objetos en Java
Clases y objetos en JavaClases y objetos en Java
Clases y objetos en Java
 
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
 
Casos de uso
Casos de usoCasos de uso
Casos de uso
 
Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02Diagrama de clases - Ejemplo monográfico 02
Diagrama de clases - Ejemplo monográfico 02
 
Uml diagramas-caso-de-uso
Uml diagramas-caso-de-usoUml diagramas-caso-de-uso
Uml diagramas-caso-de-uso
 
Alice 14
Alice 14Alice 14
Alice 14
 
Diagrama de Casos de uso
Diagrama de Casos de usoDiagrama de Casos de uso
Diagrama de Casos de uso
 
Caja blanca
Caja blancaCaja blanca
Caja blanca
 
Uml lenguaje unificado de modelado
Uml lenguaje unificado de modeladoUml lenguaje unificado de modelado
Uml lenguaje unificado de modelado
 
Ingeniería de requisitos y la ingeniería de requerimientos
Ingeniería de requisitos y la ingeniería de requerimientos Ingeniería de requisitos y la ingeniería de requerimientos
Ingeniería de requisitos y la ingeniería de requerimientos
 

Similaire à 5 metodos y parametros

Metodosenjava 110504201809-phpapp02
Metodosenjava 110504201809-phpapp02Metodosenjava 110504201809-phpapp02
Metodosenjava 110504201809-phpapp02aleja09_40
 
Metodos en java
Metodos en javaMetodos en java
Metodos en javaaleja0940
 
P3 Programacion orientada a objetos con Java.pptx
P3 Programacion orientada a objetos con Java.pptxP3 Programacion orientada a objetos con Java.pptx
P3 Programacion orientada a objetos con Java.pptxdocmarcoantoniosotov
 
sentenciareturnymetodos
sentenciareturnymetodossentenciareturnymetodos
sentenciareturnymetodosLao Tobon
 
Programacion Modular lic en informa.pdf
Programacion Modular  lic en informa.pdfProgramacion Modular  lic en informa.pdf
Programacion Modular lic en informa.pdfSalAlexanderReyesAnd
 
TIPOS DE METODOS EN PROGRAMACION
TIPOS DE METODOS EN PROGRAMACIONTIPOS DE METODOS EN PROGRAMACION
TIPOS DE METODOS EN PROGRAMACIONcrisricguepi
 
Instrucciones basicas-para-c++
Instrucciones basicas-para-c++Instrucciones basicas-para-c++
Instrucciones basicas-para-c++andreadelacruz002
 
Instrucciones basicas-para-c-autoguardado
Instrucciones basicas-para-c-autoguardadoInstrucciones basicas-para-c-autoguardado
Instrucciones basicas-para-c-autoguardadoandreadelacruz002
 
5. PROGRAMACION ESTRUCTURADA C++.pptx
5. PROGRAMACION ESTRUCTURADA C++.pptx5. PROGRAMACION ESTRUCTURADA C++.pptx
5. PROGRAMACION ESTRUCTURADA C++.pptxDieguess
 

Similaire à 5 metodos y parametros (20)

5. Metodos Y Parametros
5.  Metodos Y Parametros5.  Metodos Y Parametros
5. Metodos Y Parametros
 
Metodosenjava 110504201809-phpapp02
Metodosenjava 110504201809-phpapp02Metodosenjava 110504201809-phpapp02
Metodosenjava 110504201809-phpapp02
 
Metodos en java
Metodos en javaMetodos en java
Metodos en java
 
Metodos en java
Metodos en javaMetodos en java
Metodos en java
 
MéTodos
MéTodosMéTodos
MéTodos
 
MéTodos
MéTodosMéTodos
MéTodos
 
MéTodos
MéTodosMéTodos
MéTodos
 
P3 Programacion orientada a objetos con Java.pptx
P3 Programacion orientada a objetos con Java.pptxP3 Programacion orientada a objetos con Java.pptx
P3 Programacion orientada a objetos con Java.pptx
 
14 tiposdemetodos
14 tiposdemetodos14 tiposdemetodos
14 tiposdemetodos
 
MéTodos Java
MéTodos JavaMéTodos Java
MéTodos Java
 
sentenciareturnymetodos
sentenciareturnymetodossentenciareturnymetodos
sentenciareturnymetodos
 
Tema4
Tema4Tema4
Tema4
 
Programacion Modular lic en informa.pdf
Programacion Modular  lic en informa.pdfProgramacion Modular  lic en informa.pdf
Programacion Modular lic en informa.pdf
 
Metodos 2
Metodos 2Metodos 2
Metodos 2
 
Programación 1: modularización
Programación 1: modularizaciónProgramación 1: modularización
Programación 1: modularización
 
TIPOS DE METODOS EN PROGRAMACION
TIPOS DE METODOS EN PROGRAMACIONTIPOS DE METODOS EN PROGRAMACION
TIPOS DE METODOS EN PROGRAMACION
 
4 variables, arreglos, estructuras y enum
4 variables, arreglos, estructuras y enum4 variables, arreglos, estructuras y enum
4 variables, arreglos, estructuras y enum
 
Instrucciones basicas-para-c++
Instrucciones basicas-para-c++Instrucciones basicas-para-c++
Instrucciones basicas-para-c++
 
Instrucciones basicas-para-c-autoguardado
Instrucciones basicas-para-c-autoguardadoInstrucciones basicas-para-c-autoguardado
Instrucciones basicas-para-c-autoguardado
 
5. PROGRAMACION ESTRUCTURADA C++.pptx
5. PROGRAMACION ESTRUCTURADA C++.pptx5. PROGRAMACION ESTRUCTURADA C++.pptx
5. PROGRAMACION ESTRUCTURADA C++.pptx
 

Plus de Claribel Eusebio Nolasco (7)

9 fundamentos de oo
9 fundamentos de oo9 fundamentos de oo
9 fundamentos de oo
 
7 manejo de archivos
7 manejo de archivos7 manejo de archivos
7 manejo de archivos
 
6 excepciones
6 excepciones6 excepciones
6 excepciones
 
3 condicionales y ciclos
3 condicionales y ciclos3 condicionales y ciclos
3 condicionales y ciclos
 
1 introduccion microsoft .net
1 introduccion microsoft .net1 introduccion microsoft .net
1 introduccion microsoft .net
 
10 sintaxis oo
10 sintaxis oo10 sintaxis oo
10 sintaxis oo
 
8 introduccion colecciones
8 introduccion colecciones8 introduccion colecciones
8 introduccion colecciones
 

Dernier

Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfKarinaCambero3
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)JuanStevenTrujilloCh
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointValerioIvanDePazLoja
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaElizabethLpezSoto
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888ElianaValencia28
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdflauralizcano0319
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptxHugoGutierrez99
 
TinkerCAD y figuras en 3D. Uso del programa TinkerCAD para crear fuguras.
TinkerCAD y figuras en 3D. Uso del programa TinkerCAD para crear fuguras.TinkerCAD y figuras en 3D. Uso del programa TinkerCAD para crear fuguras.
TinkerCAD y figuras en 3D. Uso del programa TinkerCAD para crear fuguras.radatoro1
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersIván López Martín
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfcristianrb0324
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskbydaniela5
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar24roberto21
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalEmanuelCastro64
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docxobandopaula444
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfFernandoOblitasVivan
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaYeimys Ch
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfedepmariaperez
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1ivanapaterninar
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdfBetianaJuarez1
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxCarolina Bujaico
 

Dernier (20)

Herramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdfHerramientas que posibilitan la información y la investigación.pdf
Herramientas que posibilitan la información y la investigación.pdf
 
Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)Análisis de los artefactos (nintendo NES)
Análisis de los artefactos (nintendo NES)
 
Trabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power PointTrabajando con Formasy Smart art en power Point
Trabajando con Formasy Smart art en power Point
 
Tecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestríaTecnología Educativa- presentación maestría
Tecnología Educativa- presentación maestría
 
TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888TECNOLOGIA 11-4.8888888888888888888888888
TECNOLOGIA 11-4.8888888888888888888888888
 
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdftecnologiaactividad11-240323205859-a9b9b9bc.pdf
tecnologiaactividad11-240323205859-a9b9b9bc.pdf
 
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
#Tare10ProgramacionWeb2024aaaaaaaaaaaa.pptx
 
TinkerCAD y figuras en 3D. Uso del programa TinkerCAD para crear fuguras.
TinkerCAD y figuras en 3D. Uso del programa TinkerCAD para crear fuguras.TinkerCAD y figuras en 3D. Uso del programa TinkerCAD para crear fuguras.
TinkerCAD y figuras en 3D. Uso del programa TinkerCAD para crear fuguras.
 
CommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 TestcontainersCommitConf 2024 - Spring Boot <3 Testcontainers
CommitConf 2024 - Spring Boot <3 Testcontainers
 
La electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdfLa electricidad y la electronica.10-7.pdf
La electricidad y la electronica.10-7.pdf
 
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjskTrabajo de Tecnología .pdfywhwhejsjsjsjsjsk
Trabajo de Tecnología .pdfywhwhejsjsjsjsjsk
 
Actividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolarActividades de computación para alumnos de preescolar
Actividades de computación para alumnos de preescolar
 
Trabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamentalTrabajo de tecnología liceo departamental
Trabajo de tecnología liceo departamental
 
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docxTALLER DE ANALISIS SOLUCION  PART 2 (1)-1.docx
TALLER DE ANALISIS SOLUCION PART 2 (1)-1.docx
 
certificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdfcertificado de oracle academy cetrificado.pdf
certificado de oracle academy cetrificado.pdf
 
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guiaORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
ORIENTACIONES DE INFORMÁTICA-2024.pdf-guia
 
Trabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdfTrabajo de tecnología excel avanzado.pdf
Trabajo de tecnología excel avanzado.pdf
 
Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1Guía de Registro slideshare paso a paso 1
Guía de Registro slideshare paso a paso 1
 
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
_Planificacion Anual NTICX 2024.SEC.21.4.1.docx.pdf
 
Clasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptxClasificación de Conjuntos de Datos Desequilibrados.pptx
Clasificación de Conjuntos de Datos Desequilibrados.pptx
 

5 metodos y parametros

  • 1. Módulo I- Introducción a la Programación en la Plataforma .Net con C#
  • 2. TEMARIO CAPITULO III.- INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C#  Introducción a los Métodos  Utilización de Parámetros
  • 3. INTRODUCCIÓN A LOS MÉTODOS Definición de métodos Main es un método  Para definir métodos propios se usa la misma sintaxis using System; using System; class ExampleClass class ExampleClass {{ static void ExampleMethod( ) static void ExampleMethod( ) { { Console.WriteLine("ExampleMethod"); Console.WriteLine("ExampleMethod"); } } static void Main( ) static void Main( ) { { // ... // ... } } }}
  • 4. Tipos Métodos Procedimiento Void : Un procedimiento debe tener un nombre. Este nombre será utilizado para invocarle. No retorna datos. Ej: Void Hola Mundo() Funciones: Si un método devuelve valor, se llama función sino retorna valor se le llama procedimiento. Procedimientos de eventos : 2 elementos distinguen un procedimiento clásico a un de eventos:  La llamada al procedimiento de eventos se realiza automáticamente.  El nombre del procedimiento de eventos es la concatenación del nombre del evento para la cual se gestiona el evento: Ej: button_click()
  • 5. Llamadas a métodos Una vez definido un método, se puede:  Llamar a un método desde dentro de la misma clase  Se usa el nombre del método seguido de una lista de parámetros entre paréntesis  Llamar a un método que está en una clase diferente  Hay que indicar al compilador cuál es la clase que contiene el método que se desea llamar  El método llamado se debe declarar con la palabra clave public  Usar llamadas anidadas  Unos métodos pueden hacer llamadas a otros, que a su vez pueden llamar a otros métodos, y así sucesivamente.
  • 6. Uso de la instrucción return Return inmediato Return con una instrucción condicional static void ExampleMethod( ) static void ExampleMethod( ) { { int numBeans; int numBeans; //... //... Console.WriteLine("Hello"); Console.WriteLine("Hello"); if (numBeans < 10) if (numBeans < 10) return; return; Console.WriteLine("World"); Console.WriteLine("World"); } }
  • 7. Uso de variables locales Variables locales  Se crean cuando comienza el método  Son privadas para el método  Se destruyen a la salida Variables compartidas  Para compartir se utilizan variables de clase Conflictos de ámbito  El compilador no avisa si hay conflictos entre nombres locales y de clase
  • 8. Devolución de valores El método se debe declarar con un tipo que no sea void Se añade una instrucción return con una expresión  Fija el valor de retorno  Se devuelve al llamador Los métodos que no son void deben devolver un valor static int DosMasDos( ) static int DosMasDos( ) {in t x ; i nt x; { int a,b; int a,b; x = DosMasDos( ); x = DosMasDos( ); a = 2; a = 2; Console.WriteLine(x); Console.WriteLine(x); b = 2; b = 2; return a + b; return a + b; } }
  • 9. UTILIZACIÓN DE PARAMETROS Declaración y llamadas a parámetros Declaración de parámetros  Se ponen entre paréntesis después del nombre del método  Se definen el tipo y el nombre de cada parámetro Llamadas a métodos con parámetros  Un valor para cada parámetro st a t i c v o i d tatic void MethodWithParameters(int n, string y) MethodWithParameters(int n, string y { ... } ... } Me t h o d W i t h P a r a m e t e r s ( 2 , " H o l a , m u n d o " ) ; ethodWithParameters(2, "Hola, mundo");
  • 10. Mecanismos de paso de parámetros Tres maneras de pasar parámetros entrada Paso por valor entrada Paso por valor entrada entrada Paso por referencia Paso por referencia salida salida salida Parámetros de salida salida Parámetros de salida
  • 11. Paso por valor Mecanismo predeterminado para el paso de parámetros:  Se copia el valor del parámetro  Se puede cambiar la variable dentro del método  No afecta al valor fuera del método  El parámetro debe ser de un tipo igual o compatible at i c v o i d S u m a U n o ( i n t x ) tic void SumaUno(int x) x++; // Incrementar x x++; // Incrementar x at i c v o i d M a i n ( ) tic void Main( ) int k = 6; int k = 6; SumaUno(k); SumaUno(k); Console.WriteLine(k); // Muestra el valor 6, no Console.WriteLine(k); // Muestra el valor 6, n
  • 12. Paso por referencia ¿Qué son los parámetros referencia?  Una referencia a una posición de memoria Uso de parámetros referencia  Se usa la palabra clave ref en la declaración y las llamadas al método  Los tipos y valores de variables deben coincidir  Los cambios hechos en el método afectan al llamador  Hay que asignar un valor al parámetro antes de la llamada al método
  • 13. Parámetros de salida ¿Qué son los parámetros de salida?  Pasan valores hacia fuera, pero no hacia dentro Uso de parámetros de salida  Como ref , pero no se pasan valores al método  Se usa la palabra clave out en la static void OutDemo(out int p) static void OutDemo(out int p) { { declaración y las llamadas al método // ... // ... } } int n; int n; OutDemo(out n); OutDemo(out n);
  • 14. Uso de listas de parámetros de longitud variable Se usa la palabra clave params Se declara como tabla al final de la lista de parámetros Siempre paso por valor static long AddList(params long[ ] v) static long AddList(params long[ ] v) { { long total, i; long total, i; for (i = 0, total = 0; i < v.Length; i++) for (i = 0, total = 0; i < v.Length; i++) total += v[i]; total += v[i]; return total; return total; } } static void Main( ) static void Main( ) { { long x = AddList(63,21,84); long x = AddList(63,21,84); } }
  • 15. Normas para el paso de parámetros Mecanismos  El paso por valor es el más habitual  El valor de retorno del método es útil para un solo valor  ref y/o out son útiles para más de un valor de retorno  ref sólo se usa si los datos se pasan en ambos sentidos Eficiencia  El paso por valor suele ser el más eficaz
  • 16. Uso de métodos recursivos Un método puede hacer una llamada a sí mismo  Directamente  Indirectamente Útil para resolver ciertos problemas
  • 17. Declaración de métodos sobrecargados Métodos que comparten un nombre en una clase la s s O e r l odistinguen m p l e a s s Ov eSe oa d i n g E x a examinando la lista de parámetros v rl adingExample static int Suma(int a, int b) static int Suma(int a, int b) { { return a + b; return a + b; } } static int Suma(int a, int b, int static int Suma(int a, int b, int c) c) { { return a + b + c; return a + b + c; } } static void Main( ) static void Main( ) { { Console.WriteLine(Suma(1,2) + Console.WriteLine(Suma(1,2) + Suma(1,2,3)) Suma(1,2,3)) } }
  • 18. Signaturas de métodos Las signaturas de métodos deben ser únicas dentro de una clase Definición de signatura Forman la definición Forman la definición No afectan a la No afectan a la de la signatura de la signatura signatura signatura  Nombre del método  Nombre del método  Nombre de parámetro  Nombre de parámetro  Tipo de parámetro  Tipo de parámetro  Tipo de retorno de  Tipo de retorno de método método  Modificador  Modificador
  • 19. Uso de métodos sobrecargados Conviene usar métodos sobrecargados si:  Hay métodos similares que requieren parámetros diferentes  Se quiere añadir funcionalidad al código existente No hay que abusar, ya que:  Son difíciles de depurar  Son difíciles de mantener
  • 20. Ejercicios 1. Desarrolle un programa que calcule la fórmula de energía cinética. El cálculo debe estar definido en una función que reciba los datos para el cálculo y que retorne el resultado a una variable. Fórmula: Ec   =   1 / 2 *  M *  V 2. 2. Desarrolle un programa que determine si un número es primo, el calculo debe ser realizado en una función que recibe como parámetro el numero a evaluar y retorno si es primo o no (verdadero o falso). Un número es primo cuando solo es divisible entre él y la unidad. Ej.: 3, 5, 7, 11,17…. 3. Desarrolle un programa que calcule en factorial de un numero. El calculo debe ser realizado en una función que reciba como parámetro el numero a factorizar. 4. Opcional: Desarrollar el programa de factorial pero con funciones recursivas