LENGUAJE DE PROGRAMACION

El mundo es como es.....

LENGUAJE DE PROGRAMACION

el fin es el enicio de otro .......

LENGUAJE DE PROGRAMACION

El poder no lo es toddo............

LENGUAJE DE PROGRAMACION

El sexo es como el vicio a los programas de juego ....

viernes, 21 de agosto de 2015

laboratorio 3: ORDENAMIENTO

ORDENAMIENTO

El ordenamiento es una labor común que realizamos continuamente. ¿Pero te has preguntado qué es ordenar? ¿No? Es que es algo tan corriente en nuestras vidas que no nos detenemos a pensar en ello. Ordenar es simplemente colocar información de una manera especial basándonos en un criterio de ordenamiento.
En la computación el ordenamiento de datos también cumple un rol muy importante, ya sea como un fin en sí o como parte de otros procedimientos más complejos. Se han desarrollado muchas técnicas en este ámbito, cada una con características específicas, y con ventajas y desventajas sobre las demás. Aquí voy a mostrarte algunas de las más comunes, tratando de hacerlo de una manera sencilla y comprensible.
La siguiente es una tabla comparativa de algunos algoritmos de ordenamiento. Si quieres saber más sobre alguno en particular haz un click sobre su nombre. En cada página encontrarás una descripción, pseudocódigo y un análisis sobre su rendimiento, ventajas y desventajas.
(Quizás quieras bajar ahora la demostración para ir observándola a medida que vayas leyendo)
Tabla comparativa de algoritmos
NombreComplejidadEstabilidadMemoria adicional
Ordenamiento Burbuja (Bubblesort)O(n2)EstableNo
Ordenamiento por SelecciónO(n2)No EstableNo
Ordenamiento por InserciónO(n2)EstableNo
Ordenamiento Rápido (Quicksort)O(n * log2(n))No EstableNo

4. Eligiendo el más adecuado.


EJERCICIO 1

//Huarcaya Parra Bryan IIIEE-02

#include <iomanip.h>
#include <iostream.h>
#include <conio.h>
#include <math.h>
char opcion='0';

int main()
{
while(opcion!='6')
{ system("cls");
    cout<<setw(30)<<"Combinacion Quimica\n";
    cout<<setw(30)<<"-------------------\n";
     cout<<setw(5)<<"Seleccione la combinacion que desea realizar\n";
      cout<<"[1]Oxido\n";
       cout<<"[2]Hidruro\n";
       cout<<"[2]Hidroxido\n";
        cout<<"[4]Acido\n";
        cout<<"[5]Sal\n";
     
        cout<<"[6]Salir del programa\n";
     
cout<<"ingrese opcion : ";cin>>opcion;

switch(opcion)
{case '1':
system("cls");
    cout<<setw(30)<<"Oxido\n";
    cout<<setw(30)<<"------\n";
      cout<<setw(20)<<"Oxido basico = metal + oxigeno\n";
      cout<<setw(20)<<"Oxido acido = no metal + oxigeno\n";
      break;
 case '2':
system("cls");
   cout<<setw(30)<<"Hidruro\n";
   cout<<setw(30)<<"-------\n";
      cout<<setw(20)<<"Hidruro metalico= metal + hidrogeno\n";
      cout<<setw(20)<<"Hidruro no metalico = no metal + hidrogeno\n";
        break;
     
 case '3':
system("cls");
   cout<<setw(30)<<"Hidroxido\n";
   cout<<setw(30)<<"---------\n";
      cout<<setw(20)<<"Hidroxido = Oxido basico+ agua\n";
      break;
       case '4':
system("cls");
   cout<<setw(30)<<"Acido\n";
   cout<<setw(30)<<"------\n";
      cout<<setw(20)<<"Acido Oxacido = Oxido acido + agua\n";
      cout<<setw(20)<<"Acido hidracido = hidruro no metalico + agua \n";
        break;
               case '5':
system("cls");
   cout<<setw(30)<<"Sal\n";
   cout<<setw(30)<<"---\n";
      cout<<setw(20)<<"Sal Oxisal = Acido oxacido + hidroxido\n";
      cout<<setw(20)<<"Sal Haloidea = Acido Hidracido + hidroxido\n";
        break;
}
getch();

}
}

     

laboratorio 1 : VECTORES


VECTORES


