Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-01-2005
danytorres danytorres is offline
Miembro
 
Registrado: may 2003
Ubicación: Venezuela. Edo Carabobo
Posts: 361
Poder: 22
danytorres Va por buen camino
Question Como hago este calculo???

Buenas tardes señores de foro, existe una funcion en delphi 7.0 para calcular la desviacion standar y en caso que no existe como calculo un valor elevado a la 2 (X^2)???
__________________
____________________________
Un saludo a todos...
Responder Con Cita
  #2  
Antiguo 19-01-2005
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Te Recomiendo...

Si quieres hacer cálculos te recomiendo que agarres un cálculo hecho por ti mismo manualmente en el cuaderno ya que tengas los pasos, ya puedes implantar el Cálculo en Delphi.

En conclusión haz el análisis de la formula y.... manos a la obra en vez de obra en las manos.

Que tengas buen día.
Responder Con Cita
  #3  
Antiguo 19-01-2005
Avatar de ISKANDAR
ISKANDAR ISKANDAR is offline
Miembro
 
Registrado: jun 2004
Ubicación: Argentina, Latitud 28- Longitud 59 (Resistencia)
Posts: 41
Poder: 0
ISKANDAR Va por buen camino
Arrow

Hola, puedes probar descargar una demo en esta página: http://www.arrakis.es/~sigecom/FreeEspanol.html
Está codificado para Delphi 3/4, pero puedes tomar las porciones de cálculo y adaptarlas muy fácilmente, a Delphi 7.
Espero que te sirva. Saludos.
__________________
El que nada duda, nada sabe.
Guía de Estilo
La Otra Guía de Estilo
Responder Con Cita
  #4  
Antiguo 19-01-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Tienes que añadir la Unit Math

Código Delphi [-]
 
 procedure TForm1.Button1Click(Sender: TObject);
 var
 x,y:integer;
 j:Extended;
 begin
 x:=2;
 y:=3;
 j:=Power(x,y);
 end;

En cuanto a la desviación estandar, también está definida en esta Unit.
{ Standard Deviation (STD): Sqrt(Variance). aka Sample Standard Deviation }
function StdDev(const Data: array of Double): Extended;

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 20-01-2005
Mick Mick is offline
Miembro
 
Registrado: may 2003
Posts: 405
Poder: 22
Mick Va por buen camino
Hombree yo para elevar a 2, me limitaria a multiplicar el valor por si mismo:

resultado= x * x;

que es mas rapido que usar la funcion power.

Saludos
Responder Con Cita
  #6  
Antiguo 20-01-2005
danytorres danytorres is offline
Miembro
 
Registrado: may 2003
Ubicación: Venezuela. Edo Carabobo
Posts: 361
Poder: 22
danytorres Va por buen camino
Question

Disculpen ni falta de conocimiento respecto al uso de esta funcion:

: StdDev(const Data: array of Double):

Me pueden enseñar a usarla, tengo un query con dos columnas en una esta la produccion diaria que es donde quiero aplicar la función de dsviacion estandar, como la aplico????????


Gracias, a quien me pueda ayudar
__________________
____________________________
Un saludo a todos...
Responder Con Cita
  #7  
Antiguo 20-01-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Esto quiere decir que para hallar la desviación estándar con esta función, hay que pasarle una matriz o arreglo de datos de tipo doble "double".

Por lo tanto tendrás que declarar una matriz de tipo doble y luego redimensionarla, con arreglo al número de registros que obtengas en la consulta, luego cargas la matriz mediante un bucle sobre la consulta y para finalizar envías la matriz con los datos a través de la función citada, te devolverá el resultado que tendrás que guardar en una variable de tipo extendido. "extended".

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #8  
Antiguo 20-01-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Al final me ha dado tiempo hasta hacer un ejemplo:

Código Delphi [-]
 
 procedure TForm1.Button1Click(Sender: TObject);
 var
 Numeros: array of double;
 nConta:Integer;
 Desviacion:Extended;
 
 begin
 Query1.Close;
 Query1.Sql.Clear;
 Query1.Sql.Add('Select Busqueda, Total');
 Query1.Sql.Add('From Factura');
 Query1.Sql.Add('Where Total Between 1 And 4');
 
 Query1.Open;
 
 SetLength(Numeros,Query1.RecordCount );
 
   For nConta:=1 to Query1.RecordCount  do
   begin
   Numeros[nConta - 1]:=Query1.Fields[1].Value;
   Query1.Next;
   end;
 
 Desviacion:= StdDev(Numeros);
 ShowMessage(FormatFloat(',0.000',Desviacion));
 end;
Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #9  
Antiguo 20-01-2005
danytorres danytorres is offline
Miembro
 
Registrado: may 2003
Ubicación: Venezuela. Edo Carabobo
Posts: 361
Poder: 22
danytorres Va por buen camino
Question

Mucha gracias marcoszorrilla por enseñarme a calcular la desviacion, pero ahora necesito graficar este valor los 31 dias del mes, la pregunta es como grafico un valor????
__________________
____________________________
Un saludo a todos...
Responder Con Cita
  #10  
Antiguo 20-01-2005
Avatar de AGAG4
AGAG4 AGAG4 is offline
Miembro
 
Registrado: ago 2004
Ubicación: Los Mochis, Sinaloa, México
Posts: 1.420
Poder: 21
AGAG4 Va por buen camino
Disculpa

Quiero dar la disculpa a DanyTorres por el ultimo comentario que puse no lo hice de mala fe si algunos piensan mal, lo que trate de decir es que no es lo mismo ponerse a Buscarle Manualmente haciendo un analisis de lo que queremos que en vez de preocuparnos bien del problema, pero en fin siento que mas de uno se molestaron les pido DISCULPAS....
Que tengan buen día.
Responder Con Cita
  #11  
Antiguo 18-11-2008
[FGarcia] FGarcia is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Cordoba, Veracruz, México
Posts: 1.123
Poder: 20
FGarcia Va por buen camino
Reviviendo a este hilo

Solo para dar las gracias sobre la existencia de la funcion de calculo de desviacion estandar. Tambien dentro de la unidad Mat (delphi 7) existe la funcion MeanAndStdDev.

De la ayuda de Delphi7

Cita:
Calculates the mean and standard deviation of array elements.

Unit
Math

Category
Statistical routines

Delphi syntax:
procedure MeanAndStdDev(const Data: array of Double; var Mean, StdDev: Extended);

C++ syntax:
extern PACKAGE void __fastcall MeanAndStdDev(const double * Data, const int Data_Size, Extended &Mean, Extended &StdDev);

Description
MeanAndStdDev calculates Mean and standard deviation in one pass. Using this is twice as fast as calculating them separately. Precision may be lost when the Mean is very large (> 10e7) or the variance is very small.
Data specifies the data to be summarized. In C++, Data_Size is the index of the last element in the Data array (one less than the number of elements). The mean is returned as Mean and the standard deviation is returned as StdDev.

Note: If the sample size is 1 (that is, if Data contains only one entry), StdDev returns the value of Data[0] and not zero.
¡Me ahorro mucho trabajo! ¡¡Aun hay mucho que encontrar en Delphi!!
__________________
ESTO ES UN FORO ... NO UN MÓVIL
¿Por qué no escribir de una manera comprensible para que los humanos lo podamos entender?
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 11:19:17.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi