elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  coordenada con diferencia máxima
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: coordenada con diferencia máxima  (Leído 2,381 veces)
indict

Desconectado Desconectado

Mensajes: 78


Ver Perfil
coordenada con diferencia máxima
« en: 26 Enero 2013, 18:10 pm »

Hola,
Como harías el siguiente programa,
supongamos que tenemos dos vectores x, e y. Y queremos encontrar la observación con diferencia mayor.

Es decir, encontrar el valor (x,y) que hace máxima la diferencia.
Código:
(x-x[i], y-y[i])
, este valor es una coordenada que tiene la misma posición para x e y.

Código:
int valor(vector<int>&x, vector<int>&y, int N)

for(int i=0;i<N;i++){
for(int j=i-1;j>=0;j++){

if(x-x[i])>(x-x[j]){return i;}}}



En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: coordenada con diferencia máxima
« Respuesta #1 en: 26 Enero 2013, 21:51 pm »

Hola,
Como harías el siguiente programa,
supongamos que tenemos dos vectores x, e y. Y queremos encontrar. la observación con diferencia mayor==>Ehhhhhhhhhhhhh ? ? ? ?

Es decir, encontrar el valor (x,y) que hace máxima la diferencia.
Código:
(x-x[i], y-y[i])
, este valor es una coordenada que tiene la misma posición para x e y.

Un vector se puede multiplicar o dividir por un escalar (no cero en la división), pero a un vector no se le puede sumar o restar un escalar, que es lo que es una coordenada.
Vamos, que la operación
Código:
(x-x[i], y-y[i])
no es posible.
Así que aclara mejor el enunciado campeón. :rolleyes:
Saluditos!.


En línea

indict

Desconectado Desconectado

Mensajes: 78


Ver Perfil
Re: coordenada con diferencia máxima
« Respuesta #2 en: 27 Enero 2013, 18:17 pm »

El enunciado es:

Hacer la función cor_menos_uno(vector<double>x,vector<double>y);

Sabemos que la correlación entre x e y no es demasiado fuerte, y sabemos que en nuestras observaciones contenidas en
los vectores x,y hay una observación atípica. La función que debemos crear detectará cúal es la observación.
Código:
correlacion(x-x[i], y-y[i])∀ x∈{0,N-1}
,donde
Código:
 x-x[i]
e
Código:
y-y[i]
son los vectores x e y sin la observación
Código:
 x[i],y[i].
De todas estas, queremos la más grande, es decir queremos saber cúal es la observación i tal que  
Código:
correlacion(x-x[i], y-y[i])
sea la máxima. La función devuelve el subíndice i. double correlacion (vector <double>& x, vector <double>& y);

¡Gracias por el aporte! :)
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: coordenada con diferencia máxima
« Respuesta #3 en: 27 Enero 2013, 19:09 pm »

El enunciado es:

Hacer la función cor_menos_uno(vector<double>x,vector<double>y);

Sabemos que la correlación entre x e y no es demasiado fuerte, y sabemos que en nuestras observaciones contenidas en
los vectores x,y hay una observación atípica. La función que debemos crear detectará cúal es la observación.
Código:
correlacion(x-x[i], y-y[i])∀ x∈{0,N-1}
,donde
Código:
 x-x[i]
e
Código:
y-y[i]
son los vectores x e y sin la observación
Código:
 x[i],y[i].
De todas estas, queremos la más grande, es decir queremos saber cúal es la observación i tal que  
Código:
correlacion(x-x[i], y-y[i])
sea la máxima. La función devuelve el subíndice i. double correlacion (vector <double>& x, vector <double>& y);

¡Gracias por el aporte! :)
Por si tú no lo has entendido, se trata de construir un nuevo vector donde no esté la componente i, y eso para cada una de las componentes y cada uno de los vectores x e y.
Osea, primero construyes un vexto "xsin" igual al x sin la componente 0, y lo mismo para y. Y luego el "xsin" será el x sin la componete 1, y lo mismo para el y. Esto que te comento ya está resuelto en otro post.
Y lo de la correlación, ¿ aqué te refieres?. Porque para ser precisos es:
http://es.wikipedia.org/wiki/Correlaci%C3%B3n
Seguro que te refieres a otra cosa.
Saluditos!.

En línea

indict

Desconectado Desconectado

Mensajes: 78


Ver Perfil
Re: coordenada con diferencia máxima
« Respuesta #4 en: 27 Enero 2013, 20:46 pm »

si, me refería a ese concepto de correlación, pero eso es para ejemplificar mejor a que se aplica la función.

¡un saludo!
En línea

leosansan


Desconectado Desconectado

Mensajes: 1.314


Ver Perfil
Re: coordenada con diferencia máxima
« Respuesta #5 en: 29 Enero 2013, 15:27 pm »

si, me refería a ese concepto de correlación, pero eso es para ejemplificar mejor a que se aplica la función.

Ahora que hemos aclarado que
Código
  1. x-x[i]
no es una resta, sino el vector x sin la componente "i", el proceso sería construir en un bucle los vectores x e y sin la componente j, que irá siendo 0, 1,2 ....<size, de forma que cuando quites la coordenada j les apliques las fórmulas de correlación cada vez como te indico en el código
(te puedes ahorrar el std:: si estas usando using namespace std;):

 
Código
  1. std::vector<int>x0;//para no perder los vectores originales ...
  2.  std::vector<int>y0;//... al quitar una coordenada
  3. x=x0;
  4. y=y0;
  5.  int i,j;
  6. //ahora sin la componente j
  7.  for ( j=0;j<x.size();j++){
  8.    x.erase (x.begin()+j);
  9.    y.erase (y.begin()+j);
  10.    std::cout << '\n';
  11.    //para que lo veas sin la componente j
  12.    for ( i=0;i<x.size();i++)
  13.      std::cout << ' ' << x[i];
  14.    std::cout << '\n';
  15.    for ( i=0;i<y.size();i++)//para que lo veas sin la componente j
  16.      std::cout << ' ' << y[i];
  17.    std::cout << '\n';system ("pause");
  18.    //aqui viene el estudio de la correlacion de x e y sin la componente j
  19.    //y vas guardando en una variable ej. "menor" la menor diferencia de x e y
  20.    //que sobreentiendo que es el coeficiente de correlación muestral de Pearson
  21.    //y en otra variable ej. "menor_j" el índice correspondiente
  22.    x=x0;//Aquí reinicio x e y con los valores originales y le quito la siguiente componente
  23.    y=y0;
  24.  }
Si hay alguna duda, no dudes en exponerla.
Saluditos!.
« Última modificación: 29 Enero 2013, 15:33 pm por leosansan » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Coordenada de imagen
Programación Visual Basic
hannah 0 1,225 Último mensaje 15 Noviembre 2008, 19:11 pm
por hannah
¿como obtener el angulo de una coordenada? VB 6.0
Programación Visual Basic
AlxSpy 4 9,222 Último mensaje 16 Mayo 2011, 20:15 pm
por BlackZeroX
Como ubicar está coordenada con GoogleMaps...
Foro Libre
Shell Root 4 4,202 Último mensaje 17 Junio 2011, 00:55 am
por dantemc
Problema al capturar la coordenada dinamica en Google Maps API v3 ?
Desarrollo Web
Sumerio 0 3,231 Último mensaje 22 Julio 2012, 07:32 am
por Sumerio
Como econtrar coordenada de un pixel editor Hexadecimal
Ingeniería Inversa
Jnl 3 4,388 Último mensaje 23 Julio 2012, 16:07 pm
por karmany
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines