Guia#9: Punteros en C#.

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Guia#9: Punteros en C#."

Transcripción

1 Guia#9: Punteros en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Objetivos. Conocer el concepto de punteros y su aplicación en C#. Desarrollar aplicaciones en C# utilizando punteros. Utilizar este tipo especial de variable y su uso en el desarrollo de aplicaciones con gestión dinámica de memoria. Introducción. Punteros Los punteros son un tipo especial de variables que tiene direcciones de memoria como sus valores. Por ser una variable, aunque de tipo especial, su declaración no varía de gran forma con lo estudiado hasta el momento. Sintaxis: <tipo_de_dato> * <nombre_puntero>; El tipo de dato de una variable de tipo puntero se corresponde con el tipo de dato de la variable a la que apunta.los punteros pueden ser inicializados cuando son declarados o en un enunciado de la asignación. Pueden ser inicializados a 0, NULL o a una dirección específica ( cuyo formato se presenta en hexadecimal ); un puntero con un valor NULL apunta a nada. Para declarar un puntero debe utilizarse un tipo de datos: int *ptrentero; float *ptrreal; char *ptrdireccion; Si se desea declarar varios punteros en una misma línea de código, C# permite hacerlo de la siguiente manera: int* p1, p2, p3; Luego, no se podrá utilizar un puntero declarado int con variables de tipo char o float. La idea anterior significa que los punteros deben declararse del mismo tipo de dato al cual apuntan. En un programa pueden aparecer errores en tiempo de ejecución y advertencias en tiempo de compilación cuando se define un puntero a determinado tipo de dato y, a continuación, se utiliza para apuntar a algún otro tipo de dato. Para entender los punteros y los vectores, es necesario primero conocer cómo se almacenan los números en la memoria del ordenador. El valor de cada variable en un programa de ordenador se guarda en una sección de memoria cuyo tamaño está determinado por el tipo de dato de la variable. La localización de esta sección de memoria es almacenada en la dirección de la variable.

2 Por tanto, es así como si cada variable estuviera compuesta de dos partes: su valor y su dirección de memoria. Cada celda de memoria se puede considerar de una parte con el contenido, y la otra parte que se almacena en la dirección. Las direcciones se representan normalmente por un número hexadecimal, pudiendo contener un carácter, un entero o un real (aunque en realidad todos son almacenados como números binarios, lo cual es más entendible para la máquina a la hora de compilar los programas). Una forma de acceder a la información de una variable es por medio de una segunda variable que contiene la dirección de la variable a la que se pretende acceder. Este tipo de variable se conoce como apuntador o puntero. Operadores para Punteros El operador de dirección (&) es un operador unario que devuelve la dirección de memoria de su operando. El operador de indireccón (*) regresa el valor del objeto hacia el cual se apunta. Por ejemplo: int y = 5; int *puntero; La instrucción: puntero = &y asigna la dirección de la variable y a la variable del apuntador puntero. Entonces, se dice que puntero apunta a y. Ahora, puntero hace referencia de manera indirecta al valor de la variable y observe que el & de la instrucción de asignación anterior no es el mismo que el & de una declaración de variable de apuntador, el cual siempre es precedido por el nombre del tipo de dato. Código Inseguro (Unsafe Code) Con unsafe code o código inseguro nos referimos a una región de código en la que está permitida la declaración y operaciones con punteros. La palabra clave para marcar un método, miembro o bloque es unsafe. Ejecutar una aplicación en modo inseguro (unsafe) Dado que los punteros manipulan la memoria de nuestro ordenador, para cada aplicación que vayamos a ejecutar vamos a activar la ejecución en modo inseguro, la cual la activamos de la siguiente manera: (suponga que nuestro proyecto se llama G9_Ejemplo1)

3 1) Clic en la propiedades del proyecto: 2) Ahora, se abre la siguiente ventana, en la cual tenemos que chequear la opción de Generar* y despues a opcion de Permitir código no seguro 3) Guardamos los cambios y pasemos a nuestro código. 4) Ahora, en vez de utilizar el static void Main(string[] args) vamos a utilizar el tipo de

4 método inseguro (recordemos que estamos trabajando con referencias de memoria): unsafe static void Main(string[] args). A continuación se muestran ejemplos de declaraciones de tipos de puntero: Material y Equipo Guía de laboratorio No. 9. Computadora con Visual Studio 2013 o superior. Dispositivo de almacenamiento (USB). Procedimiento G9_Ejemplo1 Programa que ejemplifica el uso de punteros y direcciones de memoria. 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 namespace G9_Ejemplo1 6 { 7 class Program 8 { 9 unsafe static void Main(string[] args) 10 { 11 int Valor; 12 int* puntero = null; 13 puntero = &Valor; 14 Console.Title = "Trabajando con punteros en C#"; 15 Console.WriteLine("Digite un valor entero: "); 16 Valor = int.parse(console.readline()); 17 Console.WriteLine("\nEl numero ingresado es: " + Valor); 18 Console.WriteLine("El valor al que apunta el puntero es: " + (int)*puntero); 19 Console.WriteLine("La direccion de memoria de la variable Valor es: " + (int)puntero); 20 Console.ReadKey(); 21 } 22 } 23 }

5 G9_Ejemplo2 En este programa se pasa la variable Num, utilizando llamada por referencia (se pasa la dirección de memoria de la variable) al procedimiento Raiz., al cual le damos como argumento una variable de tipo puntero *Ptr. 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 namespace G9_Ejemplo2 6 { 7 class Program 8 { 9 unsafe static void Raiz(Double* Ptr) //procedimiento que accede al valor recibido a través de un puntero 10 { 11 Console.WriteLine("\nLa raiz cuadrada de [" + *Ptr + "] es: " + Math.Sqrt(*Ptr)); 12 } 13 unsafe static void Main(string[] args) 14 { 15 Console.Title = "Funciones con paso por referencia"; 16 String Op; 17 Double Num;// declaracion de variable normal 18 Double* Ptr = null; // declaracion e inicializacion de puntero 19 do 20 { 21 Console.Clear(); 22 Console.WriteLine("Escribir un numero para extraer la raiz cuadrada: "); 23 Num = Double.Parse(Console.ReadLine()); 24 Raiz(&Num);// damos la direccion de memoria como parametro al procedimiento 25 Console.WriteLine(" Desea calcular otra raiz [S/N]: "); 26 Op = Console.ReadLine(); 27 } while (Op == "s" Op == "S"); 28 Console.ReadKey(); 29 } 30 } 31 }

6 G9_Ejemplo3 Este programa muestra la forma de incrementar por valor e incrementar por referencia 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 namespace G9_Ejemplo3 6 { 7 class Program 8 { 9 unsafe static void IncrementarPorValor(int n) 10 { 11 n = n + 1; 12 Console.WriteLine("Al aplicar incremento por valor obtenemos: " + n); 13 } 14 unsafe static void IncrementarPorReferencia(int* n) 15 { 16 *n = *n + 1; 17 Console.WriteLine("Al aplicar incremento por referencia obtenemos: " + *n); 18 } 19 unsafe static void Main(string[] args) 20 { 21 Console.Title = "Ejemplo3 con punteros"; 22 int Op; 23 int n; 24 do 25 { 26 Console.Clear(); 27 Console.WriteLine("Digitar un valor entero: "); 28 n = int.parse(console.readline()); 29 IncrementarPorValor(n); 30 Console.WriteLine(" "); 31 IncrementarPorReferencia(&n); 32 Console.WriteLine("\n Incrementar otro valor? [1=si / 2=no]"); 33 Op = int.parse(console.readline()); 34 } while (Op == 1); 35 Console.ReadKey(); 36 } 37 } 38 }

7 Análisis de Resultados 1) Dado el siguiente vector Vec[ ] = {1, 2, 3, 4, 5, 6, 7}, utilizar una variable de tipo puntero para imprimir los elementos del vector. 2) Escribir un programa que permita cargar un vector de longitud 10. El programa debe mostrar los elementos ordenados. Use punteros. Investigación Complementaria Utilizar punteros en los siguientes problemas: 1) Desarrollar un programa que lea una cadena de texto y mostrar en pantalla el número de vocales que tiene dicho texto. 2) Desarrollar un programa lea dos vectores con datos enteros y utilizando punteros generar un tercer vector con la sumatoria de los vectores cargados anteriormente. Bibliografía Deitel, Harvey M. y Paul J. Deitel, Cómo Programar en C#, Segunda Edición, México, 2007.

Tema: Punteros.Puntero this en C#.

Tema: Punteros.Puntero this en C#. POO. Guía No.7 1 Tema: Punteros.Puntero this en C#. Facultad: Ingeniería Escuela: Computación Asignatura: Programación Orientada a Objetos Materiales y Equipo Computadora con el software C#. Guía Número

Más detalles

Tema: Punteros: Puntero this en C#.

Tema: Punteros: Puntero this en C#. Programación II. Guía No.11 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Punteros: Puntero this en C#. Objetivos Conocer el manejo de los punteros en C#. Utilizar el puntero

Más detalles

Tema: Estructuras de Repetición en C# [For].

Tema: Estructuras de Repetición en C# [For]. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Objetivos Tema: Estructuras de Repetición en C# [For]. Utilizar las estructuras de repetición para ejecutar

Más detalles

Tema: Estructuras de Repetición en C#.

Tema: Estructuras de Repetición en C#. Programación I, Guía 4 1 Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Tema: Estructuras de Repetición en C#. Objetivos Utilizar las estructuras de repetición para

Más detalles

Tema: Funciones, Procedimientos y Recursividad en C#.

Tema: Funciones, Procedimientos y Recursividad en C#. Programación I, Guía 6 1 Tema: Funciones, Procedimientos y Recursividad en C#. Objetivos Utilizar la sintaxis de las funciones definidas por el usuario (programador) para resolver problemas. Identificar

Más detalles

Tema: Vectores en C#.

Tema: Vectores en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Tema: Vectores en C#. Objetivos Introducir al estudiante a los conceptos de estructura de datos. Conocer la

Más detalles

Tema: Estructuras de Selección en C#.

Tema: Estructuras de Selección en C#. Programación I, Guía 4 1 Tema: Estructuras de Selección en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Objetivos Utilizar las instrucciones de selección if e

Más detalles

Tema: Vectores en C#

Tema: Vectores en C# Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Objetivos Tema: Vectores en C# Introducir al estudiante a los conceptos de estructura de datos. Conocer la

Más detalles

Guia#11: Tema: Estructuras en C#.

Guia#11: Tema: Estructuras en C#. Programación1 Guia#11 1 Guia#11: Tema: Estructuras en C#. Objetivos Conocer el concepto de estructura y cómo se utilizan en C#. Conocer las operaciones con estructuras y sus aplicaciones. Desarrollar programas

Más detalles

Tema: Estructuras de Repetición en C#.

Tema: Estructuras de Repetición en C#. Programación I, Guía 5 1 Tema: Estructuras de Repetición en C#. Objetivos Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Utilizar las estructuras de repetición para

Más detalles

Tema: Estructuras en C#.

Tema: Estructuras en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Objetivos Tema: Estructuras en C#. Conocer el concepto de estructura y cómo se utilizan en C#. Conocer las

Más detalles

Tema: Funciones y Procedimientos en C#.

Tema: Funciones y Procedimientos en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Tema: Funciones y Procedimientos en C#. Objetivos Utilizar la sintaxis de las funciones definidas por el usuario

Más detalles

Tema: Estructuras de Selección en C#.

Tema: Estructuras de Selección en C#. Programación I, Guía 3 1 Tema: Estructuras de Selección en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Objetivos Utilizar las instrucciones de selección if e

Más detalles

Tema: Estructuras en C#.

Tema: Estructuras en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Objetivos Tema: Estructuras en C#. Conocer el concepto de estructura y cómo se utilizan en C#. Conocer las

Más detalles

Tema: Matrices en C#.

Tema: Matrices en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Tema: Matrices en C#. Objetivos Implementar arreglos de dos dimensiones. Resolver problemas aplicando matrices.

Más detalles

Tema: Funciones, Procedimientos y Recursividad en C#.

Tema: Funciones, Procedimientos y Recursividad en C#. Tema: Funciones, Procedimientos y Recursividad en C#. Objetivos Programación I, Guía 6 1 Utilizar la sintaxis de las funciones definidas por el usuario (programador) para resolver problemas. Identificar

Más detalles

Tema: Funciones, Procedimientos y Recursividad en C#.

Tema: Funciones, Procedimientos y Recursividad en C#. Tema: Funciones, Procedimientos y Recursividad en C#. Objetivos Programación I, Guía 7 1 Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Utilizar la sintaxis de las funciones

Más detalles

Tema: Cadenas en C#.

Tema: Cadenas en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Objetivos Tema: Cadenas en C#. Mostrar la implementación y el uso de cadenas de texto. Identificar las funciones

Más detalles

Tema: Estructuras de Repetición en C# [For].

Tema: Estructuras de Repetición en C# [For]. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Tema: Estructuras de Repetición en C# [For]. Objetivos Utilizar las estructuras de repetición para ejecutar

Más detalles

Tema: Arreglos en C#.

Tema: Arreglos en C#. Programación1, Guia#7 1 Tema: Arreglos en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Objetivos Introducir al estudiante a los conceptos de estructura de datos.

Más detalles

Guia#12: Tema: Archivos en C#.

Guia#12: Tema: Archivos en C#. Guia#12: Tema: Archivos en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Objetivos Conocer la forma de transferencia de información en C#. Aprender las operaciones

Más detalles

Tema: Estructuras de Repetición en C# [While y Dowhile].

Tema: Estructuras de Repetición en C# [While y Dowhile]. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Tema: Estructuras de Repetición en C# [While y Dowhile]. Objetivos Utilizar las estructuras de repetición para

Más detalles

Tema: Matrices y Cadenas en C#.

Tema: Matrices y Cadenas en C#. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Objetivos Tema: Matrices y Cadenas en C#. Implementar arreglos de dos dimensiones. Resolver problemas aplicando

Más detalles

Tema: Entorno a C# y Estructuras Secuenciales.

Tema: Entorno a C# y Estructuras Secuenciales. Tema: Entorno a C# y Estructuras Secuenciales. Objetivos Programación I, Guía 3 1 Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Utilizar el entorno de programación

Más detalles

Aprender los conceptos, manejo, usos y aplicación de heaps a fin de utilizarlos para el desarrollo de aplicaciones

Aprender los conceptos, manejo, usos y aplicación de heaps a fin de utilizarlos para el desarrollo de aplicaciones Programación III, Guía 12 1 Facultad : Ingeniería Escuela : Computación Asignatura: Programación III Tema: HEAPS. Objetivo Aprender los conceptos, manejo, usos y aplicación de heaps a fin de utilizarlos

Más detalles

Tema: Entorno a C# En el primer ejercicio se inicia el entorno de programación de Visual Studio.NET y se enseña a crear una aplicación en consola.

Tema: Entorno a C# En el primer ejercicio se inicia el entorno de programación de Visual Studio.NET y se enseña a crear una aplicación en consola. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Objetivos Tema: Entorno a C# Utilizar el entorno de programación Visual Studio 2013 o superior. Aprender la

Más detalles

Tema: Entorno a C# Objetivos. Introducción. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada

Tema: Entorno a C# Objetivos. Introducción. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Objetivos Tema: Entorno a C# Utilizar el entorno de programación Visual Studio 2012 o superior. Aprender la

Más detalles

Tema: Estructuras de Repetición en C# [While y Dowhile]

Tema: Estructuras de Repetición en C# [While y Dowhile] Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Tema: Estructuras de Repetición en C# [While y Dowhile] Objetivos Utilizar las estructuras de repetición para

Más detalles

Tema: Entorno a C# En el primer ejercicio se inicia el entorno de programación de Visual Studio.NET y se enseña a crear una aplicación en consola.

Tema: Entorno a C# En el primer ejercicio se inicia el entorno de programación de Visual Studio.NET y se enseña a crear una aplicación en consola. Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Objetivos Tema: Entorno a C# Utilizar el entorno de programación Visual Studio 2013 o superior. Aprender la

Más detalles

Tema: Repaso sobre uso de Funciones, Arreglos y Punteros en C++.

Tema: Repaso sobre uso de Funciones, Arreglos y Punteros en C++. Programación II. Guía No. 1 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Repaso sobre uso de Funciones, Arreglos y Punteros en C++. Objetivos. Utilizar la sintaxis de las

Más detalles

Curso de Programación en C. Licenciatura, FCQeI. APUNTADORES.

Curso de Programación en C. Licenciatura, FCQeI. APUNTADORES. APUNTADORES. La memoria de una máquina esta ordenada en forma de celdas numeradas consecutivamente y que se pueden manipular individualmente o en grupos contiguos. La siguiente figura muestra una representación

Más detalles

Tema: Introducción al IDE de Microsoft Visual C#.

Tema: Introducción al IDE de Microsoft Visual C#. Tema: Introducción al IDE de Microsoft Visual C#. Objetivos: El propósito de este tema es que el alumno se familiarice con el entorno de desarrollo de Visual C# Express mientras crea el formulario más

Más detalles

directamente indirectamente

directamente indirectamente PUNTEROS EN C PUNTEROS Permiten simular el pasaje de parámetros por referencia. Permiten crear y manipular estructuras de datos dinámicas. Su manejo es de fundamental importancia para poder programar en

Más detalles

EVALUACIÓN. Programa de trabajador

EVALUACIÓN. Programa de trabajador EVALUACIÓN Programa de trabajador Universidad Tecnológica de Puebla Tecnologías de la información y comunicación Programación 2 D Marco Antonio Marín Fernández Planteamiento Se desea visualizar el incremento

Más detalles

Tema: Tipos de datos y conversiones

Tema: Tipos de datos y conversiones Tema: Tipos de datos y conversiones Objetivos: El propósito de este tema es que el alumno se familiarice con el entorno de desarrollo de Visual C# Express y realice diversos programas en el entorno Consola,

Más detalles

GUÍA DE TRABAJO N 1 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 13

GUÍA DE TRABAJO N 1 C# Ing. Néstor Raúl Suarez Perpiñan Página 1 de 13 Página 1 de 13 Tema: FUNDAMENTOS DE PROGRAMACIÓN EN LENGUAJE C# Objetivo: Conocer y manejar correctamente los tipos de datos y las diferentes estructuras de programación que hacen parte del lenguaje de

Más detalles

Tema: Funciones, Procedimientos y Recursividad en C#.

Tema: Funciones, Procedimientos y Recursividad en C#. 2 Programación I Programación I. Guía 6 3 Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Tema: Funciones, Procedimientos y Recursividad en C#. Objetivos Utilizar la

Más detalles

Ingeniería en Desarrollo de software Cuatrimestre 07. Asignatura: Programación.NET 1. Clave:

Ingeniería en Desarrollo de software Cuatrimestre 07. Asignatura: Programación.NET 1. Clave: Ingeniería en Desarrollo de software Cuatrimestre 07 Asignatura: Programación.NET 1 Clave: 150930726 Actividades de la unidad 1 1 Actividad 1. Métodos En la presente actividad socializarás los contenidos

Más detalles

Tema: Estructuras de Selección en C#

Tema: Estructuras de Selección en C# Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Tema: Estructuras de Selección en C# Objetivos Utilizar las instrucciones de selección if e if..else para elegir

Más detalles

El operador contenido ( ) permite acceder al contenido de

