SlideShare una empresa de Scribd logo
UNIVERSID
                              AD TÉCNICA
                              DE AMBATO

el libro de fermi villa ese es bueno


FACULTAD DE CIENCIAS HUMANAS Y
       DE LA EDUCACIÓN.
             CARRERA DE DOCENCIA EN
                  INFORMÁTICA


TEMA: FUNCIONES Y ESTRUCTURAS
ALUMNO: DIEGO JURADO
ING: WILMA GAVILANEZ
ASIGNATURA: LENGUAJE DE PROGRAMACIÓN


                                   ENERO 2012
ESTRUCTURA DE DATOS
Se 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];
•   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
•   Nombre y

              •   Tamaño

    •     Un arreglo de 10 elementos enteros, se declara:

              •   intArregloEnteros[10];

              •   Y lo podemos visualizar:




                                             Funciones en C

Función

Grupo de sentencias bajo el mismo nombre que realizan una tarea específica.

Llamada a una función

Ejecuta el grupo de sentencias de una función.

Retorno

Una vez “llamada” la función, esta hace su trabajo, y regresa al mismo punto donde
fuellamada.
Las funciones son un conjunto de instrucciones que realizan una tarea específica. En general
toman ciertos valores de entrada, llamados parámetros y proporcionan un valor de salida o
valor de retorno.

Las funciones en programación C, C++ y C# son módulos de programa que se mandan correr en
la 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 esta
función dentro del programa principal voidmain.

                                                                           Ejemplo: Voidmain

                                                                             { Matrizvector();

                                                                                              }

                                    Aplicaciones prácticas

En este ejercicio usamos funciones antes del programa principal y las llamamos dentro del
programa principal (voidmain).

1. Realice un programa que me permita ingresar dos matrices y realizar el producto algebraico
de las mismas.

Análisis:
El siguiente programa vamos a realizar en lenguaje C, utilizando la instrucción gotoxy para
ordenar en filas y columnas.

También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute el
programa, getch (); para la pausa del programa.

También utilizamos la función borde para el margen o borde y en el programa principal
llamamos 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 datos
ingresados en las columnas y filas de la matriz.

Realizamos el proceso utilizando una tercera matriz, esta matriz va a funcionar como un
contador el cual le inicializamos en 0 y esta matriz es la que suma a la primera matriz
ingresada y multiplica a la segunda matriz.

Utilizamos funciones uno para el ingreso y otro para el proceso y en el programa principal
llamamos 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()
{                     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("PRODUCTO
voidproducto(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++)
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 0
PARA SALIR: ");scanf("%d",&op);

Ejecución del programa:




                                 Ingreso de datos en una matriz

2. 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 para
ordenar en filas y columnas.

También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute el
programa, getch (); para la pausa del programa.

También utilizamos la función borde para el margen o borde y en el programa principal
llamamos 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.

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 limite
matriz1[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;
} c=25; f=f+1;}                                      } while(op==1); getch();}

