Monografias.com > Computación > Programación
Descargar Imprimir Comentar Ver trabajos relacionados

Apuntes de Fundamentos de Programación – Unidad 6




Enviado por FRANCISCO RIOS ACOSTA



Partes: 1, 2

    Monografias.com

    Ing. Francisco Ríos Acosta
    Apuntes de Fundamentos de Programación –UNIDAD 6.
    Instituto Tecnológico de la Laguna, a 12 de diciembre del 2008.
    pag. 3 de 44
    6
    Estructuras secuenciales y selectivas.
    Desde 1973 Edgser W. Dijkstra establece con sus principios de la programación estructurada, que las instrucciones de un
    programa deben ejecutarse en secuencia, es decir sin saltos abruptos, por decirlo de alguna manera. El código espaguethi es
    un ejemplo de saltos de “un lado a otro” dentro o hacia fuera del programa. Una instrucción que solía usarse dentro de un
    código espaguethi es el goto. Como buenos programadores y siguiendo las enseñanzas de Dijkstra, debemos evitar el uso de
    senetencias goto.

    instr1;
    instr2;
    instr3;

    La secuencia en que son ejecutadas las sentencias –instrucciones- de un programa se le conoce como flujo de ejecución del
    programa. El control de flujo de ejecución de las sentencias de un programa en ocasiones debe variar, según sean realizadas
    algunas validaciones de datos. Por ejemplo, un algoritmo que efectúe la suma de los primeros n números naturales, donde n
    es un dato entero que se lee en nuestra aplicación. Si el valor de n leído es 5, el programa deberá calcular la suma de los
    primeros 5 números naturales. Digamos que las instrucciones del programa en secuencia son :
    n=oCalc.Leer();
    oCalc.EfectuarSuma(n);
    visua “la suma de los primeros “, n, “números naturales es = “, oCalc.RetSuma();
    oCalc
    es un objeto de una determinada clase a la que llamaremos Calculador, y es el encargado de leer el valor de n y de
    efectuar la suma de los n primeros números naturales, además de visualizar el resultado de la suma. El método
    EfectuarSuma(n) deberá calcular el valor de la suma de alguna forma :
    suma = 1 + 2 + 3 + 4 + 5;
    Ejecución en secuencia de las
    instrucciones de un programa
    Flujo de ejecución en
    secuencia de las instrucciones
    del programa
    Suma de los primeros 5 números naturales.
    Algo muy importante es que los números naturales no son negativos. ¿Qué pasaría si el usuario teclea un valor de n
    negativo?, digamos el -5. El programa debería entender que queremos calcular la suma de los ¡ primeros -5 números
    naturales !, cuestión que no es lógica. Por lo tanto debemos de modificar el control de flujo de ejecución de las sentencias
    cuando el valor leído sea negativo. A una instrucción que evalúa una condición (el resultado de una condición es false o
    true) y de acuerdo a esta evaluación controlar el flujo de ejecución del programa, se le denomina instrucción selectiva o de
    selección. A continuación expresamos visualmente cómo el flujo de ejecución del programa varía de acuerdo a la condición
    n < 0 ?.

    n = oCalc.Leer();

    true
    n < 0 ?
    visua “valor de n debe ser mayor o igual que 0”;
    false
    oCalc.EfectuarSuma(n);

    visua “la suma de los primeros “, n,
    “números naturales es = “, oCalc.RetSuma();

    Monografias.com

    Ing. Francisco Ríos Acosta
    Apuntes de Fundamentos de Programación –UNIDAD 6.
    Instituto Tecnológico de la Laguna, a 12 de diciembre del 2008.
    pag. 4 de 44
    Las flechas indican el flujo de ejecución del programa. Notemos que la condición se denota gráficamente mediante un
    rombo el cuál tiene 2 salidas : true cuando la condición probada es verdadera y false cuando no lo es. Cuando el valor de n
    es negativo el programa fluye hacia la sentencia de visualización del mensaje de error. Cuando el valor de n es positivo el
    control de ejecución del programa fluye hacia las sentencias que calculan la suma y visualizan los resultados.

    En el transcurso de la exposición de esta unidad 6 explicaremos este tipo de sentencias selectivas, además de repasar las
    sentencias de entrada y salida de datos. También daremos el repaso a los modificadores de acceso public y private.

    6.1 Modificadores de acceso – public y private -.

    El uso de los modificadores de acceso constituyen una cuestión fundamental en la programación orientada a objetos. Estos
    permiten la buena o la mala programación orientada a objetos.

    En C# existen 3 tipos de modificadores de acceso :



    private
    public
    protected
    Un beneficio fundamental en la orientación a objetos es el ocultamiento de datos –atributos-, que consiste en que sólo los
    métodos definidos en la clase, son los únicos que pueden acceder a los atributos de los objetos pertenecientes a una clase.
    La implementación del concepto de ocultamiento de datos es efectuada haciendo a los atributos privados y a los métodos,
    públicos. En otras palabras, aplicar el modificador de acceso private a cada atributo y el modificador de acceso public a
    cada método.
    El modificador de acceso public permite desde cualquier parte del programa, el uso del método o atributo de la clase al que
    se le aplique. Por el contrario, el modificador de acceso private no permite el uso del atributo o método de la clase,
    solamente es visible a los métodos de la clase.
    Digamos que la clase Alumno tiene 3 atributos : noControl, nombre y calif. Además tiene 2 métodos : AsignaNoControl()
    y RetNoControl(), donde el primero de ellos recibe un parámetro necesario para asignarlo al atributo _noControl. La clase
    Alumno la escribiríamos de la siguiente manera :

    class Alumno
    {
    private string _noControl;
    private string _nombre;
    private int _calif;

    public void AsignaNoControl(string valor)
    {
    _noControl = valor;
    }

    public string RetNoControl()
    {
    return _noControl;
    }
    }
    No hemos escrito los métodos para asignar y retornar los atributos _nombre y _calif sólo por no hacer mas abultada la
    clase Alumno, después los agregaremos.

    Notemos que los 3 atributos han sido declarados antecediéndolos de la palabra reservada private, que indica que el atributo
    no puede ser accedido desde cualquier parte de la aplicación. El atributo así declarado, sólo podrá ser accedido por los
    métodos de la clase Alumno, en este caso por lo

    Partes: 1, 2

    Página siguiente 

    Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

    Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

    Categorias
    Newsletter