vectores y matrices en e

Upload: omar-rosas-salas

Post on 01-Mar-2016

17 views

Category:

Documents


0 download

DESCRIPTION

Como son los vectores y matrices

TRANSCRIPT

  • 1

    Prctica 3: Vectores y matrices en C. Objetivos En esta prctica el objetivo principal es el de poner en prctica los principios bsicos de algoritmia (bucles y bifurcaciones) empleando vectores y matrices. Para ello el alumno deber conocer cmo declarar un vector (matriz) y cmo indexar cada uno de los elementos del mismo para acceder a su contenido. Evaluacin

    La prctica consta de 5 cuestiones, de los cuales habr que realizar correctamente al menos 2 para aprobar la prctica. Procedimiento

    Cada cuestin consta de un enunciado y de una plantilla en lenguaje C. El alumno usar dicha plantilla para verificar el correcto funcionamiento del algoritmo que haya diseado y su implementacin en lenguaje C. En la plantilla se indica dnde debe el alumno insertar su cdigo. Este mismo cdigo deber copiarse y enviarse a travs del servidor de docencia (bono.us.es/sdocencia), teniendo especial cuidado de seleccionar correctamente la lnea de insercin en funcin del ejercicio que est resolviendo. IMPORTANTE:

    Cada ejercicio se debe resolver utilizando nicamente las variables definidas en el molde que se proporciona

    Debe respetar la estructura que se le propone sin cambiar nombres de variables ni omitir

    ninguna lnea de cdigo.

  • 2

    Cuestiones Apartado 1 Realice un programa en lenguaje C que compruebe si una matriz cuadrada dada es la matriz identidad. Para ello realice primero un diagrama de flujo con su correspondiente tabla de objetos. Nota: Se recuerda que la matriz identidad es aquella matriz cuadrada en la que los elementos de la diagonal son unos y el resto de los elementos son ceros. #include #include #include void main(void) { /* DECLARACIN DE VARIABLES (realice tabla de objetos) */ int M[10][10]; /* Matriz de dimension mxima 10x10*/ int i,j; /* ndices para la indexacin de la matriz*/ int nc; /* Nmero de columnas de la matriz cuadrada*/ int resultado; /* LECTURA DE DATOS */ printf("Introduzca el numero de columnas de la matriz (

  • 3

    Apartado 2 Realice un programa en lenguaje C que compruebe si una matriz dada es antisimtrica. Para ello realice primero un diagrama de flujo con su correspondiente tabla de objetos. Nota: Se dice que una matriz A es antisimtrica cuando sta es igual a su propia traspuesta pero cambiada de signo. Es decir A es antisimtrica si

    A=-AT.

    #include #include #include void main(void) { /* DECLARACIN DE VARIABLES (realice tabla de objetos) */ int M[10*10]; /* Vector de 100 componentes para almacenar una matriz de dimension mxima 10x10*/ int i,j; /* ndices para la indexacin de la matriz*/ int nc; /* Nmero de columnas de la matriz cuadrada*/ int resultado; /* LECTURA DE DATOS */ printf("Introduzca el numero de columnas de la matriz (

  • 4

    Apartado 3 Realice un programa en lenguaje C que programa que multiplique dos matrices dadas. Para ello realice primero un diagrama de flujo con su correspondiente tabla de objetos. Nota: Las dimensiones de las matrices sern introducidas por el usuario, pero su tamao mximo ser inferior a la constante NxN. #include #include #include void main(void) { /* DECLARACIN DE VARIABLES (realice tabla de objetos) */ int A[10][10]; /* Matriz Dato de dimensiones mximas 10x10 */ int B[10][10]; /* Matriz Dato de dimensiones mximas 10x10*/ int C[10][10]; /* Matriz Resultado de dimensiones mximas 10x10*/ int i,j,k; /* ndices para indexar las matrices */ int nfA; /* nmero de filas de A, que ha de coincidir con el nmero de filas de C*/ int ncA; /* nmero de columnas de A, que ha de coincidir con el nmero de filas de B*/ int ncB; /* nmero de columnas de B, que ha de coincidir con el nmero de columnas de C*/ /* LECTURA DE DATOS */ printf("Introduzca el numero de filas de la matriz A (

  • 5

    /* ESCRITURA DE RESULTADOS */ printf("C=[ "); for(i=0;i

  • 6

    Apartado 4 Realice un programa en lenguaje C que determine si una palabra dada es un palndromo. Para ello realice primero un diagrama de flujo con su correspondiente tabla de objetos. Nota 1: Una palabra es un palndromo cuando que se lee igual hacia adelante que hacia atrs Nota 2: Para finalizar de introducir la palabra escriba el carcter punto y coma ;. #include #include #include void main(void) { /* DECLARACIN DE VARIABLES (realice tabla de objetos) */ char v[10]; /* Declaracin de un vector de 10 caracteres*/ int tam; /* Tamao de la cadena */ int i; /* ndice para indexar el vector */ int res; /* Resultado. Vale 1 si es palndromo */ /* LECTURA DE DATOS */ printf("Introduzca una palabra de menos de 11 caracteres:\n"); i=0; do { i++; printf("Letra_%d=",i); scanf(" %c",&v[i-1]); }while(v[i-1]!=';' && i

  • 7

    Apartado 5 Realice un programa en lenguaje C que ordene un vector en orden decreciente. El vector ordenado deber almacenarse sobre el vector original, sin emplear vectores auxiliares. Nota: Se podr emplear una variable auxiliar (aux) para realizar el intercambio de posiciones. #include #include #include void main(void) { /* DECLARACIN DE VARIABLES (realice tabla de objetos) */ int v[10]; /* vector de 10 componentes */ int i,j; /* ndices para indexar las componentes del vector*/ int n; /* Nmero de elementos del vector a ordenar (

  • 8

    Entrega de la prctica a travs del servidor Los resultados de todas la prctica se entregar usando el Servidor de Docencia. Para el correcto funcionamiento de las siguientes pginas su navegador debe permitir cookies y la ejecucin de javascript. El servidor de docencia se encuentra situado en la siguiente direccin:

    http://bono.us.es/sdocencia/ La entrega de la prctica consiste en copiar el cdigo de cada cuestin que se encuentra entre las dos lneas de comentarios (en rojo) en el cuadro de respuestas correspondiente del Servidor de Docencia. Hay que copiar el cdigo una vez se haya comprobado el correcto funcionamiento del programa. Cada apartado tiene un espacio asignado dnde copiar el cdigo correspondiente. Solo hay que copiar el cdigo que se encuentra entre las dos lneas de comentarios del molde proporcionado en el enunciado. Es especialmente importante que siga estas instrucciones si quiere que la prctica sea evaluada apropiadamente.