UNIVERSID                              AD TÉCNICA                              DE AMBATOel libro de fermi villa ese es bue...
ESTRUCTURA DE DATOSSe puede considerar un conjunto de datos,           •   Como una sola entidad…           •   Como un so...
•   Un elemento del arreglo se accede indexando el arreglo por medio de un número del        elemento. En C++ todos los ar...
•   Nombre y              •   Tamaño    •     Un arreglo de 10 elementos enteros, se declara:              •   intArregloE...
Las funciones son un conjunto de instrucciones que realizan una tarea específica. En generaltoman ciertos valores de entra...
El siguiente programa vamos a realizar en lenguaje C, utilizando la instrucción gotoxy paraordenar en filas y columnas.Tam...
{                     gotoxy(i,1);cprintf("&",i);   {gotoxy(i,45);cprintf("&",i);                                         ...
gotoxy(18,10);printf("MATRIZ             2");        }gotoxy(30,10);printf("PRDCT        DE       2                       ...
Declaramos a la matriz de tipo entero.Utilizamos dos lazos for para ingresar una matriz.Utilizamos la instrucción scanf pa...
} c=25; f=f+1;}                                      } while(op==1); getch();}gotoxy(10,20);printf("1 para seguir y 0 para...
Utilizamos la instrucción scanf para ingresar datos en la matriz.Utilizamos la instrucción printf para visualizar o imprim...
{                                                   c=c+3;for(h=1;h<=l;h++)                                   f=f+1;{     ...
El siguiente programa vamos a realizar en lenguaje C, utilizando la instrucción gotoxy paraordenar en filas y columnas.Tam...
{                                               elsedo                                              {{ clrscr(); borde(); ...
Estructura de datos
Upcoming SlideShare
Loading in...5
×

Estructura de datos

907

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
907
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
23
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Estructura de datos

  1. 1. UNIVERSID AD TÉCNICA DE AMBATOel libro de fermi villa ese es buenoFACULTAD DE CIENCIAS HUMANAS Y DE LA EDUCACIÓN. CARRERA DE DOCENCIA EN INFORMÁTICATEMA: FUNCIONES Y ESTRUCTURASALUMNO: DIEGO JURADOING: WILMA GAVILANEZASIGNATURA: LENGUAJE DE PROGRAMACIÓN ENERO 2012
  2. 2. ESTRUCTURA DE DATOSSe puede considerar un conjunto de datos, • Como una sola entidad… • Como un solo tipo de dato…De esta forma, se reduce la complejidad de un problema.Un programa esta formado por: • Estructuras de control y llamadas a funciones (el algoritmo de nuestro programa). • Datos, con sus respectivos tipos, ya sean estos atómicos o complejos, juntos forman una jerarquía (la estructura de datos del programa). PROGRAMA = ALGORITMO + ESTRUCTURA DE DATOS ARREGLOS UNIDIMENSIONALES • Un arreglo de una dimensión es una lista de variables, todas de un mismo tipo a las que se hace referencia por medio de un nombre común. Una variable individual del arreglo se llama elemento del arreglo. Para declarar un arreglo de una sola dimensión se usa el formato general: • tipo_dato identificador[tamaño];
  3. 3. • Un elemento del arreglo se accede indexando el arreglo por medio de un número del elemento. En C++ todos los arreglos empiezan en 0, esto quiere decir que si se desea acceder al primer elemento del arreglo debe usar el índice igual a 0. Para indexar un arreglo se especifica el índice del elemento que interesa dentro de un corchete, ejemplo;valor = arreglo[1]; • Los arreglos empiezan en 0, de manera que el índice 1 se refiere al segundo elemento. Para asignar el valor a un elemento de un arreglo, ponga el elemento en el lado izquierdo de una sentencia de asignación. DECLARACIÓN DE ARREGLOS • Al declarar una variable cualquiera siempre indicamos: tipo y nombre. Por ejemplo: int a; • Para declarar un arreglo, se debe indicar • Tipo
  4. 4. • Nombre y • Tamaño • Un arreglo de 10 elementos enteros, se declara: • intArregloEnteros[10]; • Y lo podemos visualizar: Funciones en CFunciónGrupo de sentencias bajo el mismo nombre que realizan una tarea específica.Llamada a una funciónEjecuta el grupo de sentencias de una función.RetornoUna vez “llamada” la función, esta hace su trabajo, y regresa al mismo punto dondefuellamada.
  5. 5. Las funciones son un conjunto de instrucciones que realizan una tarea específica. En generaltoman ciertos valores de entrada, llamados parámetros y proporcionan un valor de salida ovalor de retorno.Las funciones en programación C, C++ y C# son módulos de programa que se mandan correr enla función main o dentro de otras funciones.El formato general de una función en C es especificador_de_tiponombre_de_función( ) { variables locales código de la función } Ejemplo: Voidmatrizvector ( ) { }Después de haber declarado la función antes del programa principal .se debe llamar a estafunción dentro del programa principal voidmain. Ejemplo: Voidmain { Matrizvector(); } Aplicaciones prácticasEn este ejercicio usamos funciones antes del programa principal y las llamamos dentro delprograma principal (voidmain).1. Realice un programa que me permita ingresar dos matrices y realizar el producto algebraicode las mismas.Análisis:
  6. 6. El siguiente programa vamos a realizar en lenguaje C, utilizando la instrucción gotoxy paraordenar en filas y columnas.También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute elprograma, getch (); para la pausa del programa.También utilizamos la función borde para el margen o borde y en el programa principalllamamos a la función borde.Ingresamos un límite para el límite de la matriz.Declaramos a la matriz de tipo entero.Utilizamos dos lazos for para ingresar dos matrices.Luego utilizamos tres lazos for. los dos primeros lazos for es para el control de los datosingresados en las columnas y filas de la matriz.Realizamos el proceso utilizando una tercera matriz, esta matriz va a funcionar como uncontador el cual le inicializamos en 0 y esta matriz es la que suma a la primera matrizingresada y multiplica a la segunda matriz.Utilizamos funciones uno para el ingreso y otro para el proceso y en el programa principalllamamos a las funciones.Utilizamos la instrucción scanf para ingresar datos en la matriz.Utilizamos la instrucción printf para visualizar o imprimir los datos de la matriz.Utilizamos la sentencia do while para repetir el proceso las veces que elusuario lo desee.Codificación:#include<stdio.h> { textcolor(11); for(i=1;i<=45;i++)#include<conio.h> { gotoxy(1,i);cprintf("&",i); gotoxy(80,i);cprintf("&",i);int i,l,c,f,c1,f1,j,h,g,op,col,fl; }int m[10][10],m1[10][10],mr[10][10]; for(i=1;i<=80;i++)voidborde()
  7. 7. { gotoxy(i,1);cprintf("&",i); {gotoxy(i,45);cprintf("&",i); for(g=0;g<=l;g++)} {} mr[h][g]=0;voidingreso() for(j=0;j<=l;j++){ {c=6; f=12; for(h=1;h<=l;h++) mr[h][g]=mr[h][g]+m[h][j]*m1[j][g];{ }}}for(g=1;g<=l;g++) for(h=1;h<=l;h++){ gotoxy(c,f);scanf("%d",&m[h][g]); c=c+3; {} c=6; f=f+2; for(j=1;j<=l;j++)} c1=20; f1=12; { gotoxy(col,fl);printf("%d",mr[h][j]);for(h=1;h<=l;h++) col=col+3;{ } col=30; fl=fl+2;for(g=1;g<=l;g++) }}{ gotoxy(c1,f1);scanf("%d",&m1[h][g]); void main()c1=c1+3; {} c1=20; f1=f1+2; do} { clrscr(); borde();} gotoxy(10,5);printf("PRODUCTOvoidproducto(int l) ALGEBRAICO DE MATRICES"); gotoxy(7,8);printf("INGRESE UN LIMITE:{ ");scanf("%d",&l);col=30; gotoxy(6,10);printf("MATRIZ 1");fl=12;for(h=0;h<=l;h++)
  8. 8. gotoxy(18,10);printf("MATRIZ 2"); }gotoxy(30,10);printf("PRDCT DE 2 while(op==1);MATRZ"); ingreso(); getch();producto(l); }gotoxy(10,20);printf("1 PARA SEGUIR 0PARA SALIR: ");scanf("%d",&op);Ejecución del programa: Ingreso de datos en una matriz2. Diseñe un programa que me permita ingresar n elementos en una matriz cuadrática.Análisis:El siguiente programa vamos a realizar en lenguaje C, utilizando la instrucción gotoxy paraordenar en filas y columnas.También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute elprograma, getch (); para la pausa del programa.También utilizamos la función borde para el margen o borde y en el programa principalllamamos a la función borde.Ingresamos un límite para el límite de la matriz.
  9. 9. Declaramos a la matriz de tipo entero.Utilizamos dos lazos for para ingresar una matriz.Utilizamos la instrucción scanf para ingresar datos en la matriz.Utilizamos la instrucción printf para visualizar o imprimir los datos de la matriz.Utilizamos la sentencia do while para repetir el proceso las veces que el usuario lo desee.Codification:#include<stdio.h> { clrscr(); borde();#include<conio.h>inti,k,j,l,f,c,op; int gotoxy(5,5);printf("ingrese un limitematriz1[3][3]; void borde() ");scanf("%d",&l);{ c=10;f=10;for(i=1;i<=60;i++) for(j=1;j<=l;j++){ gotoxy(i,1);printf("%",i); {gotoxy(i,24);printf("%",i); for(k=1;k<=l;k++)} { gotoxy(c,f);scanf("%d",&matriz1[j][k]);for(i=1;i<=24;i++) c=c+5;{ }gotoxy(1,i);printf("%",i); c=10;gotoxy(60,i);printf("%",i); f=f+1;} } c=25;f=10; for(j=1;j<=l;j++)} {void main() for(k=1;k<=l;k++){ {do gotoxy(c,f);printf("%d",matriz1[j][k]);c=c+5;
  10. 10. } c=25; f=f+1;} } while(op==1); getch();}gotoxy(10,20);printf("1 para seguir y 0 parasalir");scanf("%d",&op);Ejecución del programa:3.Diseñe un programa que me permita ingresar n números enteros en una matriz cuadrática,recorra sus posiciones y obtenga sus datos de su diagonal principal.Análisis:El siguiente programa vamos a realizar en lenguaje C, utilizando la instrucción gotoxy paraordenar en filas y columnas.También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute elprograma, getch (); para la pausa del programa.También utilizamos la función borde para el margen o borde y en el programa principalllamamos a la función borde.Ingresamos un límite para el límite de la matriz.Declaramos a la matriz de tipo entero.Utilizamos dos lazos for para ingresar una matriz. También utilizamos una condición if que lafila sea igual a la columna para coger los datos de la diagonal principal.
  11. 11. Utilizamos la instrucción scanf para ingresar datos en la matriz.Utilizamos la instrucción printf para visualizar o imprimir los datos de la matriz.Utilizamos la sentencia do while para repetir el proceso las veces que el usuario lo desee.Codificación:#include<stdio.h> for(j=1;j<=l;j++)#include<conio.h> {inti,c,f,h,j,l,op; for(h=1;h<=l;h++)intmatriz[9][9]; {voidborde() gotoxy(5,7);printf("M.de entrada");{ gotoxy(c,f);scanf("%d",&matriz[j][h]);for(i=1;i<=24;i++) c=c+3;{ gotoxy(1,i);printf("&",i); } f=f+1; c=10;gotoxy(80,i);printf("&",i); }}for(i=1;i<=80;i++) c=25; f=10; for(j=1;j<=l;j++){ gotoxy(i,1);printf("&",i); {gotoxy(i,24);printf("&",i); for(h=1;h<=l;h++)}} {void main() gotoxy(20,7);printf("M. resultante");{ gotoxy(c,f);printf("%d",matriz[j][h]); c=c+3;do }{ f=f+1;clrscr(); borde(); c=10; f=10; c=25;gotoxy(2,2);printf("INGRESE UN LIMITE } c=43; f=10;");scanf("%d",&l); for(j=1;j<=l;j++)
  12. 12. { c=c+3;for(h=1;h<=l;h++) f=f+1;{ }}}if(j==h) gotoxy(10,20);printf("1 para seguir 0 para salir ");scanf("%d",&op);{ } while(op==1); getch();gotoxy(38,7);printf("M. diagonalprincipal"); }gotoxy(c,f);printf("%d",matriz[j][h]);Ejecución del programa:Diseñe un programa que me permita generar múltiplos de cualquier factor ingresado desdeteclado, solo en las diagonales principal y secundaria, las demás posiciones se llenan convalores ceros.Análisis:
  13. 13. El siguiente programa vamos a realizar en lenguaje C, utilizando la instrucción gotoxy paraordenar en filas y columnas.También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute elprograma, getch (); para la pausa del programa.También utilizamos la función borde para el margen o borde y en el programa principalllamamos a la función borde. Ingresamos un límite para el límite de la matriz.Declaramos a la matriz de tipo entero.Utilizamos dos lazos for para ingresar una matriz. También utilizamos una condición if que lafila sea igual a la columna para coger los datos de la diagonal principal.Para la diagonal secundaria se utiliza un contador que le inicializamos en 1 para el controldelas columnas. Y la variable de la columna debe irse disminuyendo de 1 en 1.Utilizamos la instrucción scanf para ingresar datos en la matriz.Utilizamos la instrucción printf para visualizar o imprimir los datos de la matriz.Utilizamos la sentencia do while para repetir el proceso las veces que el usuario lo desee.Codificación: textcolor(5); gotoxy(i,1);cprintf("%",i); gotoxy(i,24);cprintf("%",i);#include<conio.h> }#include<stdio.h> for(i=1;i<=24;i++)int i,l,c,f,g,j,fac,m,h,c1,cont,c1,h1,op,c2; {intmatriz[10][10]; textcolor(7); gotoxy(1,i);cprintf("%",i);voidborde() gotoxy(80,i);cprintf("%",i);{ }for(i=1;i<=80;i++) }{ void main()
  14. 14. { elsedo {{ clrscr(); borde(); gotoxy(c,f);printf("0");gotoxy(30,4);printf("MATRICES"); }gotoxy(4,7);printf("INGRESE UN LIMITE: c=c+3;");scanf("%d",&l); }gotoxy(4,9);printf("INGRESE UN FACTOR: c=25;f=f+3;");scanf("%d",&fac); }c=15; c2=26; c1=c2+l-1; f=15; cont=1; h1=h;f=15; m=1; h=1; for(j=1;j<=l;j++)c=25; f=15; m=1; h=1; { m=fac*h1; matriz[j][cont]=m;for(j=1;j<=l;j++) gotoxy(c1+3,f);printf("%d",matriz[j][cont]);{ h1=h1+1;for(g=1;g<=l;g++) gotoxy(10,22);printf("DESEA REPETIR EL{ PROCESO 1 PARA SEGUIR 0 PARAif(j==g) SALIR ");scanf("%d",&op);{ m=fac*h; matriz[j][g]=m; }gotoxy(c,f);printf("%d",matriz[j][g]); while(op==1);h=h+1; getch();} } EJECUCIÓN DEL PROGRAMA:

×