gotoxy(10,20);printf("1 para seguir y 0 para
salir");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 para
ordenar en filas y columnas.

También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute el
programa, getch (); para la pausa del programa.

También utilizamos la función borde para el margen o borde y en el programa principal
llamamos 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 la
fila sea igual a la columna para coger los datos de la diagonal principal.
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++)
{                                                   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. diagonal
principal");                                        }

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 desde
teclado, solo en las diagonales principal y secundaria, las demás posiciones se llenan con
valores ceros.




Análisis:
El siguiente programa vamos a realizar en lenguaje C, utilizando la instrucción gotoxy para
ordenar en filas y columnas.

También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute el
programa, getch (); para la pausa del programa.

También utilizamos la función borde para el margen o borde y en el programa principal
llamamos 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 la
fila 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 control
delas 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()
{                                               else

do                                              {

{ 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 PARA
if(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:
ESTRUCTURAS ARRAYS Y DATOS C++

Más contenido relacionado

PDF
Funciones con vectores y matrices
PDF
Elemento 4
PPT
Funcionesenlenguaje c
PPT
11funciones 1231096290787715-2
PPTX
Funciones en Lenguaje C
PPT
PDF
Funcione con vectores y matrices en c
Funciones con vectores y matrices
Elemento 4
Funcionesenlenguaje c
11funciones 1231096290787715-2
Funciones en Lenguaje C
Funcione con vectores y matrices en c

La actualidad más candente (20)

PDF
Algoritmos - Funciones C++
PDF
Programación 1: funciones en C
PDF
Clase 5
PPT
Lenguaje C
DOC
Separata java script
PDF
Sobrecarga de operadores
PDF
Ejemplos c
PDF
Pract met de la program templa
DOCX
Capitulo 2 tipos de datos en c
PPTX
Lenguaje c (expresiones logicas)
PPT
Lenguajes de programacion c
PPT
Operaciones Basicas C++
PPTX
Otra introducción a apuntadores
 
DOC
Arreglos
PPTX
Estructura de datos I Primera Parte
PDF
Programación 1: cadenas en C
PPTX
Resolución práctica de tipos de datos
 
PDF
Revista digital
PPTX
Lenguaje C_Curso Secap
Algoritmos - Funciones C++
Programación 1: funciones en C
Clase 5
Lenguaje C
Separata java script
Sobrecarga de operadores
Ejemplos c
Pract met de la program templa
Capitulo 2 tipos de datos en c
Lenguaje c (expresiones logicas)
Lenguajes de programacion c
Operaciones Basicas C++
Otra introducción a apuntadores
 
Arreglos
Estructura de datos I Primera Parte
Programación 1: cadenas en C
Resolución práctica de tipos de datos
 
Revista digital
Lenguaje C_Curso Secap
Publicidad

Destacado (20)

PDF
Transitioning your organization to international HRO
PPSX
15-11-16 - CAPEX E ECONOMICO FINANCEIRO
PDF
The Brand Gap
PDF
Brand New World
PDF
26 Top Crowdfunding Sites (Infographic)
PDF
How To Assemble a High Converting eBook
PPTX
Social Proof Tips to Boost Landing Page Conversions
PDF
Create icons in PowerPoint
PDF
17 Copywriting Do's and Don'ts: How To Write Persuasive Content
PDF
10 Disruptive Quotes for Entrepreneurs
PDF
Pitching Ideas: How to sell your ideas to others
PPT
Business Model Design and Innovation for Competitive Advantage
PDF
People Don't Care About Your Brand
ODP
100 growth hacks 100 days | 1 to 10
PDF
Europas BlaBlaCar pitch
PDF
The Science of Email Marketing
PPTX
The Sharing Economy
PDF
The Ultimate Freebies Guide for Presentations by @damonify
PPTX
The 10 Timeless Productivity Hacks
PDF
Email Marketing 101: The Welcome Email
Transitioning your organization to international HRO
15-11-16 - CAPEX E ECONOMICO FINANCEIRO
The Brand Gap
Brand New World
26 Top Crowdfunding Sites (Infographic)
How To Assemble a High Converting eBook
Social Proof Tips to Boost Landing Page Conversions
Create icons in PowerPoint
17 Copywriting Do's and Don'ts: How To Write Persuasive Content
10 Disruptive Quotes for Entrepreneurs
Pitching Ideas: How to sell your ideas to others
Business Model Design and Innovation for Competitive Advantage
People Don't Care About Your Brand
100 growth hacks 100 days | 1 to 10
Europas BlaBlaCar pitch
The Science of Email Marketing
The Sharing Economy
The Ultimate Freebies Guide for Presentations by @damonify
The 10 Timeless Productivity Hacks
Email Marketing 101: The Welcome Email
Publicidad

Similar a ESTRUCTURAS ARRAYS Y DATOS C++ (20)

PDF
ESTRUCTURAS DE CONTROL: BUCLES EN C++
PDF
Funciones con vectores y matrices
PDF
Funciones con vectores y matrices
PPTX
Universidad técnica de ambato
DOC
Prueba programacion
PDF
Capítulo 6 funciones y procedimiento
PPT
Funciones en C
PPT
FUNCIONES LENGUAJE C
PDF
Escuela
PDF
Escuela
PPTX
Clase 1 - Repaso de Programacion Orientada a Objetos.pptx
PDF
Lenguaje c ++ guía para programadores
PDF
Luis Gamboa
PDF
Guia final so
PPTX
Arrays unidimensionales
PPT
Clase09 java script
ESTRUCTURAS DE CONTROL: BUCLES EN C++
Funciones con vectores y matrices
Funciones con vectores y matrices
Universidad técnica de ambato
Prueba programacion
Capítulo 6 funciones y procedimiento
Funciones en C
FUNCIONES LENGUAJE C
Escuela
Escuela
Clase 1 - Repaso de Programacion Orientada a Objetos.pptx
Lenguaje c ++ guía para programadores
Luis Gamboa
Guia final so
Arrays unidimensionales
Clase09 java script

Más de Riki Tapia (7)

PPTX
Estructuras
DOCX
Estructura de datos
PPTX
Steve jobs
PPTX
Steve jobs
PPTX
Tarea 6
PPTX
TAREA 6
PDF
Elemento3
Estructuras
Estructura de datos
Steve jobs
Steve jobs
Tarea 6
TAREA 6
Elemento3

Último (20)

PPTX
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
PDF
Plantilla para Diseño de Narrativas Transmedia.pdf
PPT
El-Gobierno-Electrónico-En-El-Estado-Bolivia
PDF
Maste clas de estructura metálica y arquitectura
PDF
Calidad desde el Docente y la mejora continua .pdf
PDF
Influencia-del-uso-de-redes-sociales.pdf
PDF
Liceo departamental MICRO BIT (1) 2.pdfbbbnn
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PPTX
Propuesta BKP servidores con Acronis1.pptx
PDF
Estrategia de apoyo tecnología grado 9-3
PDF
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
PPTX
REDES INFORMATICAS REDES INFORMATICAS.pptx
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PDF
taller de informática - LEY DE OHM
PDF
clase auditoria informatica 2025.........
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PDF
SAP Transportation Management para LSP, TM140 Col18
PDF
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
PPT
introduccion a las_web en el 2025_mejoras.ppt
PDF
Estrategia de apoyo tecnología miguel angel solis
Acronis Cyber Protect Cloud para Ciber Proteccion y Ciber Seguridad LATAM - A...
Plantilla para Diseño de Narrativas Transmedia.pdf
El-Gobierno-Electrónico-En-El-Estado-Bolivia
Maste clas de estructura metálica y arquitectura
Calidad desde el Docente y la mejora continua .pdf
Influencia-del-uso-de-redes-sociales.pdf
Liceo departamental MICRO BIT (1) 2.pdfbbbnn
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
Propuesta BKP servidores con Acronis1.pptx
Estrategia de apoyo tecnología grado 9-3
Instrucciones simples, respuestas poderosas. La fórmula del prompt perfecto.
REDES INFORMATICAS REDES INFORMATICAS.pptx
Presentación PASANTIAS AuditorioOO..pptx
taller de informática - LEY DE OHM
clase auditoria informatica 2025.........
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
SAP Transportation Management para LSP, TM140 Col18
MÓDULO DE CALOR DE GRADO DE MEDIO DE FORMACIÓN PROFESIONAL
introduccion a las_web en el 2025_mejoras.ppt
Estrategia de apoyo tecnología miguel angel solis

ESTRUCTURAS ARRAYS Y DATOS C++

  • 1. UNIVERSID AD TÉCNICA DE AMBATO el libro de fermi villa ese es bueno FACULTAD DE CIENCIAS HUMANAS Y DE LA EDUCACIÓN. CARRERA DE DOCENCIA EN INFORMÁTICA TEMA: FUNCIONES Y ESTRUCTURAS ALUMNO: DIEGO JURADO ING: WILMA GAVILANEZ ASIGNATURA: LENGUAJE DE PROGRAMACIÓN ENERO 2012
  • 2. ESTRUCTURA DE DATOS Se 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. 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. Nombre y • Tamaño • Un arreglo de 10 elementos enteros, se declara: • intArregloEnteros[10]; • Y lo podemos visualizar: Funciones en C Función Grupo de sentencias bajo el mismo nombre que realizan una tarea específica. Llamada a una función Ejecuta el grupo de sentencias de una función. Retorno Una vez “llamada” la función, esta hace su trabajo, y regresa al mismo punto donde fuellamada.
  • 5. Las funciones son un conjunto de instrucciones que realizan una tarea específica. En general toman ciertos valores de entrada, llamados parámetros y proporcionan un valor de salida o valor de retorno. Las funciones en programación C, C++ y C# son módulos de programa que se mandan correr en la 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 esta función dentro del programa principal voidmain. Ejemplo: Voidmain { Matrizvector(); } Aplicaciones prácticas En este ejercicio usamos funciones antes del programa principal y las llamamos dentro del programa principal (voidmain). 1. Realice un programa que me permita ingresar dos matrices y realizar el producto algebraico de las mismas. Análisis:
  • 6. El siguiente programa vamos a realizar en lenguaje C, utilizando la instrucción gotoxy para ordenar en filas y columnas. También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute el programa, getch (); para la pausa del programa. También utilizamos la función borde para el margen o borde y en el programa principal llamamos 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 datos ingresados en las columnas y filas de la matriz. Realizamos el proceso utilizando una tercera matriz, esta matriz va a funcionar como un contador el cual le inicializamos en 0 y esta matriz es la que suma a la primera matriz ingresada y multiplica a la segunda matriz. Utilizamos funciones uno para el ingreso y otro para el proceso y en el programa principal llamamos 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. { 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("PRODUCTO voidproducto(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. 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 0 PARA SALIR: ");scanf("%d",&op); Ejecución del programa: Ingreso de datos en una matriz 2. 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 para ordenar en filas y columnas. También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute el programa, getch (); para la pausa del programa. También utilizamos la función borde para el margen o borde y en el programa principal llamamos a la función borde. Ingresamos un límite para el límite de la matriz.
  • 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 limite matriz1[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. } c=25; f=f+1;} } while(op==1); getch();} gotoxy(10,20);printf("1 para seguir y 0 para salir");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 para ordenar en filas y columnas. También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute el programa, getch (); para la pausa del programa. También utilizamos la función borde para el margen o borde y en el programa principal llamamos 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 la fila sea igual a la columna para coger los datos de la diagonal principal.
  • 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. { 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. diagonal principal"); } 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 desde teclado, solo en las diagonales principal y secundaria, las demás posiciones se llenan con valores ceros. Análisis:
  • 13. El siguiente programa vamos a realizar en lenguaje C, utilizando la instrucción gotoxy para ordenar en filas y columnas. También utilizamos la instrucción clrscr (); para borrar la pantalla cada vez que se ejecute el programa, getch (); para la pausa del programa. También utilizamos la función borde para el margen o borde y en el programa principal llamamos 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 la fila 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 control delas 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. { else do { { 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 PARA if(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: