Proyecto Algoritmos y Programacion
-
Upload
marcosalcedo -
Category
Documents
-
view
36 -
download
7
description
Transcript of Proyecto Algoritmos y Programacion
PROYECTO ALGORITMOS Y PROGRAMACION
ELABORADO POR:
MARCO ANDRES SALCEDO DIAZ
PRESENTADO A:
JESUS PEREA SANDOVAL
UNIVERSIDAD PEDAGOGICA Y TECNOLOGICA DE COLOMBIA
2015
INTRODUCCION
El siguiente trabajo tiene como objetivo comprender la importancia del uso de
los algoritmos y la programación, para lo cual es necesario realizar estos
ejercicios que sirvan de guía o ayuda para quien este interesado en este tema,
con el fin de aclarar dudas y motivar a las personas a interesarse en este
amplio tema tan variado.
Finalmente veremos el desarrollo de varios ejercicios propuestos por el docente
para desarrollar las habilidades y conocimientos de sus estudiantes.
OBJETIVOS
Los objetivos originales de este proyecto son los siguientes:
1. Preparar a los estudiantes para las diferentes tareas que enfrentaran en
el futuro como Ingenieros
2. Análisis y diagnóstico de problemas generados por el docente para el
desarrollo de los estudiantes.
3. Aprender más utilidades y herramientas del programa Dev C++ para uso
práctico.
4. Obtener resultados óptimos de los estudiantes frente a este tipo de
situaciones, tomando como ejemplo estos problemas.
Ejercicios Proyecto Algoritmos y Programación
1. Leer dos vectores enteros X(n), Y(m)
a) Generar un vector Z(n+m) que sea la unión de X(n) , Y(m)
b) Generar un vector W(k) que contenga los elementos comunes de X(n),
Y(m)
2. Leer un vector X(n). Leer un valor k.
a) Encontrar el mayor valor del vector que sea menor que k.
3. Leer un vector X(n). Leer un valor k.
a) Ordenar el vector X(n) de menor a mayor.
b) Insertar el valor de k en el vector X(n) manteniendo el orden ascendente.
4. Leer dos vectores X(n), Y(n). Leer un valor k.
a) Encontrar el valor de X(n) más cercano a k.
b) Encontrar el valor de Y(n) más cercano a k.
1. Diagrama de flujo y definición de variables.
n,m=tamaño componentes vector x,y=nombre variable vector
i= 1, n
INICIO
n,m
Leervector(n,x) Leervector(m,y)
stop
imprimirvector (n,x) imprimirvector(m,y)
unirvectores (x,y,m,m+n,n,z) imprimirvector(m+n,z)
Vectorcomunes(n,m,x,y)
unirvectores (double x[ ], double y[ ], double z[ ],int n, int m)
Z[i]=X[i]
i= 1, n
Z[i+n]=Y[i]
unirvectores (double x[ ], double y[ ], double z[ ],int n, int m)
i= 1, n
j= 1, n
X[i]==y[j]
X[i]
CODIGO EN C++ #include <iostream> #include <conio.h> #include <iomanip> void leervector(int n, double vect[]) { using namespace std; int i; for(i=1;i<=n;i++) cin>>vect[i]; } void imprimirvector(int n, double vect[]) { using namespace std; int i; for(i=1;i<=n;i++) cout<<setw(5)<<vect[i]; } void unirvectores(double x[],double y[],double z[], int n,int m, int k) { int i; for(i=1;i<=n;i++) z[i]=x[i]; for(i=1;i<=m;i++) z[i+n]=y[i]; } double vectorcomunes(int n, int m, double x[],double y[]) { using namespace std; int i,j; for(i=1;i<=n;i++) for(j=1;j<=m;j++) if(x[i]==y[j]) cout<<("%f",x[i]); } main () { using namespace std; int n,m; double x[20],z[20],y[20]; cout<<"Ingrese elementos del vector x: "; cin>>n; cout<<endl; leervector(n,x); cout<<endl; cout<<"Vector x: "; imprimirvector(n,x); cout<<endl<<endl;
cout<<"Ingrese los elementos del vector y: "; cin>>m; cout<<endl; leervector(m,y); cout<<endl; cout<<"Vector y: "; imprimirvector(m,y); cout<<endl<<endl; cout<<"vector z (union de los vectores X y Y) es: "; unirvectores(x,y,z,n,m,m+n); imprimirvector(m+n,z); cout<<endl<<endl; cout<<"vector comunes es: "; vectorcomunes(n,m,x,y); getch(); return 0; }
2. Diagrama de flujo y definición variables
INICIO
n,k
stop
Menor(k,x)
Leervector(n,x)
Vec[i]
Imprimirvector(n,x
menor (int k, double vec[ ]
i= 1, k
Vec[i]<k
- Código en c++ #include<conio.h> #include<stdio.h> #include<iomanip> void menor (int k, float vec[] ) { int i,n; float h,d; for(i=1; i<k; i++) { if (vec[i]<k); } } void LeerVector (int n,float vec[]) { int i; for (i=1; i<=n; i++) scanf ("%f",&vec[i]); } void ImprimirVector (int n,float vec[]) { int i; for (i=1; i<=n; i++) printf ("%f ",vec[i]); } main() { float x[50]; int i,k,n,d; scanf ("%d",&k); scanf ("%d|",&n); LeerVector (n,x); ImprimirVector (n,x); menor(k,x); getch (); return (0); }
3. Diagrama de flujo y definición variables
I==indice
Arreglo[i]=nuevoelemento
INICIO
Numeroelementos, Nuevoelemento,j=1
i= 1,
numeroelementos
Arreglo[i]
stop
j<o aux<arreglo[j-1]
arreglo[j]=arreglo[j-1]
J=j-1 Arreglo[j]=aux
Aux=arreglo[i]
nuevo elemento
i= 0,
numeroelemento
Arreglo[i]
- Código en c++ #include <iostream> #include <stdlib.h> #include <stdio.h> int arreglo[20]; int numeroElementos; int elemento; int i,j,aux; //int n, /* n=10(numeroElementos);*/ //variable para el índice u el nuevo elemento int indice,nuevoElemento; main() { using namespace std; // pedir por teclado el número de elementos. cout<<"Ingresa el numero de elementos: "; cin>>numeroElementos; //escribir los elementos del arreglo for(int i=0;i<numeroElementos;i++){ cout<<"Ingresa elemento: "; cin>>elemento; arreglo[i]=elemento; } //Presentar los elementos del arreglo en el orden como fueron escritos cout<<"\nLos elementos del arreglo en desorden son: \n"; for(int i=0;i<numeroElementos;i++){ cout<<arreglo[i]<<" "; } //Proceso para ordenar el arreglo //n=numeroElementos; for(int i=1;i<numeroElementos;i++){ j=i; aux=arreglo[i]; while(j>0 && aux<arreglo[j-1]){ arreglo[j] = arreglo[j-1]; j = j-1; } arreglo[j] = aux; } //Presentar los elementos del arreglo pero en orden cout<<"\nEl arreglo ordenado es: \n"; for(int i=0;i<numeroElementos;i++){ cout<<arreglo[i]<<" "; } /* Pedir por teclado que se ingrese un índice y un elemnto a ingresar en dicho índice */ cout<<"\n\nIngresa un elemento para reemplazarlo: "; cin>>nuevoElemento; cout<<"\nIngresa un indice para colocar el "<<nuevoElemento<<" : "; cin>>indice;
// cambiar el elemento dado en su respectivo índice y presentarlo. for(int i=0;i<numeroElementos;i++){ if(i==indice){ arreglo[i]=nuevoElemento; } cout<<arreglo[i]<<" "; } //Ordenar el arrglo nuevamente y presentarlo for(int i=1;i<numeroElementos;i++){ j=i; aux=arreglo[i]; while(j>0 && aux<arreglo[j-1]){ arreglo[j] = arreglo[j-1]; j = j-1; } arreglo[j] = aux; } cout<<"\nLos elementos del arreglo en desorden son: \n"; for(int i=0;i<numeroElementos;i++) { cout<<arreglo[i]<<" "; } system ("PAUSE"); return 0; }
4. Diagrama de flujo y definición de variables
- Código en c++ #include<conio.h> #include<stdio.h> #include<iomanip> void menor (int k, float vec[] ) { int i,n; float h,d; for(i=1; i<k; i++) { if (vec[i]<k); } } void LeerVector (int n,float vec[]) { int i; for (i=1; i<=n; i++) scanf ("%f",&vec[i]); } void ImprimirVector (int n,float vec[]) { int i;
INICIO
n,k
stop
Menor(k,x)
Leervector(n,x) Leervector(n,y)
Vec[i]
Imprimirvector(n,x) Imprimirvector(n,y)
menor (int k, double vec[ ]
i= 1, k
Vec[i]<k
for (i=1; i<=n; i++) printf ("%f ",vec[i]); } main() { float x[50],y[50]; int i,k,n,d; scanf ("%d",&k); scanf ("%d|",&n); LeerVector (n,x); ImprimirVector (n,x); menor(k,x); scanf ("%d",&k); scanf ("%d|",&n); LeerVector (n,y); ImprimirVector (n,y); menor(k,y); getch (); return (0); }
CONCLUSIONES
Como resultado de la investigación y los conocimientos brindados de parte del docente a nosotros los estudiantes, y adquiridos por los mismos, se llega a la conclusión de presentar este trabajo para evaluar esos conocimientos poniéndolos en práctica. Por otro lado, también se evalua a cada estudiante para que este demuestre asi sus conocimientos y no presente dudas ante el docente, para asi lograr un excelente trabajo y una excelente presentación del mismo. A lo largo del presente trabajo, se buscó aclarar dudas, reforzar conceptos y adquirir nuevos en varios casos, se necesitó la ayuda de herramientas didácticas y libros para poder desarrollar este trabajo.