El operador contenido ( ) permite acceder al contenido de 3. Memoria Dinámica y Punteros Objetivos: Distinguir los conceptos de memoria estática y memoria dinámica Comprender el concepto de puntero como herramienta de programación Conocer cómo se definen y cómo

Más detalles

Informática Lección 5. Arreglos (vectores) Curso Pedro Álvarez y José Ángel Bañares 2/11/2010. Dpto. Informática e Ingeniería de Sistemas.

Informática Lección 5. Arreglos (vectores) Curso Pedro Álvarez y José Ángel Bañares 2/11/2010. Dpto. Informática e Ingeniería de Sistemas. Fundamentos de Informática Lección 5. Arreglos (vectores) Curso 2010-2011 Pedro Álvarez y José Ángel Bañares 2/11/2010. Dpto. Informática e Ingeniería de Sistemas. Índice de contenidos Arreglos: Concepto

Más detalles

Apuntadores en C/C++ INTRODUCTION TO PROGRAMMING

Apuntadores en C/C++ INTRODUCTION TO PROGRAMMING Apuntadores en C/C++ JUAN CARLOS CONDE RAMÍREZ INTRODUCTION TO PROGRAMMING Memoria de la Computadora La memoria de una máquina esta ordenada en forma de celdas numeradas consecutivamente y que se pueden

Más detalles

Un array se compone de elementos de igual tamaño, almcenando linealmente en posiciones de memoria consecutiva. Array (Arreglo) Primer elemento

Un array se compone de elementos de igual tamaño, almcenando linealmente en posiciones de memoria consecutiva. Array (Arreglo) Primer elemento ARRAY Y CADENAS 51 ARRAY Un array se compone de elementos de igual tamaño, almcenando linealmente en posiciones de memoria consecutiva Array (Arreglo) Segundo elemento Primer elemento N- esimo elemento

Más detalles

Tema: Estructuras de Selección en C#.

Tema: Estructuras de Selección en C#. 2 Programación I Tema: Estructuras de Selección en C#. Programación I. Guía 4 3 Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación I Objetivos Utilizar las instrucciones de

Más detalles

Tema: Grafos en C#. Objetivos Específicos. Materiales y Equipo. Introducción Teórica. Programación IV. Guía 7

Tema: Grafos en C#. Objetivos Específicos. Materiales y Equipo. Introducción Teórica. Programación IV. Guía 7 Programación IV. Guía 7 1 Tema: Grafos en C#. Facultad: Ingeniería Escuela: Computación Asignatura: Programación IV Objetivos Específicos Definir el concepto de Grafo. A partir de una clase agregar la

Más detalles

Informática Ingeniería en Electrónica y Automática Industrial

Informática Ingeniería en Electrónica y Automática Industrial Informática Ingeniería en Electrónica y Automática Industrial Punteros en lenguaje C Punteros en lenguaje C Definición Declaración e inicialización de punteros Operadores de punteros: «*» y «&» Operaciones

Más detalles

Objetivos. Introducción

Objetivos. Introducción 1 Programación III, Guía 1 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación III GUIA 1: Uso de C# modo consola. Objetivos Utilizar el lenguaje de programación Visual C# y ser capaz

Más detalles

Tema: Estructuras de Selección en C#

Tema: Estructuras de Selección en C# Facultad: Ingeniería Escuela: Ingeniería en Computación Asignatura: Programación Estructurada Tema: Estructuras de Selección en C# Objetivos Utilizar las instrucciones de selección if e if..else para elegir

Más detalles

1.1 Tipos de Datos Primitivos. 1.2 Tipos de datos estructurados. 1.3 Definición de estructura de datos

1.1 Tipos de Datos Primitivos. 1.2 Tipos de datos estructurados. 1.3 Definición de estructura de datos 1.1 Tipos de Datos Primitivos 1.2 Tipos de datos estructurados 1.2.1 Arreglos unidimensionales, bidimensionales y cadenas de caracteres 1.2.2 Registros o Estructuras (unión y estructura) 1.3 Definición

Más detalles

REPRESENTACIÓN DE DATOS

REPRESENTACIÓN DE DATOS REPRESENTACIÓN DE DATOS Tipos de datos primitivos Tipos de Datos Estructurados TIPOS DE DATOS SIMPLES O PRIMITIVOS Dato Longitud Rango 2 TIPOS DE DATOS SIMPLES O PRIMITIVOS Surgen de la necesidad de tener

Más detalles

Definición Es una directiva using que ayuda al compilador a localizar una clase que se usa en la aplicación.

Definición Es una directiva using que ayuda al compilador a localizar una clase que se usa en la aplicación. Capitulo 3 Introducción a las aplicaciones de C# Resumen: Item using System; espacios de nombres: Las palabras clave estilo de mayúsculas/minúsculas Pascal public class Bienvenido1 Definición Es una directiva

Más detalles

Laboratorio de Arquitectura de Redes. Punteros en lenguaje C

Laboratorio de Arquitectura de Redes. Punteros en lenguaje C Laboratorio de Arquitectura de Redes Punteros en lenguaje C Punteros en lenguaje C Definición Declaración e inicialización de punteros Operadores de punteros: «*» y «&» Operaciones con punteros Operaciones

Más detalles

CURSO SUPERIOR EN PROGRAMACIÓN DE AUTÓMATAS

CURSO SUPERIOR EN PROGRAMACIÓN DE AUTÓMATAS CURSO SUPERIOR EN PROGRAMACIÓN DE AUTÓMATAS Con la finalidad de facilitar la asimilación de los contenidos del curso consideramos de su interés facilitarle los iconos propuestos para este fin: Este icono

Más detalles

Objetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola)

Objetivos de la sesión. Aplicación de consola 7/30/11. Código con que se inicia un programa en Visual C# (aplicación de consola) Objetivos de la sesión Entender el tipo de programas que se pueden realizar con aplicaciones de consola. Conocer el concepto de variable, la forma en que se declaran y su utilización. Conocer la forma

Más detalles

Introducción ARREGLOS ARREGLOS ARREGLOS. Introducción Definición de arreglos. Tipos de arreglos. Arreglos unidimensionales Y bidimensionales.

Introducción ARREGLOS ARREGLOS ARREGLOS. Introducción Definición de arreglos. Tipos de arreglos. Arreglos unidimensionales Y bidimensionales. ARREGLOS Introducción Definición de arreglos. Tipos de arreglos. Arreglos unidimensionales Y bidimensionales. Introducción En esta ocasión veremos el importante tema de las estructuras de datos: colecciones

Más detalles

Agenda..NET C# Laboratorio #1

Agenda..NET C# Laboratorio #1 PROGRAMACIÓN III Agenda.NET C# Laboratorio #1 .NET Qué es.net? Una arquitectura tecnológica para la creación y distribución de software como servicio. Servicio en cualquier plataforma, cliente en cualquier

Más detalles

funciones printf scanf

funciones printf scanf FUNCIONES EN C FUNCIONES Los módulos en C se llaman funciones. Hemos estado utilizando funciones de la biblioteca estandar stdio.h como por ejemplo printf y scanf. Comenzaremos viendo algunas funciones

Más detalles

Programación. Test Autoevaluación Tema 6

Programación. Test Autoevaluación Tema 6 Programación Test Autoevaluación Tema 6 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordóñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.

Más detalles

PROGRAMACIÓN EN C#.NET Programación Orientada a Objetos en C# Ing. Bruno López Takeyas

PROGRAMACIÓN EN C#.NET Programación Orientada a Objetos en C# Ing. Bruno López Takeyas PROGRAMACIÓN EN C#.NET Programación Orientada a Objetos en C# Ing. Bruno López Takeyas Instituto Tecnológico de Nuevo Laredo 1 Qué es UML? UML = Unified Modeling Language Un lenguaje de propósito general

Más detalles

PRINCIPIOS DE PROGRAMACIÓN. Mtro. en Ingeniería de Software. Especialidad en e-commerce Ismael Jiménez Hernández

PRINCIPIOS DE PROGRAMACIÓN. Mtro. en Ingeniería de Software. Especialidad en e-commerce Ismael Jiménez Hernández PRINCIPIOS DE PROGRAMACIÓN Mtro. en Ingeniería de Software. Especialidad en e-commerce Ismael Jiménez Hernández Consideraciones Generales Instructor: Ismael Jiménez Hernández Duración: 3.2 horas/semana

Más detalles

Tema1:Controles de Programas estructurados. Entrada y salida de datos ENTRADA Y SALIDA DE DATOS ENTRADA Y SALIDA

Tema1:Controles de Programas estructurados. Entrada y salida de datos ENTRADA Y SALIDA DE DATOS ENTRADA Y SALIDA Tema1:Controles de Programas estructuras 1)Estructuras Hacer mientras (Do While), 2)Ejercicios. Estructuras Mientras (Repeat), 3)Ejercicios. Estructuras Desde/Para (For), 4)Ejercicios. Entrada y salida

Más detalles

Docente: Juan Carlos Pérez P. Alumno : Fecha : Nota:

Docente: Juan Carlos Pérez P. Alumno : Fecha : Nota: Docente: Juan Carlos Pérez P. Alumno : Fecha : Nota: Justificación: Se pretende con éste contribuir a que el alumno se inicie y conozca el entorno del IDE en la creación de pequeños programas en java Objetivos:

Más detalles

Apuntadores (Punteros)

Apuntadores (Punteros) Apuntadores (Punteros) x9ff10 X int 209 SESION 7 *ptr Definición Llamados también punteros. Un Apuntador es una variable que contiene una dirección de memoria, la cual corresponderá a un dato o a una variable