Un vector, también llamado array(arreglo) unidimensional, es una estructura de datos que permite agrupar elementos del mismo tipo y almacenarlos en un solo bloque de memoria juntos, uno despues de otro. A este grupo de elementos se les identifica por un mismo nombre y la posición en la que se encuentran. La primera posición del array es la posición 0.
Podríamos agrupar en un array una serie de elementos de tipo enteros, flotantes, caracteres, objetos, etc.
Crear un vector en C++ es sencillo, seguimos la siguiente sintaxix: Tipo nombre[tamanyo];
Ejm:
1
2
3
int a[5]; // Vector de 5 enteros
float b[5]; // vector de 5 flotantes
Producto product[5]; // vector de 5 objetos de tipo Producto
Podríamos también inicializar el vector en la declaración:
1
2
3
int a[] = {5, 15, 20, 25, 30};
float b[] = {10.5, 20.5, 30.5, 12.5, 50.5}
Producto product[] = {celular, calculadora, camara, ipod, usb}
Como hay 5 elementos en cada array, automáticamente se le asignará 5 espacios de memoria a cada vector, pero si trato de crear el vector de la forma int a[] , el compilador mostrará un error, porque no indiqué el tamaño del vector ni tampoco inicializé sus elementos.
Asigno valores a los elementos de un vector indicando su posición:

int a[4] = 30; // le asigno el valor 30 a la posición 4 del vector.
product[2].setPrecio(300) // le asigno un precio de 300 al producto en la posición 2.
Obviamente el método setPrecio() debe de estar implementado. Para llenar, recorrer e imprimir un vector podemos utilizar un bucle for:

#include <iostream>
using namespace std;
int main()
{
  int dim;
  cout << "Ingresa la dimension del vector" << endl;
  cin >> dim; // Supongamos que ingrese 10
  int vector[dim]; // mi vector es de tamanyo 10
  for(int i = 0; i < dim; i++){
    vector[i] = i * 10;
    cout << vector[i] << endl;
  }
  return 0;
}
La salida del programa mostrará: 0 10 20 30 40 50 60 70 80 90 Fàcil verdad? Bien ahora creen 2 o más vectores y empiecen a hacer funciones básicas como sumar, restar, buscar, ordenar, moda, etc que ayudan mucho a ir desarrollando la lógica. No vale copiar y pegar, mejor es practicar, practicar y practicar.
Aquí una función simple para sumar 2 vectores a y b y poner el resultado en un tercer vector c:

#include <iostream>
using namespace std;
void sumar(int a[], int b[], int c[],int dim) {
    for (int i = 0; i < dim; i++) {
        c[i] = a[i] + b[i];
    }
}
void imprimir(int v[], int dim)
{
   for(int i = 0; i < dim; i++) {
        cout << v[i] << endl;
   }
   cout << endl << endl;
}
int main()
{
    int dim;
    cout << "Ingresa la dimensión" << endl;
    cin >> dim;
    int a[dim];
    int b[dim];
    int c[dim];
    for(int i = 0; i < dim; i++) {
        a[i] = i * 10;
        b[i] = i * 5;
    }
    cout << "Vector A " << endl;
    imprimir(a, dim);
    cout << "Vector B " << endl;
    imprimir(b, dim);
    sumar(a, b, c, dim);
    cout << "Vector C " << endl;
    imprimir(c, dim);
    return 0;
}
Si ingreso una dimensión de 10, este programa me daría:
Vector A
0 10 20 30 40 50 60 70 80 90
VECTOR B
0 5 10 15 20 25 30 35 40 45
VECTOR C
0 15 30 45 60 75 90 105 120 135
Entonces para tomar en cuenta:
  • Todo vector debe tener definido un tipo de dato.
  • Todo vector necesita de una dimensión o tamanyo.
El código de arriba se puede mejorar muchísimo con objetos y clases, este es solo un pequeño ejemplo.


ESTRUCTURA


//ESTRUCTURA 2 EN BLANCO
#include<iostream>
#include<math.h>
using namespace std;
//zona de declarcion publica
 int i,m,contador,q,v;
 const int n=5;
 char vocal[n],elementos; //declaracionde un vector
