sábado, 28 de junio de 2014

EVP 6


 Matrices

ü Desde el punto de vista del programa, una matriz (array ó vector) es una zona de almacenamiento contiguo, que contiene una serie de elementos del mismo tipo.

ü Desde el punto de vista lógico podemos considerarlas como un conjunto de elementos ordenados en fila. Así pues, en principio todas las matrices son de una dimensión, la dimensión principal, pero veremos que los elementos de esta fila pueden ser a su vez matrices (un proceso que puede ser recursivo), lo que nos permite hablar de la existencia de matrices multi-dimensionales.



EJEMPLO DE MATRICES

#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
/*Este programa lee los datos de una matriz 3x4 y muestra en pantalla
la suma de los datos de cada fila */
 main(){
 int matriz[3][4];
 int arreglo[3];
 int i,j;

 //Ingreso de los datos
 for (i=0;i<3;i++){
 for (j=0;j<4;j++){
 cout << "Ingrese el numero entero correspondiente a la posicion ["<<i<<"] ["<<j<<"]: ";
 cin >> matriz[i][j];
 }
 //Muestra en pantalla la matriz ingresada
 cout << "\nLa matriz que usted ingreso es: \n\n";
 for (i=0;i<3;i++){
 for (j=0;j<4;j++){
 cout << matriz[i][j]<<" ";
 }
 cout << "\n";
 }

 //Suma los datos de cada fila
 for (i=0;i<3;i++){
 arreglo[i]=0;
 for (j=0;j<4;j++){
 arreglo[i]=arreglo[i]+matriz[i][j];
 }
 }
  //Muestra en pantalla los resultados
 for (i=0;i<3;i++){
 cout << "\nLa suma de los datos de la fila "<<i<<" es: " << arreglo[i];
 }
 getch();
}


Ejemplo 1
·         Una matriz 2x4 como poder desarrollarla.


#include <iostream.h>
#include <stdlib.h>
#include <conio.h>  
main()       
{
int matriz[2][4];
int arreglo[2];
int i,j;
for (i=0;i<2;i++)
{
 for (j=0;j<4;j++)
  {
  cout << "Ingrese el numero de la posicion ["<<i<<"] ["<<j<<"]: ";
  cin >> matriz[i][j];
  }
}
cout << "\nLa matriz que usted ingreso es: \n\n";
for (i=0;i<2;i++)
{
 for (j=0;j<4;j++)
  {
  cout << matriz[i][j]<<" ";
  }
 cout << "\n";
}
for (i=0;i<2;i++)
{
 arreglo[i]=0;
 for (j=0;j<4;j++)
  {
  arreglo[i]=arreglo[i]+matriz[i][j];
  }
}
for (i=0;i<3;i++)
{
 cout << "\nLa suma de los datos de la fila "<<i<<" es: " << arreglo[i];
}
getch();
}



sábado, 21 de junio de 2014

EVP 5

vectores

Un Vector es un tipo de dato compuesto que permite almacenar un gran número de valores del mismo tipo.una zona de almacenamiento continuo, que contiene una serie de elementos del mismo tipo, los elementos de la matriz. Desde el punto de vista lógico una matriz se puede ver como un conjunto de elementos ordenados en fila (o filas y columnas si tuviera dos dimensiones).

X es el nombre del conjunto, dentro de los [] va el número total de valores que posee el conjunto, en este ejemplo hay 4 y por eso se le pone [4], funciona igual para 1, 5 o n valores (x [1], x [5], x [n]), pero “n” debe tomar un valor, no puede quedar como variable.

<Clase> variable[n] = {v1, v2, v3,…, vn};

Para utilizar los valores almacenados en el vector se debe tomar cada elemento por separado llamándolo con el nombre del vector y su ubicación en el mismo.El primer valor del grupo lo representara con variable [0] y el ultimo es: variable [n-1].


Ejemplo : El producto escalar de dos vectores
 */
#include <stdio.h>
 
double producto_escalar(double v1[], double v2[], int d);
 
int main()
{ 
 const int largo = 3;
 double vector_1[] = {5,1,0};
 double vector_2[] = {-1,5,3};
 
 double resultado = producto_escalar(vector_1, vector_2, largo);
 
 // imprime el resultado
 printf("(%f, %f, %f) . (%f, %f, %f) = %f\n",
  vector_1[0], vector_1[1], vector_1[2],
  vector_2[0], vector_2[1], vector_2[2],
  resultado);
 return 0;
}
 
/* producto escalar entre dos vectores */
double producto_escalar(double v1[], double v2[], int d)
{
 double resultado = 0;
 int i;
 for (i=0; i < d; i++) {
  resultado += v1[i] * v2[i];
 }
 return resultado;
}



·                             El usuario tendrá dos opciones leer datos o grabar nuevos, dado esa decisión, pasara a ver la lista de personas para agregar un estado civil a la persona designada o leerlo según corresponda.


using namespace std;
#include <iostream>
#include <iomanip>
#include <conio.h>
int main()
{
string d[4]={"casada","soltera","viuda","divorciada"};
int opc,i,s;
do
{
 cout<<"seleccione opcion\n";
 cout<<setw(40)<<" 1-LEER"<<endl;
 cout<<setw(40)<<" 2-grabar"<<endl;
 cin>>opc;
 switch(opc)
 {
  case 1:
     Cout<<setw (30) <<"MENU DE NOMBRES"<<endl;
     cout<<setw(20)<<"(1)maria"<<endl;
     cout<<setw(20)<<"(2)anais "<<endl;
     cout<<setw(20)<<"(3)lucero"<<endl;
     cout<<setw(20)<<"(4)irma"<<endl;
     cin>>s;
     i=s-1;
     cout<<setw(30)<<d[i]<<endl;
     break;
  case 2:
     cout<<setw(30)<<"MENU DE NOMBRES"<<endl;
     cout<<setw(20)<<"(1)maria"<<endl;
     cout<<setw(20)<<"(2)anais"<<endl;
     cout<<setw(20)<<"(3)lucero"<<endl;
     cout<<setw(20)<<"(4)irma"<<endl;
     cin>>s;
     i=s-1;
     cin>>d[i];
     break;
  default:
     cout<<"error!";
  }
}
while (opc!=0);
getch();
}

sábado, 24 de mayo de 2014

EVP 4

Funciones

  • Son acciones a ejecutar con datos definidos, pero estas acciones pueden ser además de sumas, restas, productos o divisiones; acciones de escritura y salida de datos, entre otros.

  • Existen dos tipos de funciones:
- Funciones sin void.
- Funciones con void.

  • El primero se usa cuando queremos un solo resultado final, mientras en segundo es para cuando queremos que la función arroje varios resultados o nos transmita varios datos.

  • Nota: Toda función usada, al margen de su tipo debe ser declarada al inicio del programa.

Procedimiento

<librerías>
Clase función (clase numero1,clase numero2)/*clase del resultado de la función y clase de las variables, las variables en la función pueden ser 1 o más.*/
//programa principal
int main()
{
Variables;
Instrucciones;
Nombre de la función(numero  que usará); 
}
//fin del programa principal
//funcion
Clase función (clase nuemro1,clase numero2,…,clase variable N)
{
Instrucciones;
return resultado; //aquí devuelve al programa el valor pedido.
}
  • EJEMPLO  DELA ÁREA DE UN TRAPECIO


using namespace std;
#include <iostream>
#include <iomanip>
#include <conio.h>
void Area(float x,float y, float h);
float r;
int main()
{
float x,y;
r=0.0,
cout<<setw(50)<<"AREA DE UN TRAPECIO\n"
      <<setw(50)<<"********************\n\n";
cout<<setw(30)<<"Ingrese Base menor: ";cin>>y;
cout<<setw(30)<<"Ingrese Base mayor: ";cin>>x;
cout<<setw(30)<<"Ingrese altura:  ";cin>>h;
Area(x,y);
cout<<setw(30)<<"El area es : "<<r<<endl;
getch();
}

void Area(float x,float y)
{
r=(x+y)*h/2;
}