Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 23-08-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 28
Delphius Va camino a la fama
Tal vez resulte un tanto pesado el hecho y la manera en que me he dirjido. Mi intención es más mostrar un algoritmo de como proceder y no tanto el código.

El asunto aqui es una cuestión de lógica. El algoritmo que implementa realiza un repeat más le falta hacer dos cosas:
1. llevar un contador de pasadas
2. dividor el total acumulado por dicha cantidad

Por el punto 1 se resuelve facilmente con añadir una nueva variable.

Código Delphi [-]
var cantidad: integer;

Y acumular el valor en donde sea necesario:
Código Delphi [-]
cantidad := cantidad + 1; // O bien...
inc(cantidad);// O bien
inc(cantidad,1);

Al final del ciclo repeat o while (se puede hacer con ambos ciclos) simplemente hacer la división entera (si son enteros).

Código Delphi [-]
promedio := total div cantidad;

En este ejemplo yo hago la división entera entre la variable total y cantidad.
Espero que ahora quede más claro.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #2  
Antiguo 23-08-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 28
Caral Va por buen camino
Hola
Estas seguro amigo?.
No se, algo me falta, por eso te lo pregunto.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 24-08-2008
tsue tsue is offline
Registrado
 
Registrado: ago 2008
Posts: 8
Poder: 0
tsue Va por buen camino
Cita:
Empezado por Delphius Ver Mensaje
Tal vez resulte un tanto pesado el hecho y la manera en que me he dirjido. Mi intención es más mostrar un algoritmo de como proceder y no tanto el código.

El asunto aqui es una cuestión de lógica. El algoritmo que implementa realiza un repeat más le falta hacer dos cosas:
1. llevar un contador de pasadas
2. dividor el total acumulado por dicha cantidad

Por el punto 1 se resuelve facilmente con añadir una nueva variable.

Código Delphi [-]var cantidad: integer;


Y acumular el valor en donde sea necesario:
Código Delphi [-]cantidad := cantidad + 1; // O bien...
inc(cantidad);// O bien
inc(cantidad,1);


Al final del ciclo repeat o while (se puede hacer con ambos ciclos) simplemente hacer la división entera (si son enteros).

Código Delphi [-]promedio := total div cantidad;


En este ejemplo yo hago la división entera entre la variable total y cantidad.
Espero que ahora quede más claro.

Saludos,

hola, oye me intereso mucho el programa de este chavo sobre todo en la parte de

function MediaUntil(a, b: Cardinal): Cardinal;

asm
xchg eax, edx
xchg eax, ecx
xor eax, eax
cmp ecx, edx
jb @Exit
sub ecx, edx
push ecx
@Next:inc edx
add eax, edx
loop @Next
xor edx, edx
pop ecx
div ecx
@Exit:

pero no entiendo lo que kieren decir, estube leyendo en la ayuda de delphi, pero lo malo k esta en ingles, y tmb en wiky pero no encuntro todo muy claro
porcierto cuales son los comandos de suma y divicion
Responder Con Cita
  #4  
Antiguo 25-08-2008
Robert01 Robert01 is offline
Miembro
 
Registrado: feb 2006
Ubicación: Córdoba, Argentina
Posts: 895
Poder: 21
Robert01 Va por buen camino
Cita:
Empezado por tsue Ver Mensaje
hola, oye me intereso mucho el programa de este chavo sobre todo en la parte de

function MediaUntil(a, b: Cardinal): Cardinal;

asm
xchg eax, edx
xchg eax, ecx
xor eax, eax
cmp ecx, edx
jb @Exit
sub ecx, edx
push ecx
@Next:inc edx
add eax, edx
loop @Next
xor edx, edx
pop ecx
div ecx
@Exit:

pero no entiendo lo que kieren decir, estube leyendo en la ayuda de delphi, pero lo malo k esta en ingles, y tmb en wiky pero no encuntro todo muy claro
porcierto cuales son los comandos de suma y divicion
Con respecto a la respuesta de ChackAll:

El dice que no tiene la obligación de escribir código bonito y que quiso depertar la curiosidad del muchacho pero lo que si despertó fue la confusión, está claro ahí arriba.

Dice que no tiene la obligación de hacerle las cosas a nadie pero si nadie le había pedido que se las hiciera.

Yo solamente dije que me parecía confuso el nombre de las variables, es una opinión nada más, ¿no se puede criticar porque hay alguno que lo toma como agresión?

Saludos
Responder Con Cita
  #5  
