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

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 19-05-2015
franco_cvm franco_cvm is offline
Miembro
NULL
 
Registrado: abr 2015
Posts: 20
Poder: 0
franco_cvm Va por buen camino
[Delphi] ejercicio de procedimientos y funciones.

necesitaría su ayuda con un ejercicio del practico, que verdaderamente no entiendo, dice:

crear un procedimiento que tenga dos parámetros o argumentos en la lista de llamada: un parámetro que pasa por valor y corresponde con el valor de n y otro parámetro que pasa por referencia, en el cual se carga el valor calculado de n!. analizar los efectos secundarios o colaterales de usar este procedimiento en vez de usar la función anterior.

cuando dice la funcion anterior, se refiere a esta:

Código Delphi [-]
function factorial (n:integer):integer;
var
i,f:integer;
begin
f:=1;
for i:= 2 to n do
f:=f*i;
factorial:=f;
end;

o a esta:
Código Delphi [-]
function factorial (n:integer):integer;
begin
if n<= 1 then
factorial:=1
else factorial:=n*factorial(n-1);
end;

el procedimiento que me pide el ejrcicio( esta mal seguro):

Código Delphi [-]
procedure factorial(n:integer;var n1:integer);
begin
n:=StrToInt(edit1.text);
if n<=1 then
begin
factorial:=1;
n1:=factorial;
end;
if n>1 then
begin
factorial:=n*factorial(n-1);
n1:=factorial;
end;
end;
Responder Con Cita
  #2  
Antiguo 19-05-2015
franco_cvm franco_cvm is offline
Miembro
NULL
 
Registrado: abr 2015
Posts: 20
Poder: 0
franco_cvm Va por buen camino
[delphi] visibilidad y alcance de identificadores

el ejercicio pide determinar que variables y parametros son visibles desde la funcion p, el procedimiento q y el procedimiento test. y en que orden se imprimira en memo1.

el ejercicio:

Código Delphi [-]
procedure test;
var
 x,y,z:integer;
 
 function q(var y:integer):integer;
 var
  x:integer;
 begin
  x:=8;
  y:=y+1;
  memo1.lines.add(y);
  q:=y+x;
 end;
 procedure p(x:integer; var y:integer);
 begin
  y:=2;
  z:=x+y;
  memo1.lines.add(z);
  memo1.lines.add(q(z));
  memo1.lines.add(z);
 end;

begin
 x:=1;
 y:=3;
 z:=20;
 p(x,y);
 memo1.lines.add(x,' ',y,' ',z)
end.
Responder Con Cita
  #3  
Antiguo 19-05-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Y tú qué opinas?
Responder Con Cita
  #4  
Antiguo 19-05-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Y no repitas hilos, gracias

Te recuerdo nuestras normas.



.
Responder Con Cita
  #5  
Antiguo 19-05-2015
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
franco_cvm,

Cita:
Empezado por franco_cvm
...procedimientos y funciones...visibilidad y alcance de identificadores...


Revisa esta información:
Espero sea útil

Nelson.
Responder Con Cita
  #6  
Antiguo 19-05-2015
franco_cvm franco_cvm is offline
Miembro
NULL
 
Registrado: abr 2015
Posts: 20
Poder: 0
franco_cvm Va por buen camino
¿que hilo repetí?
Responder Con Cita
  #7  
Antiguo 20-05-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Con repetir, me refería a repetir preguntas del tipo: "hacedme estos ejercicios".
Los hilos en sí, no estaban repetidos, sino la temática y la forma de realizar las preguntas, que no son válidas según las normas de los foros, no está bien que vengas a decir: "Tengo estos ejercicios, dadme una solución", eso demuestra poco interés por tu parte en esforzarte por aprender.
Saludos.
Responder Con Cita
  #8  
Antiguo 20-05-2015
franco_cvm franco_cvm is offline
Miembro
NULL
 
Registrado: abr 2015
Posts: 20
Poder: 0
franco_cvm Va por buen camino
podría ser este el código que busco??? con respecto a lo de visibilidad y alcance no logro hacerlo.

Código Delphi [-]
procedure factorial(n:integer;var res:integer);
var
i,a:integer;
begin
if n<=1 then
res:=1
else
begin
a:=1;
for i:=1 to n do
a:=a*(i);
res:=a;
end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
a,res:integer;
begin
a:=StrToInt(edit1.Text);
factorial(a,res);
showmessage(IntToStr(res));
end;
Responder Con Cita
  #9  
Antiguo 20-05-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por franco_cvm Ver Mensaje
podría ser este el código que busco??? con respecto a lo de visibilidad y alcance no logro hacerlo.
Es que no se trata de "hacer", sino de "saber".
Para saber la respuesta a tu pregunta, con los enlaces que te ha pasado nlsgarcia tienes más que suficiente porque está explicado perfectamente.
Obviamente, tienes que leerlos.
Responder Con Cita
  #10  
Antiguo 20-05-2015
franco_cvm franco_cvm is offline
Miembro
NULL
 
Registrado: abr 2015
Posts: 20
Poder: 0
franco_cvm Va por buen camino
están todos en ingles
Responder Con Cita
  #11  
Antiguo 20-05-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Y Delphi también está todo en inglés

De todas formas, en nuestro FTP encontrarás gigas de información, libros completos, etc. donde aprender todo lo que se te pase por la cabeza sobre delphi.
Te aconsejo este libro, es uno de los mejores que encontrarás, y es gratis.

Por cierto, he seguido algunos de los enlaces y hay bastantes en español.

Última edición por Casimiro Notevi fecha: 20-05-2015 a las 15:17:15.
Responder Con Cita
  #12  
Antiguo 20-05-2015
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
franco, la verdad es que si estás estudiando esto es para aprender, no para que te lo den hecho.

Buscar, echarle horas y entender las preguntas que te hacen, forma parte del aprendizaje. El truco está en no dejar de pelearte hasta estar seguro de todo, de lo que preguntan y de lo que has hecho.

Algunas preguntas no se entienden hasta que has indagado por tu cuenta y llevas varias horas/días con ello.

Te pongo un ejemplo real: Nos pidieron hacer una práctica en la Universidad con rutinas para administrar una agenda:
- crear citas
- mover citas
- eliminar citas

Cada rutina las pedía con parámetros distintos, en total unas 10 funciones.

Una vez terminada todas las rutinas, corregidos los errores, etc. Me pongo a darle una vuelta de tuerca y leo de nuevo todas las especificaciones y las rutinas que nos pedían... pues resultó que solo había que implementar 3 rutinas nada más, el resto se podía hacer llamando a esas 3 rutinas .Había echado 2 tardes en las 10 funciones, cada una con su código, cuando en realidad se podía hacer en 30 minutos la práctica completa.

Después de entregar la memoria lo comenté con los compañeros y me ponían de loco, no se podía hacer con 3 funciones nada más.

Moraleja: Cuando algo esté terminado, es cuando debes volver al inicio y repensarlo todo.

Si no entiendes la pregunta, es que no tienes los conocimientos necesarios para entenderla, por lo que tienes que esforzarte más que otro.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #13  
Antiguo 20-05-2015
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.257
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Lepe Ver Mensaje
Moraleja: Cuando algo esté terminado, es cuando debes volver al inicio y repensarlo todo.
Si no entiendes la pregunta, es que no tienes los conocimientos necesarios para entenderla, por lo que tienes que esforzarte más que otro.
Responder Con Cita
  #14  
Antiguo 21-05-2015
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola franco_cvm.
Cita:
Empezado por franco_cvm Ver Mensaje
están todos en ingles
Aunque no debería ser un inconveniente, teniendo a mano traductores como Google Translate, te agrego unos enlaces en la lengua de Cervantes.
Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
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
problema con visibilidad de transacciones Galahad Firebird e Interbase 14 18-12-2008 22:10:34
Desde cuando los identificadores en pascal pueden contener acentos? donald shimoda OOP 31 06-12-2008 01:35:54
Articulo: Atributos de visibilidad en Delphi marceloalegre Varios 4 25-03-2008 17:29:15
Alcance de las Transacciones goduquez Firebird e Interbase 6 12-11-2007 20:11:51
El alcance de las etiquetas dec Trucos 0 01-07-2006 13:18:03


La franja horaria es GMT +2. Ahora son las 01:30:39.


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