Más detalles

Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN

Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN Tema 1 INTRODUCCIÓN A LOS LENGUAJES DE PROGRAMACIÓN - Introducción - Sintaxis - Semántica básica - Tipos de datos - Expresiones y enunciados - Procedimientos y ambientes - Tipos abstractos de datos y módulos

Más detalles

Tipos Recursivos de Datos

Tipos Recursivos de Datos 1/1 Tipos Recursivos de Datos Josefina Sierra Santibáñez 27 de noviembre de 2016 2/1 Introducción La recursividad no sólo se puede aplicar a la definición de procedimientos (i.e. funciones o acciones),

Más detalles

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas

Carlos Montenegro. Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 2 - Introducción al lenguaje Java, identificadores y comentarios. Carlos Montenegro Programación Orientada a Objetos Proyecto Curricular de Ingeniería de Sistemas 1. Introducción: Java tiene como todos

Más detalles

PUNTEROS (Apuntadores)

PUNTEROS (Apuntadores) PUNTEROS (Apuntadores) Unidad III INTRODUCCIÓN A PUNTEROS. CONCEPTOS BÁSICOS. DECLARACIÓN DE PUNTEROS. PUNTEROS Como una colección de posiciones de memoria consecutivas. En ella se almacenan los distintos

Más detalles

Tema: Métodos de Ordenamiento. Parte 1.

Tema: Métodos de Ordenamiento. Parte 1. Programación IV. Guía 2. 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación IV Tema: Métodos de Ordenamiento. Parte 1. Objetivos Específicos Identificar la estructura de algunos algoritmos

Más detalles

Objetivos. El alumno conocerá y aplicará el concepto de apuntador para la realización de programas de manejo eficiente de memoria.

Objetivos. El alumno conocerá y aplicará el concepto de apuntador para la realización de programas de manejo eficiente de memoria. Objetivos El alumno conocerá y aplicará el concepto de apuntador para la realización de programas de manejo eficiente de memoria. Al final de esta práctica el alumno podrá: 1. Acceder a localidades de

Más detalles

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA

INTRODUCCIóN A LA PROGRAMACIóN APUNTES DE JAVA APUNTES DE JAVA APUNTES DE JAVA FUNCIONAMIENTO DE UN PROGRAMA Assembler Ensamblador Ejecuta Programador Programa fuente BASIC Interprete Ejecuta C, C++, Pascal Compilador Compila Ejecuta Programa fuente Programa Objeto

Más detalles

UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO.

UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. UNIVERSIDAD DE LOS ANDES NUCLEO UNIVERSITARIO RAFAEL RANGEL (NURR) DEPARTAMENTO DE FISICA Y MATEMATICA AREA COMPUTACION TRUJILLO EDO. TRUJILLO 1.- Resumen de Prog1 Comentarios es C++ Declaraciones de variables.

Más detalles

Objetivo. Introducción. Programación III, Guía 2 1. Facultad : Ingeniería Escuela : Computación Asignatura: Programación III

Objetivo. Introducción. Programación III, Guía 2 1. Facultad : Ingeniería Escuela : Computación Asignatura: Programación III Programación III, Guía 2 1 Facultad : Ingeniería Escuela : Computación Asignatura: Programación III Tema: MODO CONSOLA Y GRAFICO EN C#. Objetivo Conozca el lenguaje de programación Visual C#.NET de modo

Más detalles

//La asignación de la propiedad Horas hace que el 'set' de acceso a ser llamado. t.hours = 24;

//La asignación de la propiedad Horas hace que el 'set' de acceso a ser llamado. t.hours = 24; Continuación del tema 3 Métodos especiales (Propiedades) Herencia Polimorfismo Sobrecargas Espacios de Nombre(namespace) Propiedades Las propiedades son miembros que ofrecen un mecanismo flexible para

Más detalles

Datos Elementales y formato de un programa en Java

Datos Elementales y formato de un programa en Java Datos Elementales y formato de un programa en Java PROGRAMACION I Grado en Matematicas Informática Programación I - 2015/2016 Datos, variables y mi primer programa 1 Introducción a la programación o Programa:

Más detalles

Tema 13: Apuntadores en C

Tema 13: Apuntadores en C Tema 13: Apuntadores en C M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom edgardoadrianfrancom Estructuras de datos (Prof. Edgardo A. Franco) 1 Contenido Introducción

Más detalles

Apuntadores en C y C++

Apuntadores en C y C++ Apuntadores en C y C++ Universidad de Carabobo Facultad Experimental de Ciencias y Tecnología Prof. Marcos A. Gil T. 8 de diciembre de 2004 1. Introducción Los apuntadores en C y C++ son una herramienta

Más detalles

Informática PRÀCTICA 9 Curs Práctica Nº 9: Rango y precisión de representación de números en el ordenador.

Informática PRÀCTICA 9 Curs Práctica Nº 9: Rango y precisión de representación de números en el ordenador. Departamento de Práctica Nº 9: Rango y precisión de representación de números en el ordenador. Uso de punteros Objetivos de la práctica: - Entender la representación de números (enteros y reales) en el

Más detalles

