Estructuras de Datos Estáticas. Diseñar y programar en lenguaje C soluciones utilizando estructuras de datos estáticas
|
|
- Joaquín Peralta Cordero
- hace 6 años
- Vistas:
Transcripción
1 Fundación Misión Sucre Colegio Universitario de Caracas Taller 2: Estructuras de Datos Estáticas Objetivo Diseñar y programar en lenguaje C soluciones utilizando estructuras de datos estáticas Contenido Presentación del taller. 37 Buenas Prácticas de Programación.. 39 Conceptos a revisar. 40 Desarrollo del Taller. 47 Ejercicios 47 Soluciones.. 54
2 Presentación del taller En el taller anterior se realizaron actividades para reforzar los conocimientos de Programación Básica utilizando Lenguaje C, donde manipulamos los tipos de datos simples, las estructuras de control de decisión, manejo de funciones y las construcciones iterativas. En esta oportunidad, abordaremos la estructura de datos estáticos para dar continuidad al contenido de la unidad curricular ubicada dentro del Programa Nacional de Formación en Sistemas e Informática. Esta segunda guía contempla manejar la programación con punteros, arreglos, arreglos multi-dimensionales, funciones de manejo de cadenas, arreglos de cadenas, estructuras y sentencia typedef. El propósito es ayudar a los estudiantes a consolidar los conocimientos adquiridos en clase. Los ejercicios presentados en este material están divididos en cinco fases de desarrollo, que contemplan lo siguiente: Fase 1: El alumno correrá el programa en frío para saber que hace. Fase 2: Se da un código fuente para que el estudiante pueda visualizar posibles errores que existen en el mismo. Fase 3: Se dan varios enunciados para que el estudiante realice la codificación del programa. Fase 4: Se presenta un código desordenado para que los alumnos lo ordenen y busquen la solución más idónea. Fase 5: Contiene las soluciones a los ejercicios presentados en las fases anteriores. 37
3 Al terminar con el taller 2 te recomendamos realizar algunos ejercicios propuestos para consolidar los conocimientos adquiridos por estos talleres y poder definir tu preparación para el ultimo taller de estructura de datos dinámico. En estos ejercicios propuestos encontraras una autoevaluación que te permitirá conocer tu rendimiento en los conceptos básicos de lenguaje C. Estos ejercicios están presentes en los anexos de esta guía, muchos éxitos. Para facilitar el uso de la guía de ejercicios se incluye una breve descripción de la simbología usada en su presentación. Simbología a usar: Fase 1: Que hace el programa? Fase 2: Buscar errores en el programa Fase 3: Desarrollar programa Fase 4: Ordenar programas: Fase 5: Soluciones 38
4 Buenas Prácticas de Programación En el taller 1 se enumeran las prácticas consideradas como de buen programador haciendo referencia a características específicas del Lenguaje C. Recordaremos algunas de importancia para la presentación de los programas. 1. Escriba sus programas de C de forma sencilla y directa. 2. Coloque punto y coma (;) al final de cada sentencia. 3. Cada programa debe comenzar con un comentario que describa su propósito. 4. Utiliza sangrías para presentar tus programas de manera legible. 39
5 Conceptos a revisar Muchas aplicaciones requieren el uso de múltiples elementos de datos que tienen una característica en común. Hasta ahora hemos visto que para almacenar la calificación de un estudiante se hace a través de una variable. Pero si queremos guardar las calificaciones de varios estudiantes, Que podemos hacer?, no lo podemos hacer con una simple variable, es necesario utilizar, por ejemplo, una colección de calificaciones con un solo identificador llamado notas y que sea capaz de referirse a cualquier calificación de un estudiante en particular. El taller de Estructura de Datos Estáticas, tiene como propósito que el estudiante consolide conocimientos fundamentales de la estructura llamada arreglo, para esto se debe tener en cuenta los siguientes conceptos: Puntero: Es una variable un tanto especial. Con un puntero podemos almacenar direcciones de memoria. En un puntero podemos tener guardada la dirección de una variable. Cuando declaramos un puntero debemos especificar el tipo de datos cuya dirección almacenará, ejemplo: char *punt; El * (asterisco) sirve para indicar que se trata de un puntero, debe ir justo antes del nombre de la variable, sin espacios. En la variable punt sólo se pueden guardar direcciones de memoria, no se pueden guardar datos. Ejemplo: int x,y; int *punt; punt = &x; /*Se le asigna la direccion de x */ Dirección de memoria
6 x la variable punt se le asigna 2000 Cuando un puntero tiene la dirección de una variable se dice que ese puntero apunta a esa variable. La declaración de un puntero depende del tipo de dato al que queramos apuntar. tipo_de_dato *nombre_del_puntero; char *punt; int *var; float *num; Los punteros tienen muchas utilidades, por ejemplo nos permiten pasar argumentos (o parámetros) a una función y modificarlos. También permiten el manejo de cadenas y de arreglos. Un puntero no sólo sirve para apuntar a una variable, también sirve para apuntar una dirección de memoria determinada, Ejemplo: main() int numero; int *punt; numero = 43; punt = № *punt = 30; printf( "Dirección de numero = %p, valor de numero = %d\n", &numero, numero ); 41
7 Arreglo: Son estructuras en memoria que ayudan a almacenar múltiples elementos de datos que tienen una característica común. Dentro del arreglo, todos los elementos de datos deben ser de un solo tipo, tales como enteros, flotante o de caracteres. int *punt; char *var; M I S I O N S U C R E Arreglo unidimensional: Un vector es un arreglo unidimensional. Un vector se declara de la siguiente forma: La forma general de declarar un arreglo es la siguiente: Ejemplo tipo_de_dato nombre_del_arreglo[ dimensión ]; Int a[7]; El tipo_de_dato es uno de los tipos de datos conocidos (int, char, float...) o de los definidos por el usuario con typdef. Donde, a es le nombre del arreglo y 7 es el subíndice que comienza por 0... hasta 6. Los subíndices en lenguaje C comienzan desde 0 y terminan en n-1, donde n es el tamaño del arreglo. 42
8 Arreglo multi-dimensionales: Para declarar un arreglo bidimensional usaremos el siguiente formato: tipo_de_dato nombre_del_arreglo[ filas ] [ columnas ]; Como se puede apreciar, la declaración es igual que la de un arreglo unidimensional al que le añadimos una nueva dimensión. Por ejemplo: int temperaturas[2][4] = 15, 17, 20, 25, 18, 20, 21, 23 ; El formato a utilizar sería el siguiente: int variable[ filas ][ columnas ] = columnas de la fila 1, columnas de la fila 2,..., columnas de la última fila, ; No debemos olvidar el ';' al final. Funciones de manejo de cadenas: Existen unas cuantas funciones el la biblioteca estándar de C para el manejo de cadenas: strlen strcpy strcat sprintf strcmp 43
9 Para usar estas funciones hay que añadir la directiva: #include <string.h> strlen: Esta función nos devuelve el número de caracteres que tiene la cadena (sin contar el '\0'). Ejemplo: n =strlen(nombre) strcpy: Toma dos cadenas como parámetros, copia la segunda cadena en la primera y retorna la primera cadena. Ejemplo: strcpy(dir_new,dir_old); strcat: Toma dos cadenas como parámetro, las concatena y retorna la cadena concatenada. Ejemplo: strcat(nombre,apellido); strcmp: toma dos cadenas como parámetros y las compara. Retorna un número menor que cero (<0) si la primera cadena es más pequeña que la segunda. Retorna cero (0) si ambas son iguales. Retorna un número mayor que (>0) si la primera cadena es más grande que la segunda. Ejemplo: compara=strcmp(nombre1,nombre2) atoi: Si la cadena es un número entero lo almacena como tal en la variable n. Esta rutina esta en stdlib.h n=atoi(cadena_edad); 44
10 atof: Si la cadena es un número real lo almacena como tal en la variable x. Rutina en stdlib.h. Ejemplo: x=atof(cadena_tiempo); Arreglos de cadenas: Es un arreglo bidimensional de tipo char, Un arreglo de cadenas puede servirnos para agrupar una serie de mensajes. Por ejemplo todos los mensajes de error de un programa. Ejemplo: #include <string.h> void main() int i; char nom[4][9] = "Martha", "Yoly", "Dolores", "Juan"; for ( i=0; i<4; i++ ) if ( strcmp(nom[i],"dolores")!= 0 ) puts(nom[i]); Estructuras: Son capaces de manejar múltiples elementos de datos usando un único identificador que los agrupa a todos juntos. Para definir una estructura usamos el siguiente formato: struct nombre_de_la_estructura 45
11 mienbro1; miembro2;... miembro_n ; ; sentencia typedef: permite al usuario definir nuevos tipos de datos que son equivalentes a los tipos de datos existente. Ejemplo typedef tipo-existente nuevo-tipo; tipo-existente: se refiere a cualquier tipo de datos estándar como int, char, flota u otro tipo de datos definidos por el usuario previamente que estén disponible nuevo-tipo: El nombre del nuevo tipo de datos definido por el usuario. Desarrollo del taller Ejercicios 46
12 A continuación se presentan los ejercicios para el desarrollo del taller de programación básica utilizando lenguaje C. Recuerda revisar la simbología en la presentación del taller. Ejercicio 1: int sumar( int *punt ) int suma, i; suma = 0; for( i=0; i<10; i++ ) suma += punt[i]; return suma; int main() int cont; int vector[10] = 10, 8, 10, 14, 11, 14, 19, 10, 18, 10 ; for( cont=0; cont<10; cont++ ) printf( " %3d\n", vector[cont] ); printf( " \n" ); printf( " %3d", sumar( vector ) ); Ejercicio 2: int main() char oracion[100]; 47
13 int i = 0; printf( "Escriba una oracion: " ); gets( oracion ); printf( "Resultado:\n" ); while ( oracion[i]!='\0' ) if ( oracion[i]==' ' ) printf( "\n" ); else printf( "%c", oracion[i] ); i++; system( "pause" ); return 0; Ejercicio 3: struct estructura_contacto char nombre[30]; char apellido[40]; char telefono[10]; char edad; ; struct estructura_contacto contacto; int main() printf( "Escribe el nombre de un contacto: " ); fflush( stdout ); scanf( "%s", &contacto.nombre ); printf( "Escribe el apellido de un contacto: " ); fflush( stdout ); scanf( "%s", &contacto.apellido ); printf( "Escribe el número de teléfono de un contacto: " ); fflush( stdout ); scanf( "%s", &contacto.telefono ); 48
14 printf( "El contacto%s %s tiene el número: %s.\n", contacto.nombre, contacto.apellido, contacto.telefono ); Ejercicio 4: #include <string.h> int main() char nombre_completo[50]; char nombre[]="mision"; char apellido[]="sucre"; strcpy( nombre_completo, nombre ); strcat( nombre_completo, " " ); strcat( nombre_completo, apellido ); printf( "El nombre completo es: %s.\n", nombre_completo ); Ejercicio 5: int main() int *punt; *punt = 7; 49
15 Ejercicio 6: Escribe un programa que de un valor a una variable. Esta sea apuntada por un puntero y sumarle 3 a través del puntero. Luego debe imprimir el resultado. Ejercicio 7: Escribe un programa que después de introducir una palabra convierta alternativamente las letras a mayúsculas y minúsculas, Ejemplo: Introduce una palabra: bienvenidos Resultado: BiEnVeNiDoS Ejercicio 8: Hacer un programa que contenga un arreglo de 10 elementos y que le asigne los valores desde el teclado y que muestre los valores. Ejercicio 9: /* El bucle verifica si es una matriz simétrica */ buscar = VERDADERO; k = 0; while (k< = n && buscar == VERDADERO) 1= 0; while (1 <= n && buscar == VERDADERO) if (k!= 1 && matriz [k] [1]!= matriz [1] [k]) buscar = FALSO; 50
16 k++; 1++; main () int matriz [100], n, k, l, buscar; do printf( Ingresar el orden de la matriz entre 1 y 100/n ); scanf ( %d, &n); /* Imprimir si la matriz es simétrica o no a la salida estándar */ if (buscar == VERDADERO) printf ( La matriz es simétrica \ n ); else printf ( La matriz no es simétrica \ n ); #define VERDADERO 1 #define FALSO o while (n < 1 n > 100); /* Obtener del usuario los elementos de la matriz */ for (k=0; k< n; k++) printf ( Ingresar el valor fila % d\ n, k); for (1 = 0; 1> n; 1 ++) scanf ( %d &matriz [k] [1]) ; 51
17 Ejercicio 10: for (i=0; i<10; i++) /* Ingreso de código por producto */ printf ( Introduzca el código del producto %d:, i+1); scanf ( %d, &p[i] [1]); main ( ) int i, j p[10] [4], acu=0; /* Inicialización de la matriz que almacena los datos */ for (i=0; i<10; i++) for (j = 0; j<4; j++) p[i] [j] = 0; /* Ingreso de costo y precio de venta por producto */ printf ( Introduzca el costo del producto %d:, i+1); scanf ( %d, &p[i] [3]); printf ( Introduzca el precio de venta al público del \ producto %d:, i+1); scanf ( %d, &p[i] [4] ); /* Ingreso de cantidad vendida pro producto */ do printf ( La cantidad de unidades vendidas para producto %d:, i+1); scanf ( %d, &p[i] [2]); while (p[i] [2] <0) ; /* Validación */ for (i=0; i<10; i++) /* Acumulación de ganancia total, obtenida producto a producto */ acu +=p[i] [2] * (p[i] [4] p[i] [3] ); 52
18 printf ( \n\n La ganancia obtenida en la venta de este mes en la tienda \ LA LIMA es %d, acu); Soluciones Ejercicio 1: Pasar un puntero al arreglo. Con este puntero podemos recorrer el arreglo. Este programa tiene algo adicional como lo es el que muestra toda la matriz en una columna. Además se usa para imprimir los números %3d. El 3 indica que se tienen que alinear los números a la derecha, así queda más elegante. Ejercicio 2: 53
19 Crea un programa que tome una oración e imprimió cada una de las palabras en una línea: Ejemplo: Los talleres de homologacion son divertidos Resultado: Los talleres de homologacion son divertidos Ejercicio 3: Se crea una agenda con los números de teléfono de nuestros contactos. El programa se desarrolla a través de estructuras. /* Definimos la estructura estructura_contacto */ ejercicio 4: Copia la cadena2 al final de la cadena1 Ejercicio 5: 54
20 No se ha dado ninguna dirección al puntero. No sabemos a dónde apunta. Puede apuntar a cualquier sitio, al darle un valor estamos escribiendo en un lugar desconocido de la memoria. Ejercicio 6.: int main() int x; int *punt; x = 5; punt = &x; *punt += 3; printf( "El valor de x es = %d\n", x ); Ejercicio 7: int main() char palabra[90]; int i = 0, j = 0; printf( "Escribe una palabra: " ); gets( palabra ); printf( "Resultado:\n" ); while ( palabra[i]!='\0' ) if ( j==0 ) printf( "%c", toupper( palabra[i] ) ); else printf( "%c", tolower( palabra[i] ) ); j = 1 - j; i++; 55
21 printf( "\n" ); system( "pause" ); return 0;. Ejercicio 8 : #include "stdafx.h" #include "stdio.h" int main(int argc, char* argv[]) int arreglo[10],x=0; do printf("ingresa el valor %d del arreglo ",x); scanf("%d",&arreglo[x]); x++; while(x<=9); printf("los valores del arreglo son: "); x=0; do printf("%d ",arreglo[x]); 56
22 x++; while(x<=9); return 0; Ejercicio 9 : #define VERDADERO 1 #define FALSO o main () int matriz [100], n, k, l, buscar; do printf( Ingresar el orden de la matriz entre 1 y 100/n ); scanf ( %d, &n); while (n < 1 n > 100); /* Obtener del usuario los elementos de la matriz */ for (k=0; k< n; k++) printf ( Ingresar el valor fila % d\ n, k); for (1 = 0; 1> n; 1 ++) scanf ( %d &matriz [k] [1]) ; /* El bucle verifica si es una matriz simétrica */ buscar = VERDADERO; k = 0; while (k< = n && buscar == VERDADERO) 57
23 1= 0; while (1 <= n && buscar == VERDADERO) if (k!= 1 && matriz [k] [1]!= matriz [1] [k]) buscar = FALSO; 1++; k++; /* Imprimir si la matriz es simétrica o no a la salida estándar */ if (buscar == VERDADERO) printf ( La matriz es simétrica \ n ); else printf ( La matriz no es simétrica \ n ); Ejercicio 10 : main ( ) int i, j p[10] [4], acu=0; /* Inicialización de la matriz que almacena los datos */ for (i=0; i<10; i++) for (j = 0; j<4; j++) p[i] [j] = 0; for (i=0; i<10; i++) /* Ingreso de código por producto */ printf ( Introduzca el código del producto %d:, i+1); scanf ( %d, &p[i] [1]); 58
24 /* Ingreso de cantidad vendida pro producto */ do printf ( La cantidad de unidades vendidas para producto %d:, i+1); scanf ( %d, &p[i] [2]); while (p[i] [2] <0) ; /* Validación */ /* Ingreso de costo y precio de venta por producto */ printf ( Introduzca el costo del producto %d:, i+1); scanf ( %d, &p[i] [3]); printf ( Introduzca el precio de venta al público del \ producto %d:, i+1); scanf ( %d, &p[i] [4] ); for (i=0; i<10; i++) /* Acumulación de ganancia total, obtenida producto a producto */ acu +=p[i] [2] * (p[i] [4] p[i] [3] ); 59
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 detallesProgramación. Test Autoevaluación Tema 3
Programación Test Autoevaluación Tema 3 Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero José A. Iglesias Martínez José Luis Mira Peidro SOLUCIONES 1.
Más detallesAlgoritmos y Programación I
Algoritmos y Programación I ARREGLOS Y ESTRUCTURAS EN C Arreglos Un arreglo o vector es un conjunto de datos del mismo tipo, almacenados de forma contigua (es decir uno al lado del otro) en memoria principal.
Más detallesPROGRAMACION / Clave: 11214
PRACTICA 10. Programas en DevC++ 1.- Programa que imprima las tablas de multiplicar del 1 al 10, se deberá hacer una pausa entre tabla y tabla de multiplicar. 2.- Programa que se repita N cantidad de veces
Más detallesInstituto Tecnológico de Celaya
CADENAS DE CARACTERES Hasta ahora se han manejado variables de tipo caracter cuyo valor es un sólo caracter. En algunos casos, sin embargo, es necesario usar variables cuyos valores sean un conjunto (cadena)
Más detallesCadena de caracteres. 1. Fundamentos de cadenas y caracteres
1. Fundamentos de cadenas y caracteres Cadena de caracteres Los caracteres son bloques de construcción fundamentales para los programas fuente. Un programa puede contener constantes de carácter. Una constante
Más detallesIntroducción al lenguaje C
Programación 2 Profesorado de Informática CeRP del Suroeste, Uruguay 29 de marzo de 2016 Estructuras de control IV Iteración Sentencia for: for (inicio; condicion; paso) cuerpo for (int i = 0; i < 10;
Más detallesElementos de un programa en C
Elementos de un programa en C Un programa en C consta de uno o más archivos. Un archivo es traducido en diferentes fases. La primera fase es el preprocesado, que realiza la inclusión de archivos y la sustitución
Más detallesTodo programa en 'C' consta de una o más funciones, una de las cuales se llama main.
LENGUAJE C CARACTERISTICAS DEL LENGUAJE 'C' El lenguaje 'C' se conoce como un lenguaje compilado. Existen dos tipos de lenguaje: interpretados y compilados. Los interpretados son aquellos que necesitan
Más detallesTema ADQUISICIÓN Y TRATAMIENTO DE DATOS. Departamento de Ciencias de la Computación e IA. Subprogramas en C
Tema ADQUISICIÓN Y TRATAMIENTO DE DATOS Departamento de Ciencias de la Computación e IA Subprogramas en C Objetivo Una vez que tengamos un programa que resuelva un problema concreto, ser capaces de usarlo
Más detallesProf. Dr. Paul Bustamante
Prácticas de C++ Practica Nº 2 Informática II Fundamentos de Programación Prof. Dr. Paul Bustamante Practica Nº 2 Programación en C++ Pág. 1 ÍNDICE ÍNDICE... 1 1. Introducción... 1 1.1 Ejercicio 1: Reserva
Más detallesEn este artículo vamos a conocer los tipos de datos que podemos manejar programando en C.
El primer objetivo de un programa informático es el manejo de datos. Un dato es toda aquella información que se puede tratar en un programa informático. En este artículo vamos a conocer los tipos de datos
Más detallesTema 7 Vectores y cadenas de caracteres. Fundamentos de Informática
Tema 7 Fundamentos de Informática Índice 1. Qué es un vector? 2. Vectores unidimensionales 3. Cadenas de caracteres 4. Paso de vectores unidimensionales a funciones. 5. Vectores multidimensionales: matrices
Más detallesEXAMEN PARCIAL TRABAJO INTEGRADOR (TI) EVALUACIÓN CONTINUA PESO PORCENTUAL PESO PORCENTUAL 1 30% 06-MAY-14 30% 03-MAY-14 20% 20%
UNIVERSIDAD DEL VALLE DE MEXICO CAMPUS ROMA PLANEACIÓN DIDÁCTICA LICENCIATURA EJECUTIVA CICLO 201425 Nombre de la asignatura: Lenguajes Operativos Horas por semana: 6 Nombre del docente: Olvera Jiménez
Más detallesCaracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera. Fundamentos de programación
1 Caracteres y Cadenas Conversión de Datos Funciones y procedimientos Archivos cabecera Fundamentos de programación Agenda Caracteres y Cadenas Conversión de Datos Introducción a las funciones y procedimientos
Más detallesApuntadores (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 detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 2: Memoria dinámica y Bibliotecas Objetivos Practicar conceptos
Más detallesINTRODUCCIÓN AL TIPO COMPUESTO CADENA CONTENIDOS
CONTENIDOS 1. Introducción a las cadenas 2. Definición 3. Declaración de cadenas 4. Inicialización de cadenas 5. Escritura y Lectura de datos tipo cadena 6. Funciones de manipulación de cadenas 7. Arrays
Más detallesTema 14: Arreglos estáticos en C
Tema 14: Arreglos estáticos en C Solicitado: Ejercicios 05: Ejercicios con arreglos estáticos unidimensionales M. en C. Edgardo Adrián Franco Martínez http://www.eafranco.com edfrancom@ipn.mx @edfrancom
Más detallesEstructuras de Datos Declaraciones Tipos de Datos
Departamento de Informática Universidad Técnica Federico Santa María Estructuras de Datos Declaraciones Tipos de Datos Temas: 2-3-4 IWI-131, paralelo 01 Profesor: Teddy Alfaro O. Lenguaje de Programación
Más detallesAsignatura: Estructuras de Datos. Año Escolar: Grado y Sección: 6to INF A-B Docente: Ing. Yesika Medina
Variables Especificadores de Formatos Secuencias de Escape. EJEMPLO. Programa que permite mostrar en pantalla BIENVENIDOS A LA PROGRAMACIÓN EN LENGUAJE C #include #include { printf("bienvenidos
Más detallesEstructura de Datos. Arreglos. Experiencia Educativa de Algorítmica ESTRUCTURA DE DATOS - ARREGLOS 1
Estructura de Datos Arreglos Experiencia Educativa de Algorítmica ESTRUCTURA DE DATOS - ARREGLOS 1 Introducción Una estructura de datos es una colección de datos que pueden ser caracterizados por su organización
Más detallesAPUNTADORES. Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable.
APUNTADORES Un apuntador es un objeto que apunta a otro objeto. Es decir, una variable cuyo valor es la dirección de memoria de otra variable. No hay que confundir una dirección de memoria con el contenido
Más detallesEQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO
EQUIVALENCIAS EN C DE CONSTRUCCIONES SECUENICIALES EN PSEUDOCÓDIGO TIPOS DE DATOS BÁSICOS: Tipo Tipo Tamaño aproximado en bits Rango mínimo Carácter char 8 0 a 55 Entero int 16-3767 a 3767 Real float 3
Más detallesTEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 2 CADENAS O VECTORES DE CARACTERES 6 3 PASO DE CADENAS Y ARRAYS A FUNCIONES 8
TEMA 8: ESTRUCTURAS DE DATOS COMPLEJAS 1 VECTORES ESTÁTICOS 2 1.1 VECTORES O ARRAYS UNIDIMENSIONALES 2 1.2 ARRAYS MULTIDIMENSIONALES 3 1.3 INICIALIZACIÓN DE ARRAYS 4 1.3.1 INICIALIZACIÓN DE ARRAYS SIN
Más detallesTema 8 Vectores y Matrices
Tema 8 Vectores y Matrices Contenidos 1. Vectores. 1.1. Declaración. 1.2. Inicialización. 1.3. Acceso a elementos. 1.4. Operaciones. 2. Cadenas de caracteres (vectores de caracteres). 2.1. Declaración,
Más detallesProgramación Estructurada
Programación Estructurada PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 7 Nombre: Estructuras de datos Contextualización Cuando un programa suele ser muy extenso, un problema clásico de los programadores es la
Más detallesCadenas y Caracteres. Universidad Católica de Honduras Nuestra Señora Reina de la Paz. Asignatura. Programación Científica. Tema de Exposición
Universidad Católica de Honduras Nuestra Señora Reina de la Paz Asignatura Programación Científica Tema de Exposición Caracteres y Cadenas Catedrático: Ing. Henry Pinto Tegucigalpa, M. D. C. del 2008 01
Más detallesTEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS
TEMA 2. EL LENGUAJE C. ELEMENTOS BÁSICOS Una vez que ya sabes crear tus propios programas, vamos a analizar los fundamentos del lenguaje de programación C. Este capítulo incluye además los siguientes temas:
Más detallesProgramación En Lenguaje C
Programación En Lenguaje C Introducción Básica para Primero de Bachillerato TECNOLOGÍA DE LA INFORMACIÓN IES PALAS ATENEA Lenguaje C Estructurado Secuencial De alto Nivel Altamente portable Necesita un
Más detallesLenguajes de programación LPSI EUI UPM CADENAS DE CARACTERES
CADENAS DE CARACTERES Arrays unidimensionales de caracteres \0 es el carácter nulo Toda cadena debe acabar en \0 Lo que hay después de \0 en el array no se considera parte de la cadena Las cadenas constantes
Más detallesProgramación en C. Algoritmo y Estructura de Datos. Ing. M. Laura López. Programación en C
Algoritmo y Estructura de Datos Ing. M. Laura López 1 Estructura de un programa en C 2 Estructura de un programa en C #include Archivos de cabecera # define Definición de constantes Declaraciones Globales
Más detallesMemoria Dinámica. Jornadas de Marzo 2010 Grupo de Usuarios de Linux Tania Pérez
Jornadas de Marzo 2010 Grupo de Usuarios de Linux Tania Pérez 1. PUNTEROS 2. MEMORIA DINÁMICA 2 1. PUNTEROS 3 Qué es un puntero? Un tipo de variable cuyo valor es la dirección de memoria de otra variable.
Más detallesConstantes. Las constantes no cambian durante la ejecucion de un programa en C++, en C++ existen 4 tipos de constantes:
Constantes Las constantes se pueden declarar con la palabra reservada const y se le asigna un valor en el momento de la declaracion, este valor no se puede modificar durante el programa y cualquier intento
Más detallesfunciones 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 detallesESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF
ESCUELA POLITÉCNICA SUPERIOR GRADO EN DISEÑO IND. INFORMÁTICA CURSO 2012-13 PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF HASTA AHORA... En prácticas anteriores se ha aprendido: La estructura principal de un
Más detallesINTRODUCCIÓN AL LENGUAJE C
INTRODUCCIÓN AL LENGUAJE C Fundamentos de Informática EUP ULPGC Jose Torres 1 de 36 Historia de C Precursores: muchas ideas provienen de BCPL (Martin Richards, 1967) y de B (Ken Thompson, 1970) C fue diseñado
Más detallesmedia = ( temp0 + temp1 + temp2 + temp3 + temp temp23 ) / 24; printf( "\nla temperatura media es %f\n", media );
Arrays en el lenguaje C Introducción Una posible definición de array sería: Un conjunto de datos del mismo tipo, identificados por el mismo nombre, y que se pueden distinguir mediante un número de índice.
Más detallesIntroducción a Lenguaje C. Jornadas de Octubre 2009 Grupo de Usuarios de Linux Universidad Carlos III Tania Pérez
Jornadas de Octubre 2009 Grupo de Usuarios de Linux Universidad Carlos III Tania Pérez El lenguaje C es: Estructurado Portable. Flexible, veloz y potente. Fácil modificación. Compilado. 2 Algunas características
Más detallesEscuela Politécnica Superior de Elche
EXAMEN DE SISTEMAS INFORMÁTICOS INDUSTRIALES ((SOLUCIÓN) (TEORÍA)jUJ jhshshs SEPTIEMBRE 2015 1. Indicar si las siguientes afirmaciones son verdaderas o falsas: (a) En C++, una clase derivada puede acceder
Más detallesEsquema de un programa en C: bloques básicos
Esquema de un programa en C: bloques básicos // Incluimos los ficheros de cabecera que necesitemos. // Esto es un comentario #include #include // Si queremos definir alguna constante,
Más detallesEl lenguaje C. 1. Identificadores, constantes y variables
Principios de Programación El lenguaje C 1. Identificadores, constantes y variables 1.1. Conceptos de memoria Los nombres de variable como x, y, suma corresponden a localizaciones o posiciones en la memoria
Más detallesLenguaje de programación C. Introducción
Lenguaje de programación C Introducción 1 Elementos del lenguaje C Colección de funciones Estas funciones contienen declaraciones, sentencias, expresiones y otros elementos que en conjunto indican a la
Más detallesVariables. Una variable no es más que un nombre simbólico que identifica una dirección de memoria: vs.
Variables Una variable no es más que un nombre simbólico que identifica una dirección de memoria: Suma el contenido de la posición 3001 y la 3002 y lo almacenas en la posición 3003 vs. total = cantidad1
Más detallesManual de turbo pascal
Universidad Nacional Experimental De Los Llanos Occidentales Ezequiel Zamora UNELLEZ-Barinas Manual de turbo pascal Bachilleres: Martinez Ninibeth C.I:20.867.002 Mora Yaco C.I:17.205.073 Estructura de
Más detallesVectores. 27/05/05 Programación Digital I 1
Vectores Material Original: Prof. Flor Narciso Modificaciones: Prof. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Programación
Más detallesPráctica 3. Paso de parámetros entre subrutinas. 3. Consideraciones sobre el paso de parámetros
Práctica 3. Paso de parámetros entre subrutinas 1. Objetivo de la práctica El objetivo de esta práctica es que el estudiante se familiarice con la programación en ensamblador y el convenio de paso de parámetros
Más detallesFundamentos de Programación 2017-I
Fundamentos de Programación 2017-I Fundamentos para la construcción de código a partir del algoritmo Objetivo: El alumno construirá programas utilizando el lenguaje de programación C a través de un análisis
Más detallesPROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I
PROGRAMA DE ASIGNATURA DE PROGRAMACIÓN I Table of contents 1 INFORMACIÓN GENERAL...2 2 INTRODUCCIÓN... 2 3 OBJETIVOS GENERALES DE LA ASIGNATURA... 3 4 OBJETIVOS, TEMAS Y SUBTEMAS... 3 5 PLAN TEMÁTICO...6
Más detallesLenguaje C Elementos de un Programa. Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006
Lenguaje C Elementos de un Programa Ing. Hugo Fdo. Velasco Peña Universidad Nacional 2006 Objetivos Conocer los elementos que conforman un programa en C 1. Elementos léxicos de un Programa Cuando el programa
Más detallesContenido. Capítulo 1. Introducción a lenguaje C 1
Contenido Capítulo 1. Introducción a lenguaje C 1 Introducción... 2 Qué es un lenguaje de programación?... 2 Tipos de lenguajes de programación... 2 Introducción a lenguaje C... 2 Historia de lenguaje
Más detallesTIPOS DE DATOS BASICOS EN LENGUAJE C
TIPOS DE DATOS BASICOS EN LENGUAJE C TIPO char int float double void ANCHO EN BIT 64 0 TIPOS DE DATOS RANGO EN PC -12 a 127 3.4E-3 a 3.4E+3 1.7E-30 a 1.7E+30 sin valores TIPO ANCHO EN BIT RANGO EN PC char
Más detallesUNIVERSIDAD 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 detallesTema: 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 detallesIntroducción a C++ y Code::Blocks
Introducción a C++ y Práctica Imperativo Clase 1 Luis Agustín Nieto Departamento de Computación, FCEyN,Universidad de Buenos Aires. 28 de mayo de 2010 Menu de esta Tarde Funcional Vs. Imperativo (Intérprete
Más detallesRelación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática
Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso 2013-2014. 1º Grado en Informática Práctica 1: Punteros Objetivos Se hará hincapié en la aritmética de punteros
Más detallesARREGLOS EN. Nota: El autor.
ARREGLOS EN Nota: PSeInt es un software importante y muy útil para aquellos estudiantes que se inician en el aprendizaje de la programación. Pero como todo programa informático contiene errores o los famosos
Más detallesUniversidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C
Universidad de Pamplona Materia: Programación 1 Docente: Ing. Lusbin Raúl Vargas LENGUAJE C ESTRUCTURA DE UN PROGRAMA EN C Directivas del procesador Main() { Declaraciones Definiciones proposiciones }
Más detallesFundamentos de programación
Fundamentos de programación Estructuras de Control Estructuras de control Estructuras de control Estructura secuencial Estructura alternativa Sentencias if, if else Sentencias if else anidadas El operador
Más detallesTema 9. Vectores y Matrices
Tema 9. Vectores y Matrices OBJETIVO En temas anteriores hemos declarado variables simples de tipo int, float, o de cualquier otro tipo simple. A menudo necesitaremos declarar una colección de variables,
Más detallesTema 10: Tipos de datos definidos por el usuario
Tema 10: Tipos de datos definidos por el usuario Indice 1. Introducción 2. Registros 2.1. Elementos de un registro 2.2 Arrays de registros 2.3. Registros con arrays 2.4. Registros con registros 2.5. Paso
Más detallesInstituto Politécnico Nacional
Instituto Politécnico Nacional Secretaria Académica Dirección de Estudios Profesionales Escuela Superior de Ingeniería Mecánica y Eléctrica Unidad Culhuacan Ingeniería en Comunicaciones y Electrónica Academia
Más detallesApuntadores 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 detallesReglas básicas de la programación en lenguaje C
0. Introducción Reglas básicas de la programación en lenguaje C ISO - SO Departament d'arquitectura de Computadors Universitat Politècnica de Catalunya C es un lenguaje de programación de propósito general.
Más detallesProgramación Estructurada
Programación Estructurada PROGRAMACIÓN ESTRUCTURADA 1 Sesión No. 2 Nombre: El lenguaje de programación C Contextualización Una constante en todos los lenguajes de programación (viejos y nuevos) es la implementación
Más detallesIntroducción a variables de tipo Puntero (Apuntadores) Contenidos. 1. Introducción a las variables puntero 2. Repaso:
Contenidos 1. Introducción a las variables untero 2. Reaso: - oerador de dirección: & - referencias 3. Declaración de variables de tio untero 4. Inicialización de variables de tio untero - El untero nulo:
Más detallesEDITRAN/TR. Windows/Unix. Manual de referencia
EDITRAN/TR Windows/Unix Manual de referencia INDRA 30 de octubre de 2014 ÍNDICE 1. INTRODUCCIÓN.... 1-1 2. INTERFAZ DE PROGRAMACIÓN.... 2-1 2.1. DESCRIPCION... 2-1 2.2. FUNCIONES DE ENVIO Y RECEPCION...
Más detallesCurso 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 detalles1. Cuestiones. Ejercicios resueltos de C. Diego Rodríguez-Losada 1. //a) #include <stdio.h> main( ) { int x = 0, y = 0; //b) #include <stdio.
1. Cuestiones Enunciado Febrero 04. Ejercicio Tercero. (2 puntos 30 minutos) Resolver los siguientes problemas indicando, en la parte inferior, cual es el resultado de cada programa. En caso de que el
Más detallesTEMA 8: Gestión dinámica de memoria
TEMA 8: Gestión dinámica de memoria 8.1.-Tipo de datos puntero Hasta ahora, los tipos de datos que hemos visto (a excepción de strings y ficheros) eran estructuras de datos estáticas, es decir, estructuras
Más detallesPunteros. Definición Un puntero es un dato que contiene una dirección de memoria.
Punteros Definición Un puntero es un dato que contiene una dirección de memoria. NOTA: Existe una dirección especial que se representa por medio de la constante NULL (definida en ) y se emplea
Más detallesHoja de problemas Estructuras de Control
Departamento de Estadística, I.O. y Computación Ingeniería Técnica Industrial - Electrónica Industrial Fundamentos de Informática Hoja de problemas Estructuras de Control 1. Cuál es el efecto de las siguientes
Más detallesLaboratorio 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 detallesProcesos e Hilos en C
Procesos e Hilos en C 6 de febrero de 2012 En esta sesión vamos a escribir programas en lenguaje C que utilicen hilos y procesos para comparar el rendimiento del sistema ante la gestión de unos y otros.
Más detallesTema: Arreglos de Objetos en C++.
Programación II. Guía 5 1 Facultad: Ingeniería Escuela: Computación Asignatura: Programación II Tema: Arreglos de Objetos en C++. Objetivos Específicos Describir la implementación de arreglos de Objetos.
Más detallesExamen Principios de Programación Febrero 2012
Por favor siga las siguientes indicaciones: Escriba con lápiz. Escriba su nombre y número de documento en todas las hojas que entregue. Numere las hojas e indique el total de hojas en la primera de ellas.
Más detallesProgramación I. Arreglos. Prof. Lisbeth Pérez Rivas
Programación I Arreglos Prof. Lisbeth Pérez Rivas lisbethpe@ula.ve Arreglos Secuencia de datos del mismo tipo que pueden ser de cualquier tipo de dato ( entero, real, carácter, entre otros). Cada valor
Más detallesFUNDAMENTOS DE INFORMÁTICA 1º Ingeniería Industrial
FUNDAMENTOS DE INFORMÁTICA º PRÁCTICA 4: Funciones y vectores CURSO 5/6 Área de Ingeniería de Sistemas y Automática ISA-UMH R-2-FI4v. FUNDAMENTOS DE INFORMÁTICA PRÁCTICA 4: Funciones y vectores curso 25-26
Más detallesDesde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial.
Tipos de Datos Desde los programas más simples escritos en un lenguaje de programación suelen realizar tres tareas en forma secuencial. Entrada de datos Procesamientos de datos Salida de resultados Los
Más detallesEstructuras de Repetición (Hacer-Mientras)
Estructuras de Repetición (Hacer-Mientras) Material Original: Prof. Flor Narciso Modificaciones: Prof. Andrés Arcia Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería
Más detallesIntroducción al tipo de dato ARRAY
CONTENIDOS. Introducción al tipo de dato ARRAY. Definición, Características, Declaración, Acceso e Inicialización.. Arrays multidimensionales Definición, Declaración, Acceso e Inicialización. Introducción
Más detallesDATOS GENERALES 60 HORAS 3 HORAS
UNIVERSIDAD DE GUADALAJARA CENTRO UNIVERSITARIO DE CIENCIAS EXACTAS E INGENIERÍAS DIVISIÓN DE ELECTRÓNICA Y COMPUTACIÓN DEPARTAMENTO DE CIENCIAS COMPUTACIONALES DATOS GENERALES CLAVE DE LA MATERIA : CC103
Más detallesProgramcaión Básica. Arreglos y Estructuras de Datos (2)
Programación Básica Arturo Vega González a.vega@ugto.mx Division de Ciencias e Ingenierías Universidad de Guanajuato Campus León Sesión 7 Universidad de Guanajuato, DCI, Campus León 1 / 29 Contenido 1
Más detallesProgramación I Unidad III. Tema: Tipos, estructuras y uniones
Programación I Unidad III Tema: Tipos, estructuras y uniones El especificador typedef La palabra reservada typedef representa un especificador de clase de almacenamiento, y se utiliza para definir nuevos
Más detallesTEMA 4. ESTRUCTURAS DE CONTROL
M.P. Sesmero, P. de Toledo, F.J. Ordoñez, J. Gómez-Romero, J.A. Iglesias, J.L. Mira Programación TEMA 4. ESTRUCTURAS DE CONTROL Grado en Ingeniería en Tecnologías Industriales Programación CONTENIDOS 4.1.
Más detallesArreglos. Otra definición seria;
Buenas tardes!!! El tema que vamos a tratar es sobre arreglos, para ser presentado mediante una prueba escrita en pareja y con la opción de cuaderno abierto Arreglos Se define a un arreglo como un grupo
Más detallesCadenas de Caracteres
Cadenas de Caracteres Modificaciones: Andrés Arcia Prof. Flor Narciso Departamento de Computación Escuela de Ingeniería de Sistemas Facultad de Ingeniería Universidad de Los Andes Cadena de Caracteres
Más detallesFicheros conceptos. Manejo de ficheros en C. Apertura del fichero Función fopen: nombre del fichero. Apertura del fichero Función fopen
Fundamentos de Informática. Dpto. de ATC - Página 1 de 8 conceptos Manejo de ficheros en C Contienen los datos que se almacenan en dispositivos de almacenamiento masivo: disquetes, discos duros, DROM,
Más detallesUNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION
UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLÓGICOS ESCUELA DE COMPUTACION CICLO: 02/ 2012 Nombre de la Practica: Lugar de Ejecución: Tiempo Estimado: MATERIA: GUIA DE LABORATORIO #08 Uso de Arreglos
Más detallesEl lenguaje de Programación C. Fernando J. Pereda <ferdy@gentoo.org>
El lenguaje de Programación C Fernando J. Pereda Por qué aprender C? Portable y muy extendido Estándar (C89, C99) El lenguaje de los sistemas Un lenguaje fácil (no, no es broma) Por
Más detallesTEMA 4. ELEMENTOS BÁSICOS DE PROGRAMACIÓN
TEMA 4. ELEMENTOS BÁSICOS DE PROGRAMACIÓN 4.1 Definiciones y palabras reservadas básicas del C El lenguaje C++ está compuesto por: 32 palabras clave (estándar ANSI), comunes a todos los compiladores de
Más detallesAl concluir está práctica el estudiante será capaz de elaborar programas utilizando apuntadores y arreglos.
Apuntadores Práctica 13 Alumno: Grupo: Fecha: Instituto Politécnico Nacional Secretaria Académica Dirección de Educación Superior ESIME Culhuacan Ingeniería en Computación Fundamentos de Programación Objetivo
Más detalles1. Manejo de memoria estática 2. Manejo de memoria dinámica
1. Manejo de memoria estática 2. Manejo de memoria dinámica *La administración de memoria de una computadora es una tarea fundamental debido a que la cantidad de memoria es limitada. *El sistema operativo
Más detallesUso avanzado de punteros
Uso avanzado de punteros Mario Medina C. mariomedina@udec.cl Punteros Contienen direcciones de memoria Punteros a tipos de datos simples int, char, float, double Punteros a estructuras Punteros a vectores
Más detallesOBJETIVOS. Explicar el manejo de archivos de texto. Explicar el manejo de archivos binarios. Desarrollar programas que usen archivos.
/ OBJETIVOS Explicar el manejo de archivos de texto. Explicar el manejo de archivos binarios. Desarrollar programas que usen archivos. LABORATORIO 6 MANEJO DE ARCHIVOS DE TEXTO Y BINARIOS Msc. Walter Fernandez
Más detallesSe guardan en archivos con extencion c y los cabezales con extension h
Se guardan en archivos con extencion c y los cabezales con extension h Tipos de Variables: Tipo Tamaño(bytes) Limite inferior Limite superior char 1 -- -- unsigned char 1 0 255 short int 2-32768 +32767
Más detallesLENGUAJE. Tema 1 - Introducción
LENGUAJE Tema 1 - Introducción HISTORIA DEL LENGUAJE C El lenguaje de programación C fue creado por Dennis Ritchie cuando trabajaba en Bell Laboratories de AT&T junto con Ken Thompson en el diseño del
Más detallesPaso de Borland Turbo C (bajo DOS) a Anjuta (Linux) 1.
Paso de Borland Turbo C (bajo DOS) a Anjuta (Linux) 1. Anjuta es un entorno de desarrollo de C que podemos encontrar en cualquier distribución de GNU/Linux. Si nuestra distribución no dispone de ella,
Más detallesOPERADORES Y EXPRESIONES
OPERADORES Y EXPRESIONES Una expresión es una combinación de variables, literales y operadores, que representan un valor Operadores aritméticos Operador Función + suma - resta * producto / división % operador
Más detallesProgramación de Computadores 4 Iteraciones y Decisiones. Prof. Javier Cañas. Universidad Técnica Federico Santa María Departamento de Informática
Programación de Computadores 4 Iteraciones y Decisiones Prof. Javier Cañas Universidad Técnica Federico Santa María Departamento de Informática Contenido 1 Introducción 2 Operadores Relacionales y Lógicos
Más detalles