|
|
- Ángela Sánchez Ferreyra
- hace 5 años
- Vistas:
Transcripción
1 Repaso C Punteros, memoria, flujos Pablo San Segundo (C-206) pablo.sansegundo@upm.es
2 Variables Tipos Automáticas: int, float, double Estáticas: static En C se declaran al principio de los bloques. Tipos de usuario struct: se escribe obligatoriamente tanto su definición como en la declaración de cualquier variable de este tipo enum typedef- determina alias para tipos Facilita la sintaxis
3 Puntero Un puntero es una variable que contiene la dirección de otra variable { int var; int* pvar=&var; var=8; int var_1=*pvar; Operadores relacionados *: devuelve el valor apuntado por el operando &: devuelve la dirección de memoria del operando
4 Flujos Entada/Salida: stdin, stdout, stderr int puts ( const char * str ); char * gets ( char * str ); int printf ( const char * format,... ); int scanf ( const char * format,... ); Formato de cadenas en memoria int sprintf ( char * str, const char * format,... ); int sscanf ( const char * str, const char * format,...);
5 Estructuras de control Secuencial Condicional if switch Iterativas while do-while for
6 Secuencial //Bloque de instrucciones { instrucción 1; instrucción 2; instrucción 3; /*... */ instrucción N;
7 Condicional-if Simple Doble if (condicion) instrucción1; if (condicion) { instrucción 1; instrucción 2; instrucción 3; if (condicion) instrucción1; else instrucción2; if (condicion) { instrucción 1; instrucción 2; else { instrucción 3; instrucción 4;
8 Condicional-if : anidado if(condicion1) instrucción1; else if(condicion2) instrucción2; else if(condicion3) instrucción3; else if(condicion4) instruccion4; else instrucción5; instrucción 6; instrucción 7; CUESTION Implemente un programa que reciba un numero entero por teclado que corresponda a una hora y que muestre un mensaje de Buenos días (0-12), Buenas tardes (12-18) o Buenas noches (18-24) según la hora recibida
9 Condicional-switch switch (expresión) { case constante1: instrucciones; break; case constante2: instrucciones; break; /*... */ default: instrucciones; CUESTION I Implemente un programa que recibe dos números y una operación (+, -, /, *) por teclado y devuelve el resultado CUESTION II Implemente un programa que recibe un carácter y determina si es una vocal (sin emplear el código ASCII)
10 Iterativas: while / do-while while do-while while (condicion) { instrucción 1; /*... */ instrucción N; do { instrucción 1; /*...*/ instrucción N; while (condicion); CUESTION I Implemente un programa que lleva la suma de números enteros introducidos por teclado y positivos. Termina con el primer entero negativo. CUESTION II Implemente un programa que pide por teclado un entero entre 0 y 100
11 Iterativa-for for (inicialización; condición; incremento/decremento) { instrucción 1; /*... */ instrucción N; FUNCIONAMIENTO del bucle I. Se inicializa la variable/s de control II. Se evalúa la condición III.Si la condición es TRUE se ejecuta la secuencia de instrucciones. Si es FALSE termina el bucle. IV. Se actualiza la variable/s de control (incremento / decremento) V. Se pasa a II
12 Bucles anidados-ejemplos (1/2) EJERCICIO I Lectura robusta por teclado una matriz de enteros NxM y salida en pantalla con formato de matriz CUESTIÓN Qué hace este código? void ordenar(int n, int* vector){ int i, j, temp; for(i=0; i<n-1; i++){ for(j=i+1; j<n; j++){ if(vector[i]>vector[j]){ temp=vector[i]; vector[i]=vector[j]; vector[j]=temp;
13 Bucles anidados-ejemplos (2/2) EJERCICIO Qué hace este código? /*...*/ typedef char BOOL; void main(){ int numero, cont, suma; BOOL encontrado; encontrado = 0; numero = 101; while (!encontrado){ suma = 1; for (cont = 2; cont < numero; cont++){ if (numero % cont == 0) suma += cont; if (suma == numero){ encontrado = 1; else numero++; printf("el numero es = %d\n", numero); SOLUCIÓN: Encuentra el primer número perfecto mayor que 100. Se dice que un número es perfecto cuando la suma de sus divisores propios, exceptuando él mismo, es igual al propio número
14 Cadenas de caracteres (1/3) Definición char str[ ]= Hola mundo ; char* str= Hola mundo ; Funciones típicas char* strcpy (char* destination, const char* source) char* strncpy (char* destination, const char* source, size_t num) char* strchr (char* str, int character) char* strstr (char* str1, char* str2) CUESTION I Longitud de una cadena de caracteres? CUESTION II Implemente un programa que modifique la cadena hola mundo creeeel por hola mundo cruel
15 Cadenas de caracteres (2/3) #include <stdio.h> #include <string.h> void main(){ char line[]="hola mundo crueeeeel"; char* pos=strstr(line, "crue"); strcpy(pos, "cruel"); printf("%s\n", line); CUESTION Salida en pantalla? void main(){ char line[]="hola mundo crueeeeel"; char* pos=strstr(line, "crue"); strncpy(pos, "cruel", 5); *(pos+5)='\0'; printf("%s\n", line);
16 Cadenas de caracteres (3/3) CUESTION I Extraiga todos los números de la siguiente cadena hola adios PROBLEMA Extraiga todos los números de la siguiente cadena K55 y66 F77 PROTOTIPOS- #include <ctype.h>, #include <stdlib.h> int isdigit (int c) long int strtol (const char* str, char** endptr, int base);
17 COLECCIONES
18 Centroide de una nube de puntos (1/2) EJERCICIO I Implemente un programa que compute el centroide de 4 puntos con salida por consola EJERCICIO II Añada entrada por teclado de los 4 puntos struct punto_t centroide (struct punto_t *, int size) void imprime (struct punto_t ) void rellena_lista (struct punto_t *, int size) int main(void) #define NUM_PUNTOS 4
19 Centroide de una nube de puntos (2/2) #define NUM_PUNTOS 4 struct punto_t{ double x; double y; ; struct punto_t centroide(struct punto_t * v, int size){ struct punto_t pres; double x_med=0; double y_med=0; int p; for(p=0; p<size; p++){ x_med+=v[p].x; y_med+=v[p].y; pres.x=x_med/size; pres.y=y_med/size; return pres;
20 Lista enlazada simple struct nodo{ int dato; struct nodo * siguiente; ; typedef struct nodo nodo_t; nodo_t* head; nodo_t* nuevo_elemento(); void init(int dato); void insert_front(int dato); void insert_back(int dato); void remove_last(); void remove(int dato); //crea nodo cabecera
21 Lista enlazada simple struct nodo{ int dato; struct nodo * siguiente; ; typedef struct nodo nodo_t; nodo_t* head; nodo_t* nuevo_elemento(); void init(int dato); void insert_front(int dato); void insert_back(int dato); void remove_last(); void remove(int dato); //crea nodo cabecera
22 Lista enlazada simple struct nodo{ int dato; struct nodo * siguiente; ; typedef struct nodo nodo_t; nodo_t* head; nodo_t* nuevo_elemento(); void init(int dato); void insert_front(int dato); void insert_back(int dato); void remove_last(); void remove(int dato); //crea nodo cabecera
23 Lista enlazada simple struct nodo{ int dato; struct nodo * siguiente; ; typedef struct nodo nodo_t; nodo_t* head; nodo_t* nuevo_elemento(); void init(int dato); void insert_front(int dato); void insert_back(int dato); void pop_back(); void remove(int dato); //crea nodo cabecera
24 MEMORIA
25 Reserva dinámica de memoria void * malloc (size_t size ) void free (void * ptr ) RESERVA DE MEMORIA EJERCICIO Implemente el programa anterior del centroide de la nube de puntos. Reserve memoria dinámica y libere adecuadamente la memoria al terminar. La entrada de las coordenadas de los puntos se hará por consola. struct punto_t* pv = (struct punto_t*)malloc(sizeof(struct punto_t)*num_puntos); /* */ free(pv); ENTRADA DE DATOS POR CONSOLA for(p=0; p<num_puntos; p++){ printf("introduzca las coordenadas X Y del punto\n"); scanf("%d%d", &x, &y); pv[p].x=x; pv[p].y=y; #include <stdlib.h>
26 Reserva de memoria para una matriz EJERCICIO Reserve memoria dinámicamente para una matriz de enteros (n x m) RESERVA DE MEMORIA int** matrix=0; matrix= (int**) malloc(n*sizeof(int*)); for(i=0; i<n; i++){ matrix[i]=(int *) malloc(m*sizeof(int)); LIBERACIÓN DE MEMORIA int i; for(i=0; i<n; i++){ free(matrix[i]); free(matrix);
27 Lista enlazada simple struct nodo{ int dato; struct nodo * siguiente; ; typedef struct nodo nodo_t; nodo_t* head; nodo_t* nuevo_elemento(); void init(int dato); void insert_front(int dato); void insert_back(int dato); void pop_back(); void remove(int dato); int get_size(); int print(); //crea nodo cabecera
28 FICHEROS
29 Entrada/salida a fichero FILE * fopen ( const char * filename, const char * mode ) int fclose ( FILE * stream ) Escritura int fprintf ( FILE * stream, const char * format,... ) int fputs ( const char * str, FILE * stream ) Lectura int fscanf ( FILE * stream, const char * format,... ) char * fgets ( char * str, int num, FILE * stream ) Estado Error int ferror ( FILE * stream ) retorno: 0 si OK, EOF si error End of file: int feof ( FILE * stream ) r, w, a, r+, w+, a+ retorno: num. campos rellenados si OK #include <stdio.h>
30 Casos de uso FILE * f=fopen("datos.txt", "r"); if(f==null){ puts("file not found\n"); perror("the following error occurred"); return -1; /*typical loop for reading */ while(!feof(f)){ /*reads line and checks stream state */ fgets(line, SIZE_OF_LINE, f); if(ferror(f)){ puts("error"); break; /*. protocol */
31 Cuestiones Escriba el texto: Hola Mundo como primera línea de un archivo log.txt Añada la linea de texto: Adios Mundo al fichero anterior Escriba la secuencia de números,{1, 2, 3, 4, 5, separados por espacios, como primera línea de fichero num.txt Lea los 3 últimos números del fichero num.txt y muéstrelos por pantalla Lea el fichero log.txt y saque el contenido en pantalla línea a línea Elimine los retornos de carro de cada línea obtenida mediante fgets( )
32 Cuestión Extraiga TODOS los números de un fichero Nota: Emplee fscanf y las técnicas vistas para sscanf en ejemplos anteriores while(1==fscanf(f, "%*[^ ]%d", &i)) { printf("leido: %d\n",i);
33 Lectura desde fichero (1/2) EJERCICIO Modifique el código anterior para que lea de un fichero de texto datos.txt los 4 puntos sobre los que calcular el centroide. Fichero: datos.txt
34 Lectura desde fichero (2/2) FILE * f=fopen("datos.txt", "r"); if(f==null){ puts("file not found\n"); return -1; /*typical loop for reading */ while(!feof(f)){ /*reads line and checks stream state */ fgets(line, SIZE_OF_LINE, f); if(ferror(f)){ puts("error"); break; /*protocol */ sscanf(line, "%lf %lf", &x, &y); v[index].x=x; v[index++].y=y;
35 Lectura desde fichero con formato (1/2) EJERCICIO Modifique el código anterior para que lea de un fichero de texto datos.txt los 4 puntos sobre los que calcular el centroide. c datos.txt c comentario 1 c comentario 2. p p p p
36 Lectura desde fichero con formato (2/2) /*typical loop for reading*/ while(!feof(f)){ /*reads line and checks stream state */ fgets(line, SIZE_OF_LINE, f); if(ferror(f)){ puts("error"); break; /* remove empty lines */ if(line[0]=='\0' line[0]=='\n') continue; /*protocol*/ sscanf(line, "%c", &token); if(token=='c'){ continue; else if(token == 'p'){ sscanf(line, "%c %d %d", &token, &x, &y); /* fill data * / else{ puts("error"); break; sscanf(line, "%*c %d %d, &x, &y);
37 Lectura de una lista de datos variable (1/2) Implemente un programa que lea el protocolo del fichero de texto mostrado a continuación, e imprima los datos por pantalla. Nota: Es imprescindible gestionar correctamente la liberación de recursos y posibles errores c <comentario> c <comentario> n <numero de datos> d num1 d num2
38 Lectura de una lista de datos variable (2/2) FILE * f=fopen("fichero.txt", "r"); if(f==null){ puts("file not found\n"); return -1; /*typical loop for reading*/ while(!feof(f)){ /*reads line and checks stream state */ fgets(line, SIZE_OF_LINE, f); /* ferror(f) */ /* remove empty lines */ if(line[0]=='\0' line[0]=='\n') continue; /*protocol*/ sscanf(line, "%c", &token); if(token=='c'){ continue; else if(token== 'n'){ sscanf(line, "%c %d", &token, &num_data); /* memory allocation */ else if(token== 'd'){ sscanf(line, "%c %d", &token, &data); // printf("%d\n", data); else{ puts("error"); break;
39 Lectura de un grafo- formato DIMACS (1/3) x x x x x x Matriz de adyacencias
40 Lectura de un grafo- formato DIMACS (2/3) DIMACS : Sociedad de matemática discreta americana Protocolo c : comentario p edge <n> <m> n: V M: E e : arista numeración de los vértices empieza en 1 c File: johnson8-2-4.clq c c Source: Panos Pardalos c pardalos@math.ufl.edu p edge e 4 3 e 5 2 e 6 1 e 7 3 e 7 5 e 7 6 e 8 2 e 8 4 e 8 6 //
41 Declaraciones- prog. estructurada (3/3) void print_edges (int ** graph) void free_dimacs(int** graph, int n) int ** read_dimacs (const char* graph, int* n, int* m) Otros
42 RESUMEN I. Estructuras de datos II. Estructuras de control III. Gestión dinámica de memoria IV. Flujos V. Lectura de ficheros con formato VI. Aplicación: lectura de un grafo PREGUNTAS?
Tema 3. Estructuras de control
Tema 3. Estructuras de control 3.1. Secuencial 3.2. Selección 3.3. Repetición 2 Objetivos Objetivos del tema: Conocer y saber la utilidad de las tres estructuras de control (secuencial, alternativa y repetitiva)
Más detallesINTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C
INTRODUCCIÓN AL LENGUAJE DE PROGRAMACIÓN C Programación en Entornos Multitarea Curso 2006/2007 Introducción C: lenguaje de medio nivel 32 palabras clave Eficiencia de ejecución del código generado Portabilidad
Más detallesTema 3: Entrada/Salida de Ficheros
Tema 3: Objetivo: Almacenar datos en un dispositivo de almacenamiento secundario (p.e. disco duro). Pasos a seguir: 1 Abrir fichero 2 Escribir/leer del fichero 3 Cerrar fichero 1 Tema 3: Abrir el fichero:
Más detallesBloque 9. Ficheros de texto
Bloque 9 Ficheros de texto Ficheros Necesitamos un tipo de datos que nos permita guardar datos de forma permanente en el disco: ficheros El SO se encarga de gestionar físicamente el fichero A nosotros
Más detallesAlgoritmo, Estructuras y Programación I Ing. Marglorie Colina
Unidad II: Fundamentos de la Programación Estructurada Algoritmo, Estructuras y Programación I Ing. Marglorie Colina Estructura General de un Programa Zona de ficheros de cabecera de las librerías Zona
Más detallesFicheros. Archivo, o fichero: Características:
Ficheros Archivo, o fichero: Es una estructura de datos en memoria externa, cuyo tiempo de vida no está ligado a la ejecución del programa que lo crea o lo maneja. Un fichero existe desde que un programa
Más detallesPara C un chero no es más que una porción de almacenamiento
Ficheros en C Para C un chero no es más que una porción de almacenamiento de memoria. C representa un chero como una estructura, de hecho el chero stdio.h contiene la dención de un chero como si fuese
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 detallesAutor: Ing. Nahuel González INTRODUCCIÓN A C. Clase 1
INTRODUCCIÓN A C Clase 1 Introducción al lenguaje C 1967 1970 1971 1972 1989 BCPL Lenguaje B Pascal 1era versión de C ANSI C Introducción al lenguaje C Librería estandar de C: contiene módulos o funciones
Más detallesProgramació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 detallesIntroducción general al Lenguaje C (2010/2011)
Luis Valencia Cabrera lvalencia@us.es (http://www.cs.us.es/~lvalencia) Ciencias de la Computacion e IA (http://www.cs.us.es/) Introducción general al Lenguaje C (2010/2011) Universidad de Sevilla Índice
Más detallesConcepto Concept s Los L nom res re d e e los h c eros: exter te n r os o o fí s fí ico nom re ú nico i del del ar chiv chiv o o o ficher ficher en
Conceptos Los nombres de los ficheros: externos o físico (nombre único del archivo o fichero en el sistema de archivos) e interno o lógico (identificador del fichero dentro de un programa). Las operaciones
Más detallesOperaciones de E/S en ANSI C
Operaciones de E/S en ANSI C Las operaciones de entrada/salida estándar (realizadas habitualmente con printf y scanf) se realizan en realidad sobre ficheros que representan los dispositivos mediante los
Más detallesProgramación I Teoría : Entrada/Salida - Archivos.
Programación I Teoría : Entrada/Salida - Archivos http://proguno.unsl.edu.ar proguno@unsl.edu.ar Entrada/Salida Interacción del programa con su ambiente para leer (entrada) y escribir (salida) datos. 2
Más detallesIntroducción al lenguaje C
Introducción al lenguaje C Programación 2 Instituto de Computación, Facultad de Ingeniería, Universidad de la República, Uruguay 2 de marzo de 2016 Programación 2 Introducción al lenguaje C 2 de marzo
Más detallesENTRADA/SALIDA. Relación Programa - Sistema Operativo - Hardware
ENTRADA/SALIDA UPCO ICAI Departamento de Electrónica y Automática 1 Relación Programa - Sistema Operativo - Hardware Mi programa no maneja directamente el hardware El sistema operativo es el que maneja
Más detalles1000+(4/100)*1000 =1000 * (1+4/100) =1000 * 1.04 = Al finalizar el segundo año, el 4% se aplica sobre los 1040, y obtenemos:
Nombre: Apellidos: Grupo: Nº. Matrícula Ejercicio 1 (2,5 puntos 30 minutos) Al ingresar capital en un banco, pongamos 1000, éste nos ofrece un porcentaje anual de interés, por ejemplo el 4%. Al cabo de
Más detallesTipos de Datos en C. Palabras reservadas en C
Tipos de Datos en C Tipo Tamaño de bits Rango char 8-128 a 127 unsigned char 8 0 a 255 signed char 8-128 a 127 int 16 32768 a 32767 unsigned int 16 0 a 65535 signed int 16 Igual que int short int 16 Igual
Más detallesEJERCICIOS. Algo de C CADENAS
EJERCICIOS (1) Sea el lenguaje Todos los números binarios que contienen el grupo 00 por lo menos una vez. Dibuje el DT de un AFN que lo reconozca. (2) Escriba la descripción formal del AFN diseñado en
Más detallesTema 4. Control de flujo. Programación Programación - Tema 4: Control de Flujo
Tema 4 Control de flujo Programación 2015-2016 Programación - Tema 4: Control de Flujo 1 Tema 4. Control de flujo Introducción. Estructuras condicionales. Estructuras de repetición. Programación - Tema
Más detallesRepaso Lenguaje C Área de Servicios Programación (Ing. Elect. y Prof. Tec.), Programación I (TUG y TUR) y Electrónica programable (TUE)
Repaso Lenguaje C OBJETOS Variables Constantes Variable: objeto del ambiente cuyo contenido puede cambiar. Constante: objeto cuyo contenido no puede cambiar. Variables: - un nombre que la identifica. Deben
Más detallesCodificación en C. Como pasar de Pseudocódigo a C (con pequeños trucos de C++)
Codificación en C Como pasar de Pseudocódigo a C (con pequeños trucos de C++) Plantilla Librerias Constantes Algoritmo #include #include #define PI 3.1416 int main(void){ /*Variables*/
Más detallesProgramación 1 Tema 5. Instrucciones simples y estructuradas
Programación 1 Tema 5 Instrucciones simples y estructuradas Índice Instrucciones simples Instrucciones estructuradas Instrucción ::= Instrucciones.
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 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 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 detallesÍndice. Estructuras de datos en Memoria Principal: Vectores. Matrices. Cadenas de caracteres. Estructuras. Estructuras de datos en Memoria Externa:
Índice Estructuras de datos en Memoria Principal: Vectores Matrices Cadenas de caracteres Estructuras Estructuras de datos en Memoria Externa: Ficheros Tema: Estructuras de Datos 2 Cadenas de caracteres
Más detallesTema 13: Manejo de archivos en lenguaje C
Tema 13: Manejo de archivos en lenguaje 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)
Más detallesProgramación 1 Tema 5. Instrucciones simples y estructuradas
Programación 1 Tema 5 Instrucciones simples y estructuradas Índice Instrucciones simples Instrucciones estructuradas 2 Instrucción ::= 3 Instrucciones.
Más detallesDiagrama de transiciones del autómata. Tabla de transiciones
Universidad Nacional Autónoma de México Facultad de Ingeniería Compiladores Grupo 4, Semestre 2016-1 Analizador Léxico en C Diagrama de transiciones del autómata letra letra 1 0 3 e 4 5 6 e 2 espacio Tabla
Más detallesTema 5. Entrada y Salida
Tema 5 Entrada y Salida Contenidos 1. Conceptos Previos de Entrada y Salida de Datos. 2. Funciones de Salida de Datos. putchar puts printf 3. Funciones de Entrada de Datos. getchar gets scanf 4. Ficheros
Más detallesSintaxis de los aspectos generales de un lenguaje de programación
Sintaxis de los aspectos generales de un lenguaje de programación por Iván Cruz Un lenguaje de programación cuenta con una estructura y sintaxis que debe ser utilizada exactamente como se indique para
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 detallesUNIDAD 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 detallesFundamentos de Informática 1ºIIND Examen Junio 2006
Fundamentos de Informática 1ºIIND Examen Junio 2006 Nombre Apellidos: Grupo: A B C D E Advertencias: 1. Duración del examen 2 horas y 45 minutos 2. No se puede desgrapar el cuadernillo del examen. 3. Se
Más detallesIntroducción a C++ Algoritmos y Estructuras de datos II Dra. Carmen Mezura Godoy. Febrero 2009
Introducción a C++ Algoritmos y Estructuras de datos II Dra. Carmen Mezura Godoy Febrero 2009 Índice Elementos básicos Ejecución de un programa Estructuras de control Ciclos Ejercicios 2 Elementos Básicos
Más detallesIntroducción a la Programación
Introducción a la Programación Fundamentos de Programación Ingeniería Informática en Sistemas de Información Alicia Troncoso 1 Contenido l Introducción l Mi primer programa l Etapas a seguir en la programación
Más detallesPrimera Parte: Preguntas Cortas. Fundamentos de Informática 1ºIIND Examen Teoría Septiembre Grupo: A B C D E. Advertencias:
Fundamentos de Informática 1ºIIND Examen Teoría Septiembre 2005 Nombre Grupo: A B C D E Apellidos: Preguntas Cortas Programar código Nota final Preguntas cortas (5 puntos) Prob.1 (2 punto) Prob.2 (1,5
Más detalles6. Archivos. Programación II, FCFM, BUAP
6. Archivos Programación II, FCFM, BUAP Definición Un archivo o fichero desde el punto de vista informático es una colección de información almacenada en memoria secundaria (un medio externo) y no en memoria
Más detallesRealizar el ejercicio anterior utilizando Punteros
PUNTEROS Y ARRAYS En C existe una relación entre punteros y arrays tal que cualquier operación que se pueda realizar mediante la indexación de un arrays, se puede realizar también con punteros. Para clarificar
Más detalles1.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 detallesCuales son los tipos de instrucciones que se utilizan en la programación?
EXAMEN NIVEL PREUNI/UNI Cuales son los tipos de instrucciones que se utilizan en la programación? a) Instrucciones afirmativas e instrucciones negativas b) Instrucciones entrada, instrucciones afirmativas
Más detallesREPRESENTACIÓ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 detalles7. Manejo de Archivos en C.
7. Manejo de Archivos en C. Los datos que hemos tratado hasta el momento han residido en la memoria principal. Sin embargo, las grandes cantidades de datos se almacenan normalmente en un dispositivo de
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 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 detallesPunteros. Índice. 1. Qué es un puntero y por que son importantes.
Punteros Índice 1. Qué es un puntero y por que son importantes. 2. Punteros a tipos básicos. 3. Punteros sin tipo. 4. Memoria dinámica. 5. Punteros a estructuras. 6. Punteros a matrices. 7. Punteros a
Más detallesCaracter a caracter los datos pueden ser escritos o leidos carácter a carácter, con las funciones fputc() y fgetc().
Notas auxiliares sobre manejo de archivos Las funciones de entrada salida (E/S) de las librerías estandar de C, permiten leer y escribir datos a, y desde, archivos y dispositivos. La caracteristica fundamental
Más detallesLenguajes de programación
Lenguajes de programación Un computador solo entiende lenguaje binario Un procesador tiene un conjunto finito de operaciones binarias Un programa de computador es una secuencia de estas instrucciones Etapas
Más detallesGUÍA DE LABORATORIO #3 ESTRUCTURAS ALGORÍTMICAS CONDICIONALES SIMPLES, DOBLES Y MÚLTIPLES
GUÍA DE LABORATORIO #3 ESTRUCTURAS ALGORÍTMICAS CONDICIONALES SIMPLES, DOBLES Y MÚLTIPLES OBJETIVO: Realizar programas en Lenguaje C aplicando las estructuras condicionales. TEMPORIZACIÓN: Inicio de la
Más detallesLenguaje de Programación: C++ Repaso de Material C++
UG Lenguaje de Programación: C++ Repaso de Material C++ Universidad de Guanajuato Octubre 2010 Variables Tipos de Variables Operadores Variable Para poder leer algo, necesitamos un lugar donde poner lo
Más detallesEstructura 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 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 detallesFUNDAMENTOS PARA LA CONSTRUCCIÓN DEL CÓDIGO A PARTIR DEL ALGORITMO
FUNDAMENTOS PARA LA CONSTRUCCIÓN DEL CÓDIGO A PARTIR DEL ALGORITMO 3.2 Variables, tipos, expresiones y asignación 3.3 Estructuras de control condicional e iterativo. MODIFICADORES DE ALCANCE CONST Y STATIC
Más detallesExamen de Fundamentos de la Programación (Modelo 1)
Examen de Fundamentos de la Programación (Modelo 1) 27 de noviembre de 2007 1. Qué escribe el siguiente programa si se teclea 5? int num, resultado; for (resultado=0; num; resultado++) num -= 2; printf
Más detallesProgramación I Teoría I.
Programación I Teoría I http://proguno.unsl.edu.ar Horarios Teorías: Jueves 8:00 10:00; aula 58 (Bloque 2) Prácticas: Comisión 1: Licenciatura Martes de 10 a 13 en sala 7, bloque 2 jueves de 10 a 13 en
Más detallesUNIDAD 1. Algoritmo se define como un conjunto de instrucciones que la computadora debe seguir para resolver un problema.
UNIDAD 1 1.1 Definición de Algoritmo La palabra algoritmo se deriva de la traducción al latín del nombre Muhammad Musa Al-khawarizmi, un matemático y astrónomo árabe que en el siglo IX escribió un tratado
Más detallesTEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL.
Tema 2. TEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL. PARTE : VARIABLES, OPERADORES Y CONSTANTES.. INTRODUCCIÓN AL LENGUAJE C 2. PROGRAMAS BÁSICOS EN LENGUAJE C 3. DATOS EN LENGUAJE C
Más detallesOperadores aritméticos
Bloque 3.2 Operadores aritméticos Suma : x + y Resta : x y Multiplicación : x * y División : x / y Módulo : x % y (resto de la división Si los operandos son enteros tipo del resultado
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 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 detallesDescripción de un Programa
Unidad 2 Descripción de un Programa 1 El Lenguaje C (1) El lenguaje C fue creado en 1972 por Ken L. Thompson y Dennis M. Ritchie en los Laboratorios Bell. Es evolución de un lenguaje más antiguo: B (a
Más detallesObjetivos. El alumno conocerá y aplicará el concepto de archivo para el almacenamiento y recuperación de datos persistentes.
Objetivos El alumno conocerá y aplicará el concepto de archivo para el almacenamiento y recuperación de datos persistentes. Al final de esta práctica el alumno podrá: 1. Utilizar las herramientas para
Más detallesBloque 3. Expresiones, sentencias y estructuras de control
Bloque 3 Expresiones, sentencias y estructuras de control a Ejemplos de expresión a + (b * 2) c == c Su evaluación nos da un valor concreto Operadores Aritméticos Lógicos Relacionales Operadores aritméticos
Más detallesOPERACIONES SOBRE LENGUAJES REGULARES LA UNIÓN DE LENGUAJES REGULARES
OPERACIONES SOBRE LENGUAJES REGULARES LA UNIÓN DE LENGUAJES REGULARES Sean L1 y L2 dos LRs. Entonces L1 L2, es un LR Si L1 es representado por una ER R1 y L2 es representado por cierta expresión R2, la
Más detallesUniversidad Autónoma del Estado de México 2016, Año del 60 Aniversario de la Universidad Autónoma del Estado de México
Universidad Autónoma del Estado de México 2016, Año del 60 Aniversario de la Universidad Autónoma del Estado de México Unidad Académica Profesional Tianguistenco Ingeniería de Software Estructura de Datos
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 detallesTEMA 5. CONTROL DE FLUJO DEL PROGRAMA. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ;
TEMA 5. CONTROL DE FLUJO DEL PROGRAMA 5.1 Sentencias Una sentencia es una expresión seguida de un punto y coma. Sentencia Instrucción Expresión Operadores + Operandos Sintaxis: Sentencia ; El ; es obligatorio
Más detallesLenguaje C. República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III
República Bolivariana de Venezuela Fundación Misión Sucre Aldea Fray Pedro de Agreda Introducción a la Programación III Lenguaje C 1 Puntos previos Los códigos fuentes generados en C requieren ser compilados
Más detallesPunteros. Programación en C 1
Punteros Programación en C 1 Índice Variables y direcciones de memoria. Punteros definición, declaración e inicialización. Punteros declaración, asignación y dereferencia. Puntero nulo, tipo void. Aritmética
Más detalles1.9. SENTENCIAS DE CONTROL DE PROGRAMA
1.9. SENTENCIAS DE CONTROL DE PROGRAMA En C todas las instrucciones o sentencias terminan en punto y coma (;) Un bloque se compone de varias instrucciones o sentencias encerradas entre llaves. Las estructuras
Más detallesPor ejemplo, para declarar un arreglo de enteros llamado a con diez elementos se hace de la siguiente forma:
Arreglos unidimensionales y multidimensionales Los arreglos son una colección de variables del mismo tipo que se referencian utilizando un nombre común. Un arreglo consta de posiciones de memoria contigua.
Más detallesProgramación: Estructuras de Control
Programación: 2 Estructuras de Control Contenido 2.1.- Introducción 2.2.- Estructuras de Selección 2.2.1.- Sentencia if 2.2.2.- Sentencia switch 2.3.- Estructuras de Iteración 2.3.1.- Sentencia while 2.3.2.-
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 detallesFundamentos de Informática
Fundamentos de Informática 8. : grandes volúmenes de datos Fundamentos de Informática Grado en Ingeniería Química 2 Contenidos Arrays Arrays e iteraciones Cadenas de caracteres 1 3 Arrays 4 Arrays (definición)
Más detallesEstructuras de datos: vectores en C. Clase 7 y 8 Introducción a la Computación Patricia Borensztejn
Estructuras de datos: vectores en C Clase 7 y 8 Introducción a la Computación Patricia Borensztejn Estructuras de Datos Son agrupaciones de datos si el tamaño de la estructura es conocido en tiempo de
Más detallesDobles: Es el caso de la instrucción if-else (punto 1.2).
1 1.Introducción Las estructuras de control son instrucciones que nos permiten controlar el flujo de ejecución del programa. Las instrucciones de control se pueden agrupar en instrucciones condicionales
Más detallesClase 19/02/2013. Bibliografía recomendada. #include <stdio.h> void main() { printf("hola mundo\n"); } ENLAZADOR
Bibliografía recomendada Introducción a la Programación en C. Apuntes de la asignatura 1 2.1 La función main: Hola Mundo Clase CODIGO FUENTE Archivo de texto *.c PREPROCESADOR ARCHIVOS DE CABECERA Archivo
Más detallesNombre y apellidos: Grupo (mañana - tarde). Táchese lo que no proceda.
PRUEBA T1 Traductores, compiladores e intérpretes Septiembre. Curso 08/09 Nombre y apellidos: Grupo (mañana - tarde). Táchese lo que no proceda. Se desea construir un programa Lex que reconozca los siguientes
Más detallesFunciones y paso de parámetros
Unidad Didáctica 24 Funciones y paso de parámetros Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Versión 1.0.0 Índice Consideraciones sobre funciones Estructura de una función
Más detallesUnidad II Fundamentos de C++ M.C. Juan Carlos Olivares Rojas
Unidad II Fundamentos de C++ M.C. Juan Carlos Olivares Rojas Agenda 2.1 Familiarización con el ambiente de programación 2.2 Análisis de la estructura de un programa 2.3 Envío de mensajes a la salida estándar
Más detallesProgramación Estructurada. Sesión 2:El lenguaje de programación C
Programación Estructurada Sesión 2:El lenguaje de programación C Contextualización Una parte importante del lenguaje C son las palabras reservadas, son identificadores con un significado predefinido. Estas
Más detallesApellidos: Nombre: Matrícula: Examen Programación para Sistemas Grado en Ingeniería Informática (2009)
Examen 105000016 - Programación para Sistemas Grado en Ingeniería Informática (2009) Lenguajes y Sistemas Informáticos e Ingeniería de Software Facultad de Informática Universidad Politécnica de Madrid
Más detallesMódulo. = Asignación = = Comp. de igualdad!= Com. de desigualdad <= Comp. menor o igual >= Comp. mayor o igual AND lógico OR lógica.
EQUIVALENCIAS BÁSICAS ENTRE PASCAL Y C A continuación se presentan algunas equivalencias básicas entre estos lenguajes de programación : Operadores en lenguaje C: Operador Descripción % Módulo = Asignación
Más detallesSentencias DO-WHILE EN C++
Sentencias DO-WHILE EN C++ La estructura do-while se utiliza para ejecutar varias veces un bloque de instrucciones mientras una determinada condición sea falsa, si es verdadera en automático el programa
Más detallesTema 6. Gestión de ficheros en C. Programación en Lenguajes Estructurados
Tema 6. Gestión de ficheros en C Programación en Lenguajes Estructurados Tema 6. Gestión de ficheros en C 6.1. Introducción a los ficheros En la mayor parte de los programas se quiere almacenar información
Más detallesMÚLTIPLES Estructuras condicionales anidadas if(expresion1 o condición1){ Sentencias1 } else { if (expresion2){ Sentencias2
MÚLTIPLES Estructuras condicionales anidadas if(expresion1 o condición1){ Sentencias1 else { if (expresion2){ Sentencias2 else { if (expresion3){ Sentencia3 else{ Sentencia 4 SELECCIÓN MÚLTIPLE CON SENTENCIA
Más detallesCapítulo 11 INTRODUCCIÓN A LA CODIFICACIÓN EN C. Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C"
Presentación resumen del libro: "EMPEZAR DE CERO A PROGRAMAR EN lenguaje C" Autor: Carlos Javier Pes Rivas (correo@carlospes.com) Capítulo 11 INTRODUCCIÓN A LA CODIFICACIÓN EN C 1 OBJETIVOS Aprender a
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. Guía de Estilo
Programación Guía de Estilo Autores: M. Paz Sesmero Lorente Paula de Toledo Heras Fco. Javier Ordoñez Morales Juan Gómez Romero Jose A. Iglesias Martínez Jose Luis Mira 1 1. Introducción Este documento
Más detallesActividad Algoritmos, Estructura y Programación I. FOR, DO-WHILE
Actividad Algoritmos, Estructura y Programación I. FOR, DO-WHILE 1. Qué es un bucle? 2. A que se denomina cuerpo de un bucle? 3. Define iteración de un bucle. 4. Cuál es el cuerpo de un bucle? 5. Qué es
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 detallesLenguaje de Programación: C++ ARCHIVOS I/O
UG C++ Lenguaje de Programación: C++ ARCHIVOS I/O Universidad de Guanajuato Octubre 2010 Como abrir un archivo Antes de poder escribir datos en un archivo, debemos abrirlo, esto significa que debemos decirle
Más detallesArchivos. Conceptos SESION 13
Archivos SESION 13 Conceptos Definición Un archivo es una secuencia de bits almacenados en algún dispositivo externo tal como un disco o una cinta magnética. En C un archivo es simplemente un flujo(stream)
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 detallesRepaso de lenguaje C. Índice. Repaso de lenguaje C. Repaso de lenguaje C: Tipos básicos
Índice. Repaso de C: Tipos de variables. Declaración de variables Sentencias de control Funciones. Paso de argumentos a una función. Punteros, operaciones con punteros, punteros y arrays. Repaso de lenguaje
Más detallesEntrada/Salida. Entrada/Salida. Flujos de texto. Flujos de datos. Flujos binarios. Flujos estándares ANSI
Entrada/Salida Entrada/Salida Mario Medina C. mariomedina@udec.cl Funciones de entrada/salida no son parte del lenguaje propiamente tal Bibliotecas son parte del estándar ANSI C Biblioteca estándar:
Más detallesEs un lenguaje estructurado, tiene una abundante cantidad de operadores y tipos de datos.
Lenguaje C Un poco de historia C es un lenguaje de propósito general, es decir, se pueden desarrollar aplicaciones de diversas áreas. Dentro de sus principales características podemos mencionar que: Es
Más detallesArchivos. Programación en C 1
Archivos Programación en C 1 Índice Tipos de archivos. Apertura de archivos. Cierre de archivos. Lectura de archivos. Escritura de archivos. Acceso directo en archivos binarios. Programación en C 2 Introducción
Más detalles