Universidad Don Bosco (UDB) Facultad de Ingeniería / Escuela de Computación

Universidad Don Bosco (UDB) Facultad de Ingeniería / Escuela de Computación UNIDAD 6: APUNTADORES O PUNTEROS CONTENIDOS 6.1. Introducción a los apuntadores o punteros 6.1.1. Parámetros de dirección Parámetros de referencia 6.1.2. Apuntadores o punteros Diferencias entre una referencia

Más detalles

Programación 1 Grado de Ingeniería Robótica

Programación 1 Grado de Ingeniería Robótica Programación 1 Grado de Ingeniería Robótica Tema 6: Datos estructurados Índice (sesión 11/11/2015): Arrays estáticos Cadenas de caracteres Funciones de la librería string.h Punteros Declaración de punteros

Más detalles

ESTRUCTURAS. Struct Identificador_ tipo_estructura { Tipo miembro_1; /*Declaración de los miembros*/

ESTRUCTURAS. Struct Identificador_ tipo_estructura { Tipo miembro_1; /*Declaración de los miembros*/ DECLARACION DE ESTRUCTURAS ESTRUCTURAS La estructura es una colección de variables, la cual puede poseer distintos tipos de datos (a diferencia de los arreglos que solamente pueden tener un solo tipo de

Más detalles

Un puntero no es más que una variable estática cuyo contenido es una dirección de memoria.

Un puntero no es más que una variable estática cuyo contenido es una dirección de memoria. Los punteros en C 1 Introducción Cómo se organiza la memoria asociada a un programa? Como una colección de posiciones de memoria consecutivas. En ellas se almacenan los distintos tipos de datos, que ocupan,

Más detalles

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO

UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO LICENCIATURA EN INGENIERÍA DE SOFTWARE UNIDAD DE APRENDIZAJE: PROGRAMACIÓN Créditos institucionales de la UA: 8 Material visual: Diapositivas Unidad de competencia

Más detalles

Ingeniería en Desarrollo de software Cuatrimestre 07. Asignatura: Programación.NET 1. Clave: Unidad 3. Estructuras de control

Ingeniería en Desarrollo de software Cuatrimestre 07. Asignatura: Programación.NET 1. Clave: Unidad 3. Estructuras de control Ingeniería en Desarrollo de software Cuatrimestre 07 Asignatura: Programación.NET 1 Clave: 150930726 Índice PRESENTACIÓN DE LA UNIDAD... 3 PROPÓSITOS DE LA UNIDAD... 3 COMPETENCIA ESPECÍFICA... 3 TEMARIO

Más detalles

ESTRUCTURA DE DATOS. Memoria estática Memoria dinámica Tipo puntero Declaración de punteros Gestión de memoria dinámica Resumen ejemplo

ESTRUCTURA DE DATOS. Memoria estática Memoria dinámica Tipo puntero Declaración de punteros Gestión de memoria dinámica Resumen ejemplo ESTRUCTURA DE DATOS Memoria estática Memoria dinámica Tipo puntero Declaración de punteros Gestión de memoria dinámica Resumen ejemplo DATOS ESTÁTICOS Su tamaño y forma es constante durante la ejecución

Más detalles

Estructura de un programa en Java. Tipos de datos básicos. class miprimerprograma{ // comentario, no es parte del programa

Estructura de un programa en Java. Tipos de datos básicos. class miprimerprograma{ // comentario, no es parte del programa Contenido Estructura de un programa en Java... 2 Tipos de datos básicos... 2 Operadores... 3 Literales... 4 Entrada / Salida... 4 Sentencias condicionales... 5 Funciones... 5 Ejercicios... 6 Variables,

Más detalles

Curso de Java Introducción a la Programación II

Curso de Java Introducción a la Programación II Curso de Java Introducción a la Programación II Jaime Fernández Martín Curso INEM 02830. Programación en Java Marzo 2010 Índice 1 Tipos Java 2 Decalaración de variables 3 Operadores aritméticos Índice

Más detalles

Estructura de datos y Programación

Estructura de datos y Programación Estructura de datos y Programación Tema: Conceptos Básicos- Estructuras de control - Arreglos Ing. Analia Méndez Ing. Raquel Zarco Año: 2012 ELEMENTOS DE UN PROGRAMA EN JAVA El programa Java consta de

Más detalles

Tema: Sobrecarga de Operadores Unarios. Sobrecarga de Funciones.

Tema: Sobrecarga de Operadores Unarios. Sobrecarga de Funciones. Programación II. Guía 8 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Sobrecarga de Operadores Unarios. Sobrecarga de Funciones. Objetivos Diferenciar sobrecarga de operadores

Más detalles

Conexión SQL Server y C# (Consola)

Conexión SQL Server y C# (Consola) Conexión SQL Server y C# (Consola) Objetivo: Manejar bases de datos usando SQL Server, creando tablas dentro una base de datos y esto a su vez enlazarlo a una aplicación de C#, haciendo uso del método

Más detalles