Diseño de algoritmos “Estructuras”

Slides:



Advertisements
Presentaciones similares
PROGRAMACIÓN EN C.
Advertisements

Curso de java básico (scjp)
Abstracción de Datos Arrays.
Instrucciones Básicas Entrada de Información
Fundamentos de Programación I Agradecimientos al Ing. Namuel Solórzano Peralta por el contenido de esta presentación.
Estructuras en C++ Roger Morera Fallas.
Ing. Eduard Antonio Lozano Córdoba
ALGORITMO, ESTRUCTURAS Y PROGRAMACIÓN I PROFESORA: NELWI BÁEZ.
Fundamentos de la Programación Estructurada
Procedimientos y Funciones
Lenguaje de Programación C
Programación I Teoría III
Estructuras de datos. Programación, Algoritmos y Estructuras de Datos.
Las estructuras de arreglos fueron usadas en las primeras computadoras digitales, cuando la programación se hacía todavía en lenguaje máquina, para tablas.
ESTRUCTURAS DE DATOS.
INFORMATICA I Arreglos 1 CLASE 17.
INFORMATICA I Arreglos 2 CLASE 18.
III. DISEÑO DE ALGORITMOS PARA LA SOLUCIÓN DE PROBLEMAS.
Estructuras Compuestas.
Aprende C en una lluviosa tarde de domingo (en algo más de un par de horas) Sintaxis del lenguaje C para implementar un programa imperativo.
ARREGLOS Estructuras de datos.
Estructuras de Datos Punteros y algo más.
Unidad 3 Punteros.
Ejemplos en C /* Ejemplos L/E en C con printf y scanf */ #include #include main(){ int i; int i; char nombre[30]; char nombre[30]; printf ("\nIntroduce.
¿Qué es un PUNTERO?: Un puntero es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No.
Vectores en java.
ALGORITMO, ESTRUCTURAS Y PROGRAMACIÓN I PROFESORA: NELWI BÁEZ.
Arreglos: Vectores en JAVA
Funciones “En C” Semestre de Otoño 2006 Claudio Gutiérrez-Soto.
Funciones y procedimientos
CI TEORIA semana 8 Subprogramas o funciones Definición de funciones.
Diseño de algoritmos “Estructuras”
Diseño de algoritmos “Punteros”
Tema 3 Entrada y Salida.
Tema 9 Estructuras.
Características de “C”
Introducción a la Programación “Conceptos de Algoritmo”
Departamento de Informática Universidad Técnica Federico Santa María Capítulo 2 “Subprogramas/Funciones - Arreglos” Arreglos-Arrays.
Estructuras de Iteracion (Repetitivas ) while , for,, do-while
Arreglos.
Informática Ingeniería en Electrónica y Automática Industrial
Estructuras.
Introducción a la Programación “Ejercicios” Semestre de Otoño 2006 Claudio Gutiérrez-Soto.
TABLAS Definición. El tipo tabla permite definir objetos formados por un conjunto de elementos del mismo tipo. Ejemplos. El tipo tabla se utiliza para.
SENTENCIAS DE CONTROL Ing. José Antonio Poma G..
Clase 10: Estructuras de datos y arreglos.
Unidad VI Registros (estructuras, uniones y enumeraciones)
PUNTEROS Ing Anghello Quintero.
Prof. Gonzalo Pastor struct. struct Un struct permite dividir cada posición del vector en varias partes Una estructura (struct) es un tipo de datos compuesto.
Introducción a la Programación “El lenguaje C” Manuel Crisosto M., Claudio Gutiérrez S., Christian Vidal C.
Matrices y Funciones “En C” Semestre de Otoño 2006 Claudio Gutiérrez-Soto.
Programación en C para electrónicos
PUNTEROS Y REFERENCIAS
APUNTADORES.
Elementos básicos del lenguaje
Programación Procedural y Recursiva en C++
Registros Prof. Flor Narciso Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes.
ELEMENTOS DE COMPUTACIÓN Profesor: Guillermo Figueroa
Computación II Capitulo VII Punteros. Presentación de la unidad Objetivos: –Ser capaces de utilizar punteros. –Comprender las relaciones entre punteros,
Capitulo 4 Arreglos o Arrays Unidimensionales Bidimensionales Strings