int main ()
{
 int opcion;
 do
 {      //INICIO DEL DO - WHILE
  cout<<"********* MENU DE 4 FUNCIONES **********\n\n"; 
  cout<<" 1) desarrollo de la energia\n";
  cout<<" 2) escritura del vector\n";
  cout<<" 3) encontrar el n-esimo elemento\n";
  cout<<" 4) contar elementos en le vector\n";
  cout<<" 2) OPCION 2 \n\n";
  cout<<"       DIGITE <0> PARA SALIR \n\n";
  cout<<"*************************************\n\n";
  cout<<"   ELIJA UNA OPCION : "; cin>>opcion;
    //2)ASIGNACION
    switch (opcion)
    { //INICIO DEL CASO 1
    case 1: 
     {// CONTENIDO 1 (INICO)
       cout<<"******* desarrollo de la energia ******\n\n";
       cout<<"ingresar q"; cin>>q;
       for(i=1; i<=n;i++)
       {
         v=(q*q)/2*i;     
       //cout<<"ingrese del vector vocal["<<i<<"]=";cin>>vocal[i];
        cout<<v;
       
       }
       
      
       cout<<"***********************\n\n";
    } //FIN DEL CASO 1
     break;      
  case 2: 
     {//INICIO DEL CASO 2
       cout<<"******* escritura del vector ***************\n\n";
       for(i=1; i<=n;i++)
       {
       cout<<" vocal["<<i<<"]= "<< vocal[i] <<endl;
       }
       cout<<"*********************************\n\n";
     } //FIN DEL CASO 2
    break;
     case 3: 
     {//INICIO DEL CASO 2
       cout<<"******* encontrar el n-esimo elemento ***************\n\n";
       cout<<"ingrese el e-nesimo elemento a buscar : ";cin>>m;
       for(i=1; i<=n;i++)
       {
               if(i==m)
       cout<<" encontramos a la vocal["<<i<<"]="<< vocal[i] <<endl;
       }
       cout<<"*********************************\n\n";
     } //FIN DEL CASO 2
    break;
     case 4: 
     {//INICIO DEL CASO 2
       cout<<"******* contar elementos en le vector ***************\n\n";
       cout<<"ingrese el elemento a contar : ";cin>>elementos;
       contador=0; //inicializacion
       for(i=1; i<=n;i++)
       {
               if(elementos==vocal[i])
               contador=contador+1;
               }      
       cout<<" hay "<<contador << " elementos con la vocal  "<< elementos << " en el vector";        
       cout<<"*********************************\n\n";
     } //FIN DEL CASO 2
    break;
     
   }// FIN DE SWITCH  
 }while (opcion !=0); // FIN DEL DO - WHILE

  cout<<endl;cout<<"\n";

  system("pause");
  return 0;
} //FIN DEL PROGRAMA


EJERCICIO 1


//Huarcaya Parra Bryan IIIEE-02

#include <iomanip.h>

#include <iostream.h>
#include <conio.h>
#include <math.h>
float t[5];

int main()

{
    cout<<setw(30)<<"Conversor de temperatura\n";
    cout<<setw(30)<<"------------------------\n";
     cout<<"ingrese escala\n";
     cout<<"Celcius    - 1\n";
     cout<<"Fahrenheit - 2\n";
     cout<<"Kelvin     - 3\n";
     cin>>t[0];
     cout<<"\ningrese temperatura\n";
      cin>>t[1];
     if(t[0]==1)
     {t[2]=t[1]*1.8+32;//fahrenheit
     t[3]=t[1]+273;//kelvin
     cout<<t[1]<<" grados Celcius equivale a:\n";
     cout<<t[2]<<" grados Fahrenheit\n";
     cout<<t[3]<<" grados Kelvin\n";
     
     }
          if(t[0]==2)
     {t[2]=(t[1]-32)/1.8;//celcius
     t[3]=((t[1]-32)/1.8)+273;//kelvin
     cout<<t[1]<<" grados Fahrenheit equivale a:\n";
     cout<<t[2]<<" grados Celcius\n";
     cout<<t[3]<<" grados Kelvin\n";
     
     }
     
            if(t[0]==3)
     {t[2]=t[1]-273;//celcius
     t[3]=((t[1]-273)*1.8)+32;//fahrenheit
     cout<<t[1]<<" grados Kelvin equivale a:\n";
     cout<<t[2]<<" grados Celcius\n";
     cout<<t[3]<<" grados Fahrenheit\n";
     
     }
  
getch();


}



     



category1

Flickr Images

About us

Find Us On Facebook

Business

Con la tecnología de Blogger.

Social Networks

category2

Popular Posts