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 23-08-2008
tsue tsue is offline
Registrado
 
Registrado: ago 2008
Posts: 8
Poder: 0
tsue Va por buen camino
programa sumador

hola, me encargaron una tarea y la verdad no se mucho de programacion y ando desesperado si alguien me puediera ayudar.
esto es lo que tengo que hacer
como hacer un programa que calcule la media aritmetica entre el 10 y el 50 con do while y con solamente while
nota:la media aritmetica es la suma de los numeros entre el 10 y el 50 ejem 10+11+12+13.... +50
Responder Con Cita
  #2  
Antiguo 23-08-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Bienvenido al club.
Normalmente lo que se hace en el club es tratar de ayudar, eso quiere decir que también normalmente no hacemos la tarea.
Lo que te aconsejo es que nos des algo, lo que sea, pero algo del código que tengas y de ahí en adelante podremos ayudarte, pero sin hacer nosotros la tarea, después de todo si nosotros te hacemos la tarea no creo que te ayudemos, mas bien te perjudicamos.
Código Delphi [-]
while tsue.Tarea do
ayudamos
Por cierto, estará bien así maestros?.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #3  
Antiguo 23-08-2008
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Código Delphi [-]
var escuela, tarea, aplazo: Cardinal;
begin
 aplazo := 0;
 escuela := 10; // ReadLn(escuela);
 tarea := 50; // ReadLn(tarea);
 repeat Inc(aplazo, escuela);
  Inc(escuela);  
 until escuela > tarea;
 WriteLn(aplazo);
 
//...

Código Delphi [-]
 while escuela <= tarea do
  begin
   Inc(aplazo, escuela);
   Inc(escuela);  
  end;

Edito; EPA, no me di cuenta que respondiste Caral, que cuentas? yo pase un ratico por acá a hacer mi homework si no "papá pega photo"
__________________
RTFM > STFW > Foro > Truco > Post > cHackAll > KeBugCheckEx

Última edición por cHackAll fecha: 23-08-2008 a las 03:09:46.
Responder Con Cita
  #4  
Antiguo 23-08-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Me alegra verte igualmente, como siempre amigo.
Ah, ya hiciste la tarea
Saludos
__________________
Siempre Novato
Responder Con Cita
  #5  
Antiguo 23-08-2008
Robert01 Robert01 is offline
Miembro
 
Registrado: feb 2006
Ubicación: Córdoba, Argentina
Posts: 895
Poder: 19
Robert01 Va por buen camino
Cita:
Empezado por tsue Ver Mensaje
nota:la media aritmetica es la suma de los numeros entre el 10 y el 50 ejem 10+11+12+13.... +50
¡Jamás había leido algo semejante!

Saludos
Responder Con Cita
  #6  
Antiguo 23-08-2008
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino

según yo (y la wiki) la media aritmética es un promedio de un conjunto de datos y no la suma de los números entre uno y otro...

__________________


Última edición por ContraVeneno fecha: 23-08-2008 a las 16:18:43.
Responder Con Cita
  #7  
Antiguo 23-08-2008
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cita:
Empezado por ContraVeneno Ver Mensaje

según yo (y la wiki) la media aritmética es un promedio de un conjunto de datos y no la suma de los números entre uno y otro...

No me vayan a decir que hice mal la tarea
__________________
RTFM > STFW > Foro > Truco > Post > cHackAll > KeBugCheckEx
Responder Con Cita
  #8  
Antiguo 23-08-2008
Avatar de eduarcol
[eduarcol] eduarcol is offline
Miembro Premium
 
Registrado: ago 2003
Ubicación: En los estados Zulia y Merida de Venezuela
Posts: 4.151
Poder: 25
eduarcol Va por buen camino
Cita:
Empezado por cHackAll Ver Mensaje
No me vayan a decir que hice mal la tarea
es que la tarea te quedo bien, pero el problema es que el alumno no entendio la clase
__________________
...Yo naci en esta ribera del arauca vibr@d0r
Soy hermano de la espuma,
de la garza, de la rosa y del sol...
Viva Venezuela
Responder Con Cita
  #9  
Antiguo 23-08-2008
tsue tsue is offline
Registrado
 
Registrado: ago 2008
Posts: 8
Poder: 0
tsue Va por buen camino
Cita:
Empezado por cHackAll Ver Mensaje
Código Delphi [-]var escuela, tarea, aplazo: Cardinal;
begin aplazo := 0; escuela := 10; // ReadLn(escuela);
tarea := 50; // ReadLn(tarea);
repeat Inc(aplazo, escuela);
Inc(escuela);
until escuela > tarea;
WriteLn(aplazo);

//...


Código Delphi [-] while escuela <= tarea do begin Inc(aplazo, escuela); Inc(escuela); end;


Edito; EPA, no me di cuenta que respondiste Caral, que cuentas? yo pase un ratico por acá a hacer mi homework si no "papá pega photo"

oye muchas gracias por la ayuda pero no puedo acer que me corra bien tengo esto como codigo

Código Delphi [-]
var ninicial, nfinal, aplazo: Cardinal;
procedure TForm1.Button1Click(Sender: TObject);
begin
 aplazo := 0;
 ninicial := 10; // ReadLn(escuela);
 nfinal := 50; // ReadLn(tarea);
 repeat Inc(aplazo, ninicial);
  Inc(ninicial);
 until ninicial > nfinal;
 Application.MessageBox(aplazo,'titulo') ;
//WriteLn(aplazo);


ha, porcierto me falto agregar que la media aritmetica es la suma de los numeros dividida entre la cantidad de numeros que hay (osea el promedio)
ha tmb para caral si voy ha acer lo ke me digiste con respecto a la ayuda lo ke pasa es k ando desesperado con esta tarea me puse a estudiar delphi para ver si asi podia comprender algo.
Responder Con Cita
  #10  
Antiguo 23-08-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Hola tsue,
Bienvenido a ClubDelphi.

Como eres nuevo, te invito a que dediques unos minutos a leer la guia de estilo.

Con respecto a la situación que se ha dado debo decirte que aquí ninguno hará tu tarea. Lo que sería oportuno es que nos indicases que estuviste probando, como y que conseguiste hasta ahora.

Algo fundamental ¿Como ingresas los datos? Necesitamos conocer más de tus avances y como estás llevando a cabo tu tarea. De este modo si te podremos ayudar.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #11  
Antiguo 23-08-2008
tsue tsue is offline
Registrado
 
Registrado: ago 2008
Posts: 8
Poder: 0
tsue Va por buen camino
hola, si ya se que nadie va a ser mi tarea, deecho asta me puse a buscar informacion y a estudiar delphi y cambie algunas palabras y agregue un message box nomas que todavia no entiendo algunas cosas como por ejemplo kiero ke me muestre en el message box que puse lo que es la parte de aplazo pero no estoy muy seguro de como. no es para que te ofendas pero siento que ya estoy poniendolo como debiera para poder recibir ayuda, pero si no, hasmelo saber en que estoy poniendo mal
Responder Con Cita
  #12  
Antiguo 23-08-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Cita:
Empezado por tsue Ver Mensaje
hola, si ya se que nadie va a ser mi tarea, deecho asta me puse a buscar informacion y a estudiar delphi y cambie algunas palabras y agregue un message box nomas que todavia no entiendo algunas cosas como por ejemplo kiero ke me muestre en el message box que puse lo que es la parte de aplazo pero no estoy muy seguro de como. no es para que te ofendas pero siento que ya estoy poniendolo como debiera para poder recibir ayuda, pero si no, hasmelo saber en que estoy poniendo mal
tsue, no es por ser malo... pero veo que estás muy perdido.

El código de muestra del compañero cHackAll no realiza la media aritmética. Simplementa incrementa una variable con el valor de otra hasta que supere un determinado valor (o variable, como es en este caso).

Para mostrar el contenido hay muchas maneras.
La más básica es ShowMessage(), por ahora es la que te aconsejo. Pero resulta ser que el parámetro que espera ShowMessage() es de tipo string, por tanto hay que convertir el tipo empleado a string.
Si es integer se usa IntToStr() si es real FloatToStr().

Repito nuevamente lo que te he dicho antes: sin conocer tus avances no te sabremos ayudar. Es necesario que nos indiques como estás trabajando.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #13  
Antiguo 23-08-2008
tsue tsue is offline
Registrado
 
Registrado: ago 2008
Posts: 8
Poder: 0
tsue Va por buen camino
hola, bueno gracias por la ayuda.
me he dado cuenta con lo que acabas de poner que no se casi nada

"Pero resulta ser que el parámetro que espera ShowMessage() es de tipo string, por tanto hay que convertir el tipo empleado a string.
Si es integer se usa IntToStr() si es real FloatToStr()."

bueno, si sabia que el programa que me ayudaban no hacia la media aritmetica pero no estoy seguro si realiza la suma de los numeros por eso queria que me mostrara en el mensaje el valor final para ver si era la suma y ya despues buscar algo con que dividirla etre el numero de datos que hay

bueno con respecto a conocer mis avances creo que te refieres a esto

Código Delphi [-]
var ninicial, nfinal, aplazo: Cardinal;
procedure TForm1.Button1Click(Sender: TObject);
begin
 aplazo := 0;
 ninicial := 10; // ReadLn(escuela);
 nfinal := 50; // ReadLn(tarea);
 repeat Inc(aplazo, ninicial);
  Inc(ninicial);
 until ninicial > nfinal;
 Application.MessageBox(aplazo,'media aritmetca10-50') ;

lo que intento acer es que aga la suma del 10 asta el 50 y luego que los divida entre el numero que son (si es esa la media aritmetica verdad)
Responder Con Cita
  #14  
Antiguo 23-08-2008
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cita:
Empezado por Delphius Ver Mensaje
...El código de muestra del compañero cHackAll no realiza la media aritmética...
Disculpe profesor, ahora como va la cosa?

Código Delphi [-]
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:
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
 ShowMessage(IntToStr(MediaUntil(8, 20)));
end;
__________________
RTFM > STFW > Foro > Truco > Post > cHackAll > KeBugCheckEx
Responder Con Cita
  #15  
Antiguo 23-08-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
Delphius Va camino a la fama
Sugiero que leas un poco la ayuda sobre Application.MessageBox(), lo estás usando mal. Por empezar recibe muchos parámetros y te va enrredar más.
Te he sugerido que para comenzar el ShowMessage. Es sencillo. Un ejemplo:

Código Delphi [-]
ShowMessage('el valor a mostrar es : ' + IntToStr(50)); 
ShowMessage('el valor a mostrar es : ' + IntToStr(valor)); // valor es una variable

Sugiero que nombres a la variable aplazo de un mejor modo... ¿porqué no total? Se entiende mejor.

Veamos, como te explico la cosa sin hacerte la tarea:

1. Pedir valor inicial, guardar en la variable inicial
2. Pedir valor final, guardar en la variable final
3. Hacer que total sea cero
4. Hacer que cantidad sea cero
5. Mientras inicial sea menor a final hacer:
5.1. incrementar el total con el inicial
5.2. incrementar cantidad en 1
5.3. incrementar inicial en 1
6. dividir total con cantidad y guardarlo en promedio
7. Mostrar promedio

¿Ahora se entiende?

Tu problema es que en ningún momento llevas la cuenta de iteraciones.
Ahora es tu turno traducir esto. Intentalo.

Saludos,
__________________
Delphius
[Guia de estilo][Buscar]
Responder Con Cita
  #16  
Antiguo 23-08-2008
Avatar de Delphius
[Delphius] Delphius is offline
Miembro Premium
 
Registrado: jul 2004
Ubicación: Salta, Argentina
Posts: 5.582
Poder: 25
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
  #17  
Antiguo 23-08-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
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
  #18  
Antiguo 23-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
Sugiero que leas un poco la ayuda sobre Application.MessageBox(), lo estás usando mal. Por empezar recibe muchos parámetros y te va enrredar más.
Te he sugerido que para comenzar el ShowMessage. Es sencillo. Un ejemplo:

Código Delphi [-]ShowMessage('el valor a mostrar es : ' + IntToStr(50));
ShowMessage('el valor a mostrar es : ' + IntToStr(valor)); // valor es una variable


Sugiero que nombres a la variable aplazo de un mejor modo... ¿porqué no total? Se entiende mejor.

Veamos, como te explico la cosa sin hacerte la tarea:

1. Pedir valor inicial, guardar en la variable inicial
2. Pedir valor final, guardar en la variable final
3. Hacer que total sea cero
4. Hacer que cantidad sea cero
5. Mientras inicial sea menor a final hacer:
5.1. incrementar el total con el inicial
5.2. incrementar cantidad en 1
5.3. incrementar inicial en 1
6. dividir total con cantidad y guardarlo en promedio
7. Mostrar promedio

¿Ahora se entiende?

Tu problema es que en ningún momento llevas la cuenta de iteraciones.
Ahora es tu turno traducir esto. Intentalo.

Saludos,
ok creo k ya te entendi con lo de ShowMessage para mostrar un numero hay k poner into string(numero) (Inttostr(50))

si estoy bien ya nomas me falta traducir lo de mas
Responder Con Cita
  #19  
Antiguo 23-08-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
La verdad no se a donde va todo esto, lo que creo que se necesita es hacer un ciclo con while.
Alguien me explica donde esta la ciencia?.
Saludos
Pd: pregunta de Novato
__________________
Siempre Novato
Responder Con Cita
  #20  
Antiguo 23-08-2008
Avatar de cHackAll
[cHackAll] cHackAll is offline
Baneado?
 
Registrado: oct 2006
Posts: 2.159
Poder: 20
cHackAll Va por buen camino
Cita:
Empezado por Caral Ver Mensaje
...Alguien me explica donde esta la ciencia?...
Claro, la ciencia está en entender que sucede con el teclado de tsue que de rato en rato no le funcionan algunas teclas
__________________
RTFM > STFW > Foro > Truco > Post > cHackAll > KeBugCheckEx
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 19:31:06.


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