Fundamentos de Programación
Arreglos unidimensionales
UNIDAD 4: Introducción a la Lógica Computacional Objetivo : Interpretar y aplicar adecuadamente los fundamentos básicos de la estructura y funcionamiento.
CLASE 10. AGENDA 1 Repaso 2 Operadores 3 Directivas 14 Entrada y Salida de Datos.
Sentencia de Impresión. Qué es? Cuan do en un algoritmo necesitamos pedirle al usuario algún dato como: dame un numero. Lo anterior debemos pedirlo y.
MEMORIA DINÁMICA.
OBJETIVOS DEFINIR LA ESTRUCTURA DE ARREGLOS. DECLARAR ARREGLOS EN C.
Métodos en Java. Estructura de un programa en Java ► La relación con la vida misma la podemos ver en el siguiente comentario: Imaginemos que dos clases.
3.6 Manejo de E/S Estructuras En la creación de soluciones para algunos problemas surge la necesidad de agrupar datos de diferente tipo o de manejar datos.
Transcripción de la presentación:

Diseño de algoritmos “Estructuras” Claudio Gutiérrez-Soto.

Estructuras Las estructuras son un conjunto de variables que se referencian bajo un mismo nombre, proporcionando un medio conveniente para mantener reunida la información relacionada

Estructuras Las variables "campos" que abarca la estructura se llaman elementos de la estructura. En general cada elemento de la estructura está relacionada lógicamente con los otros. Ejemplo: Definición de una estructura para almacenar datos básicos de una persona. struct usuario{ char nombre[30]; char calle[40]; char cuidad[20]; char region[3]; char fono[7]; int edad; };

Estructuras La palabra clave struct, le indica al compilador que está siendo declarada una estructura. Obsérvese que la definición termina con un ; . Esto es debido a que la definición de una estructura es una sentencia. Note que los campos dentro de una estructura no requieren ser del mismo tipo de dato. El número de estructuras y el número de campos dependerá del problema a resolver.

Estructuras Declaración de Variables de tipo estructura Sintaxis: struct nombre_estructura var1,var2,.... ,varN; o struct nombre_estructura{ Elementos de estructura }var1,var2,....,varN;

Estructuras Ejemplo: Definición de variables struct usuario user1, user2; Otra forma de poder haber hecho esto seria: struct usuario{ char nombre[30]; char calle[40]; char cuidad[20]; char region[3]; char fono[7]; int edad; } user1,user2;

Estructuras Referencia a los elementos de una estructura Para hacer referencia a los elementos de una estructura se utiliza el operador punto “.” . Sintaxis: var_tipo_struct.elemento El nombre de la variable estructura va seguido del punto y del nombre del elemento, referenciando ese elemento individual de la estructura.

Estructuras Ejemplo: printf("Ingrese el nombre para el primer usuario \n"); gets(user1.nombre); printf("Ingrese la edad del primer usuario \n"); scanf("%d",&user1.edad);

Estructuras Inicialización de variables tipo estructura struct usuario{ char nombre[30]; char calle[40]; char cuidad[20]; char region[3]; char fono[7]; int edad; } user1,user2; main() { struct user1={“Claudio”,”Collao”,”Conce”,”Octava”,111,35}; printf(“Saludos %s \n”,user1.nombre); }

Estructuras Arreglos de estructuras Supongamos nuestra estructura: struct usuario y que deseamos declarar N usuarios, se suscitaría lo siguiente: struct usuario{ char nombre[30]; char calle[40]; char cuidad[20]; char region[3]; char fono[7]; int edad; } user1,user2,..., userN;

Estructuras Arreglos de estructuras Lo cual para acceder a cada variable se traduce en algo realmente complejo; Para resolver esta complejidad podemos utilizar un arreglo. struct usuario{ char nombre[30]; char calle[40]; char cuidad[20]; char region[3]; char fono[7]; int edad; }user[N];

Estructuras Arreglos de estructuras Por lo tanto se puede definir un arreglo de estructuras de la forma anterior o de la siguiente forma: struct usuario user[N];

Estructuras Arreglos de estructuras Para poder acceder a algún elemento del arreglo, se indica el nombre del arreglo, el índice del arreglo y el elemento de la estructura. Por ejemplo: for(i=0;i<N ;i++) { printf("Ingrese el nombre para user[%d] \n",i); gets(user[i].nombre); }

Estructuras Estructuras en las funciones Funciones de tipo estructura Son las funciones que devuelven datos de tipo estructura. Sintaxis: struct nombre_estructura nombre_funcion(parametros) { }

Estructuras Ejemplo: En este ejemplo se crea una estructura que almacena los elementos de los número complejos, o sea el valor real y el imaginario. struct complejos{ float real; float imaginario; }; typedef struct complejos COMPLEX; COMPLEX asignar(float Real , float Imag) { COMPLEX a; a.real=Real; a.imaginario=Imag; return(a); } main() { COMPLEX a; float aR,aI; printf(“ingrese la parte real para a\n”); scanf(“%f”,&aR); printf(“ingrese la parte imaginaria para a\n”); scanf(“%f”,&aI); a=asignar(aR,aI); }

¿Preguntas?