Vectores: doblar y guardar en fichero

Claudia Anoro

/* 1) -Solicitar un entero (N) al usuario (dimensión de un vector)

-Leer 2 vectores (int) de N componentes
-Calcular el producto escalar de los 2 vectores
-Escribir por pantalla tanto los 2 vectores como el prod escalar

2) -A partir de u,v construir un vector w de longitud 2N
-Escribir en un fichero de texto: los 2 vectores y el vector w (con el doble de componentes)

3) -Ordenar el vector w de logitud 2N
-Escribir ese vector w ordenado en pantalla y también en el fichero*/

#include <iostream>
#include <stdio.h>
#define DIM 100

using namespace std;

void burbuja ( int s[ ], int cont)
{
int i,j,t;
for( i=1 ; i<cont ; i++)
for( j=cont-1 ; j>=i ; j--)
{
if(s[j-1]>s[j])
{
t = s[j-1];
s[j-1] = s[j];
s[j] = t;
}
}
}

int main ()
{
FILE *q;
int i, j, N, u[DIM], v[DIM], w[2*DIM], pe=0;
q=fopen("fvector.txt", "w");
cout<<"Inserte la dimension: ";
cin>>N;
cout<<"Escribe el primer vector: ";
fprintf(q, "El primer vector: \n( ");
for(i=0;i<N;i++)
{
scanf("%d", &v[i]);
fprintf(q, "%d ", v[i]);
}
fprintf(q, ")\n");
cout<<"Escribe el segundo vector: ";
fprintf(q, "El segundo vector: \n( ");
for(i=0;i<N;i++)
{
scanf("%d", &u[i]);
fprintf(q, "%d ", u[i]);
}
fprintf(q, ")\n");
cout<<endl;
cout<<"El vector u es : ";
for(i=0;i<N;i++) cout<<v[i]<<" ";
cout<<endl<<"El vector v es: ";
for(i=0;i<N;i++) cout<<u[i]<<" ";
cout<<endl<<"El producto escalar es: ";
for(i=0;i<N;i++)
{

pe=pe+u[i]*v[i];

}
cout<<pe<<endl;
for(i=0;i<N;i++) w[i]=v[i];
for(i=N;i<2*N;i++)
{
j=i-N;
w[i]=u[j];
}
cout<<"El vector w de longitud 2N es: ";
fprintf(q, "El vector w de longitud 2N es: ");
for(i=0;i<2*N;i++)
{
printf("%d ", w[i]);
fprintf(q, "%d\t", w[i]);
}

cout<<endl;
burbuja(w,2*N);

cout<<"El vector w de longitud 2N ordenado es: ";
fprintf(q, "El vector w de longitud 2N ordenado es: ");

for(i=0;i<(2*N);i++)
{
fprintf (q, "%d ", w[i]);
printf ("%d ",w[i]);
}
fclose(q);
}
Anuncios
Esta entrada fue publicada en Informática e Internet. Guarda el enlace permanente.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s