Antiguo 25-08-2008
Avatar de Ñuño Martínez
Ñuño Martínez Ñuño Martínez is offline
Moderador
 
Registrado: jul 2006
Ubicación: Ciudad Catedral, Españistán
Posts: 6.025
Poder: 28
Ñuño Martínez Tiene un aura espectacularÑuño Martínez Tiene un aura espectacular
¡Qué malvadosos son, apañeros! El/La pobre tsue se está haciendo un lío morrocotudo. Como sigan así vamos a perder un adepto. ¡Un poco de seriedad, por favor! ¿Acaso no somos profesionales? ¿Acaso no nos encontramos, hace tiempo, en su misma situación? ¿Y los niños? ¿Por qué nadie piensa nunca en los niños?

[off-topic]1999.... 1999... ¿qué hago? ¿Sucumbo al síndrome de Al?
Responder Con Cita
  #6  
Antiguo 25-08-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.740
Poder: 26
ContraVeneno Va por buen camino
Vamos a ver... si estás usando delphi:
En tu formulario colocas dos cajas de texto (Tedit) que vienen en la paleta standar. Al primero le llamaremos edtValorInical y al segundo edtValorFinal.

Además de esos dos TEdits, colocamos un botón y luego le das doble click a ese botón y Delphi te llevará al evento OnClick del mismo.

Ahí, la idea es hacer lo siguiente:

Código:
Variables: Contador, Sumatoria: Entero
              ValorInicial, ValorFinal: Entero
              Promedio: Real
Inicio
 Contador = 0
 Sumatoria = 0
 Promedio = 0
 ValorInicial = edtValorInicial.Text
 ValorFinal = edtValorFinal.Text
 Mientras ValorInicial <= ValorFinal hacer
  Sumatoria = Sumatoria + ValorInicial
  valorInicial = ValorInicial + 1
  Contador = Contador + 1
 Fin
 Promedio = Sumatoria / Contador;
 Mostrar(Promedio)
Fin
ya, no quería hacerte tu tarea, pero ya la hice, que los dioses del olimpo me perdonen...

yo lo hubiera hecho con un arreglo y usando la función "mean", pero bueno....
__________________


Última edición por ContraVeneno fecha: 25-08-2008 a las 17:58:53.
Responder Con Cita
  #7  
Antiguo 25-08-2008
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Código Delphi [-]
{
  Función para calcular el promedio de los números en un rango dado, usando
  while.
}
function Promedio(ValorInicial, ValorFinal: Integer): Double;
var
  I: Integer;

begin
  I := 0;
  while I > 0 do
    Sleep(0);

  Result := (ValorInicial + ValorFinal) / 2;
end;

// Saludos
Responder Con Cita
  #8  
Antiguo 25-08-2008
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 21
felipe88 Va por buen camino
Cita:
Empezado por roman Ver Mensaje
Código Delphi [-]
{   Función para calcular el promedio de los números en un rango dado, usando   while. } 
function Promedio(ValorInicial, ValorFinal: Integer): Double; 
var   I: Integer;  
begin   I := 0;   while I > 0 do     
Sleep(0);    
Result := (ValorInicial + ValorFinal) / 2; 
end;


// Saludos
buenisimo...
__________________
Web
Responder Con Cita
  #9  
Antiguo 25-08-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.740
Poder: 26
ContraVeneno Va por buen camino
Cita:
Empezado por roman Ver Mensaje
Código Delphi [-]
{   Función para calcular el promedio de los números en un rango dado, usando   while. } 
function Promedio(ValorInicial, ValorFinal: Integer): Double; 
var   I: Integer;  
begin   
 I := 0;   
 while I > 0 do     
  Sleep(0);    
 Result := (ValorInicial + ValorFinal) / 2; 
end;


// Saludos
¡Eso es abuso de poder! y eso me pasa a mi por pensar como programador....
__________________


Última edición por ContraVeneno fecha: 25-08-2008 a las 18:05:35.
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Con que programa se programa y compila en Java David JAVA 5 15-01-2007 01:41:03
programa para ver en que direccion del registro de windows escribe un programa? JuanErasmo Varios 1 09-11-2006 20:42:05
Lanzar programa desde mi programa Pablo Carlos API de Windows 32 09-09-2004 13:56:26
Ejecutar un programa externo desde un programa de Delphi Roger_Fernandez Varios 3 02-09-2004 18:05:36
Ejecutar un programa DENTRO de otro programa seduerey Varios 8 12-11-2003 13:56:20


La franja horaria es GMT +2. Ahora son las 23:01:51.


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