Página 1 de 2 12 ÚltimoÚltimo
Resultados 1 al 8 de 13

duda procedimientos en pascal

Esta es una discusión para el tema duda procedimientos en pascal en el foro Programación, bajo la categoría Webmasters y Programadores; Hola de nuevo!! Estaba haciendo unos ejercicios porque ando muy perdida con los vectores, procedimientos, registros y cadenas (que desastre soy ehh!!), y bueno, mirando ejercicios resueltos ando entendiendo un ...
Página: 1


  1. #1
    Expertos HijackThis Avatar de Vera

    Fecha de ingreso
    10 jul, 06
    Ubicación
    Madrid (España)
    Mensajes
    2,752

    duda procedimientos en pascal

    Hola de nuevo!!

    Estaba haciendo unos ejercicios porque ando muy perdida con los vectores, procedimientos, registros y cadenas (que desastre soy ehh!!), y bueno, mirando ejercicios resueltos ando entendiendo un poco, pero tengo una duda con los procedimientos. Por ejemplo, intento hacer un programa que te cuente cuantos digitos se repiten en un numero dado, lo estoy intentando hacer con vectores, pero cuando pongo el procedimiento para leer el numero e intento probar por si me funciona el procedimiento me da un error de procedimiento, no se como se pone exactamente para que no me de el error. Bueno, aqui esta el codigo y a ver si me podeis ayudar para que no me de fallo en el procedimiento.

    Código:
    program ejercicio2;
    
    const
         N=10;
    
    type
        vector1=array[1..N] of integer;
    var
       vector:vector1;
    procedure solicitardatos(var solicitar:vector);
    var
       c:integer;
    begin
    writeln('Dame un numero y te dire cuantas veces se repiten los numeros');
    for c:=1 to N do
        solicitar[c]:=solicitar[c]+1;
    end;
    begin
    solicitardatos(solicitar);
    end.
    Gracias!!

    Un saludo.

     
     
  2. #2
    Colaborador

    Fecha de ingreso
    30 ago, 06
    Ubicación
    Aragón
    Mensajes
    1,046
    ¡Hola Vera!

    ¿Qué tal, cómo va todo? Uff he trabajado muy poco con Pascal, y hace tiempo ya, bueno en realidad no he trabajado nunca directamente con él, lo aprendí para ayudar a mi pareja con una asignatura de programación :P. Además siempre me ha parecido un lenguaje muy... no sé, supongo que la palabra es cutre, pero si es el que te ha tocado... Voy a descargarme un compilador que me sirva y miro a ver, ¿qué error te indica?

    Saludos.

     
     
  3. #3
    Colaborador

    Fecha de ingreso
    30 ago, 06
    Ubicación
    Aragón
    Mensajes
    1,046
    Uy, igual no hace falta compilador. Estaba arreglando un poco el código y... ¿qué se supone que es la supuesta variable "solicitar" que le pasas al procedimiento en la llamada? Esa variable no existe, imagino que lo que quieres pasarle es vector1, ¿no es así?

    Por cierto, ya que te digo que lo he visto arreglando el código, como crítica constructiva, deberías intentar escribir el código con un buen formato siempre, es mucho más útil de lo que pueda parecer a primera vista .

    Saludos.

     
     
  4. #4
    Expertos HijackThis Avatar de Vera

    Fecha de ingreso
    10 jul, 06
    Ubicación
    Madrid (España)
    Mensajes
    2,752
    Hola Aitor!! Muchas gracias por tu respuesta y encantada de leerte!!:)
    Lo primero pedirte disculpas a ti y al foro por tardar tanto en responder, estuve de examenes y se me olvido por completo de que tenia puesta una dudilla por aqui jeje.

    Respecto a lo que dices sobre el lenguaje, estoy de acuerdo contigo, pero lo estamos estudiando para tener una base en la programacion y luego meternos en otros lenguajes. De todas formas ya hemos terminado con el, pero tengo que aprobar el examen de junio.

    Respecto al error, me dice varios:

    project1.lpr(10,46) Error: Type identifier expected
    project1.lpr(16,15) Error: Illegal qualifier
    project1.lpr(16,29) Error: Illegal qualifier
    project1.lpr(19,25) Error: Identifier not found "solicitar"
    project1.lpr(21) Fatal: There were 4 errors compiling module, stopping
    Mi duda es sobre precisamente los procedimientos, nunca se como ponerlos de la forma correcta, siempre me da algun error, no solo en este codigo, si no tambien en los demas programas que intente hacer. Cuando esoy mirando los apuntes y en internet como se pone, mas o menos es la misma estructura que yo sigo, pero siempre me da error, lo probe de mil formas diferentes y nunca me sale.
    A ver si me podrias indicar mas o menos en el codigo que es lo que tengo que poner al final para que me lea sin errores el "procedure".

    Y gracias por la critica, no eres el primero que me lo dice jeje.

    Bueno, muchas gracias, un saludo!!

    PD: Por si te interesa, estoy estudiando Ingenieria de Computadores.

     
     
  5. #5
    Colaborador

    Fecha de ingreso
    30 ago, 06
    Ubicación
    Aragón
    Mensajes
    1,046
    Hola de nuevo Vera.

    Por mi parte no te preocupes, yo intenté contestar rápido por si te podía servir y ayudarte en algo, pero bueno cada uno contesta cuando puede. Yo también estoy de exámenes así que te entiendo. Y por el foro pues no creo que se haya enfadado .

    Lo que te dice el compilador es de ayuda, pero no dice mucho sin ver a la vez el código para el que da esos errores, y lo que hay escrito en las líneas que indica. Haz una cosilla: coge cualquier código que tengas (si es posible más o menos bien formateado :P) de los que te den los errores típicos que te ocurren, intenta compilarlo, y postea tanto el código (igual que lo tienes, que las líneas cuadren) como la salida del compilador y lo miramos. Ah y dime qué compilador utilizas, porque por lo que he trabajado con Pascal tengo visto que hay compiladores que dan muchos problemas, y algunas órdenes funcionan de una manera u otra o tienen distintos formatos según el compilador que utilices (por eso mismo, aunque quizá no sean muchos los casos, como sí suelen ser órdenes frecuentes, considero que es un lenguaje bastante poco práctico para aprender).

    Posteas eso, me dices el compilador, y con el mismo compilador compruebo yo todo y te digo los problemas que encuentre lo antes posible.

    Una sugerencia antes de tener lo que te pido y poder comprobar mejor. Acostúmbrate a leer atentamente los mensajes de error del compilador, asegurarte de que entiendes perfectamente lo que quieren decir, y pensar por qué puede ser que digan eso antes de buscar errores a lo loco o pensar que has hecho mal cosas. Te lo digo porque los errores que pones no parecen tener mucho que ver con la forma en que implementas los procedimientos, quizá estás buscando el fallo donde no lo tienes. Muy buenas opciones si no sabes muy bien que pensar de algún mensaje de error o no sabes a qué se refiere son recurrir a la documentación técnica del compilador y buscar información sobre el tema (la opción ideal, pero lenta) y buscar en un buscador el mensaje de error que te da el compilador para ver si encuentras soluciones de otra gente o información sobre el problema (la típica que todos usamos como primera opción por rapidez).

    Bueno no te meto más rollo, que parezco un profesor jaja. Postea eso y lo miramos. Ah y ya me habías comentado que querías estudiar eso, me alegro mucho de que ya estés con ello .

    Un saludo.

     
     
  6. #6
    Expertos HijackThis Avatar de Vera

    Fecha de ingreso
    10 jul, 06
    Ubicación
    Madrid (España)
    Mensajes
    2,752
    Bueno, muchas gracias Aitor , ahora mismo me tengo que ir pero esta noche si vuelvo pronto o mañana posteo lo que me dices.
    Por cierto, el programa que uso es Lazarus:
    Lazarus

    Un saludo,
    Vera.

     
     
  7. #7
    Expertos HijackThis Avatar de Vera

    Fecha de ingreso
    10 jul, 06
    Ubicación
    Madrid (España)
    Mensajes
    2,752
    Hola de nuevo, Aitor, y disculpa de nuevo la tardanza.

    Respecto lo que me comentas, no entiendo muy bien lo que pides, ya que el codigo y el error que me sale en el compilador te los he posteado en los posts anteriores, pero igualmente cuelgo una foto para que mas o menos veas donde me lo indica:

    foto

    Por cierto aprovecho para preguntarte si la forma que pongo el vector en el bucle "for" es la correcta porque no se porque me suena un poco mal.

    De todas formas de momento no tengo mas codigos, ya que hemos empezado con C, y de momento he dejado Pascal de lado, aunque tampoco lo quiero dejar mucho porque luego me pilla el toro.

    Tambien te pongo un codigo del procedure (este no me da problemas) sacado de un trozo de programa que nos mandaron hacer. Si ves que sobra alguna cosilla no te preocupes, ya que detras de ese cachito de codigo viene un programa largo :) :

    Código:
    program entregarPEC2;
    const
    m=6; {numero escaleras}
    n=6; {escalones totales}
    k=9; {escalones que hay que recorrer}
    type
    tipoescalera=array[1..n,1..m] of char;
    var
    npeldano, cont, x, y, cuenta: integer;
    sentido:char;
    escalera:tipoescalera;
    cadena:string[5];
    
    
    procedure posinicial(var a, b:integer);{indica donde empieza }
    
    
    begin
    repeat
    writeln('Dame la posicion inicial de la canica (entre 1 y ',m,')');     {pide el peldaño}
    readln(a);
    until (a>=1) and (a<=m);
    repeat
    writeln('Dame la escalera incial (entre 1 y ',n,')');
    readln(b);                                                              {escalera iniciar}
    until (b>=1) and (b<=n);
    end;
    
    begin
    x:=0;
    y:=0;
    posinicial(x,y); {x=peldaños, y=escalera}
    end.
    Disculpa, pero tambien esta mal estructurado jaja.

    Muchas gracias,

    Un saludo,
    Vera.

     
     
  8. #8
    Colaborador

    Fecha de ingreso
    30 ago, 06
    Ubicación
    Aragón
    Mensajes
    1,046
    Así me gusta, con C ya es otra cosa, que Pascal ni qué leches, ahora es cuando aprenderás cosas útiles :).

    A ver, en un ratico ahora lo miro a ver qué pasa, te pedía el código porque pensaba que era otro distinto, pero bueno así con el código de nuevo y la foto está muy bien.

    En cuanto pueda me paso otra vez y te digo lo que vea.

    Un saludo.

     
     
Página 1 de 2 12 ÚltimoÚltimo

Temas similares

  1. Procedimientos en Logs de HijackThis
    Por Kbite en el foro Logs HijackThis
    Respuestas: 6
    Último mensaje: 11/03/2012, 17:38
  2. Duda Lazarus (pascal)
    Por Vera en el foro Programación
    Respuestas: 3
    Último mensaje: 14/10/2011, 01:03
  3. Procedimientos en Logs de HijackThis
    Por PIPI 40 en el foro Logs HijackThis
    Respuestas: 21
    Último mensaje: 03/07/2011, 10:31
  4. Procedimientos en Logs de HijackThis
    Por politravieso en el foro Logs HijackThis
    Respuestas: 1
    Último mensaje: 11/06/2011, 11:18
  5. Pascal!!
    Por Ruselan en el foro Programación
    Respuestas: 7
    Último mensaje: 05/10/2006, 01:38

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •