Programando desde 0: 11- Subrangos y Arreglos lineales. - Página 2
Primer 12

Programando desde 0: 11- Subrangos y Arreglos lineales.

      • 323
      • mensajes
      • miembro desde
      • 07/02/07
    17/08/2012
    #11 Re: Programando desde 0: 11- Subrangos y Arreglos lineales.

    Veamos un ejemplo amigo donde dado un arreglo de enteros y luego un número quiero saber cuantas veces se repite dicho número en el arreglo y también quiero saber la última posición en que aparece. Por ejemplo, si mi arreglo es este

    10 20 30 57 30 41 57

    Me dan el número 30, entonces yo tengo que decir que se repite dos veces y que la última posición en que aparece es la posición número 5.

    Suponiendo entonces que mi variable que contiene al arreglo se llama arreglo y la variable que contiene al número en cuestión se llama numero, necesito además una variable que llamaré ultimaPos para guardar justamente la última posición y además una variable llamada cantidadVeces que guardará la cantidad de veces en que aparece el número en el arreglo:

    Algo importante es que si el número no aparece en el arreglo debo devolver como última posición el valor 0. Bien, el código donde se cargan los valores en el arreglo te lo dejo a tí, veamos la parte de recorrido:

    Código:
    cantidadVeces:=0;
    ultimaPos:= 0;
    FOR i:=1 TO LARGO_ARREGLO DO
    BEGIN
        IF arreglo[i]=numero THEN
        begin
            cantidadVeces:= cantidadVeces + 1;
            ultimaPos:= i;
        end;
    END;
    Espero amigo eso te ayude con tu problema, sino lo veremos diréctamente.
      • 35
      • mensajes
      • miembro desde
      • 04/04/11
    25/08/2012
    #12 Re: Programando desde 0: 11- Subrangos y Arreglos lineales.

    Hola amigo el ejemplo que me dejaste , lo resolví satisfactoriamente y sin complicaciones. Pero sigo sin poder resolver el primer ejercicio de este tema, no logro asimilar como guardar el primer número mayor, guardar su posición y si posteriormente encuentro otro cambiarlo por ese, me enredo en tan solo pensarlo y vaya que ya tengo días intentando resolverlo. Te agradecería lo vieramos más detenidamento o paso a paso, si es conveniente.
    Vlady ten un excelente día. GRACIAS!!!

    Código:
    PROGRAM arregloej1;
    USES crt;
    
    CONST
       N = 5;
    
    VAR
       arr: array[1..N] of integer;
       i, mayor, menor, actual: integer;
       ultimaPos, ultimaPos1: integer;
    
    BEGIN
    clrscr;
    
       ultimaPos := 0;
       ultimaPos1 := 0;
       write('Ingresa ',N,' enteros: ');
    
       read(actual);
    
    
       mayor:= actual;
       menor:= actual;
    
       for i:=1 to N-1 do
         begin
            read(arr[i]);
             if arr[i] > mayor then
                begin
                   mayor := arr[i];
                   ultimaPos1 := i;
                end
             else
                 if arr[i] < menor then
                    begin
                       menor := arr[i];
                       ultimaPos := i;
                    end; //if
                end;//for
    
    
       writeln;
    
       writeln('El menor numero es ',menor,' en la posicion ',ultimaPos1);
       writeln('El mayor numero es ',mayor,' en la posicion ',ultimaPos);
    readkey;
    END.
    
    te paso el códgio.
    Última edición por danteolivetti; 25/08/2012 a las 13:05
      • 37
      • mensajes
      • miembro desde
      • 30/05/11
    13/04/2013
    #13 Re: Programando desde 0: 11- Subrangos y Arreglos lineales.

    Una pregunta, ¿puede o no llevar un arreglo un tipo de valores STRING?
    Por ejemplo: indentificador=array[1..10] of STRING;

    en ningun caso se usó esto como ejemplo y me quedo esta duda...

      • 323
      • mensajes
      • miembro desde
      • 07/02/07
    14/04/2013
    #14 Re: Programando desde 0: 11- Subrangos y Arreglos lineales.

    Pues sí se puede. No es el uso que le daremos en la parte que refiere a Pascal porque casi no usaremos el tipo String, más bien los hago trabajar con arreglos de caracteres (ARRAY OF CHAR) para que ustedes mismos implementen los Strings (justamente un String es un ARRAY OF CHAR) y se rompan las neuronas. Eso hace que solidifiquen la base sobre arreglos e índices y sepan además qué hay detrás de un String.

    En concreto a tu pregunta, se puede hacer perfectamente. Ante este tipo de pregunas puedes probar a hacerlo tú mismo en el IDE a ver que pasa.

      • 37
      • mensajes
      • miembro desde
      • 30/05/11
    14/04/2013
    #15 Re: Programando desde 0: 11- Subrangos y Arreglos lineales.

    Hola Vlady!
    he intentado utilizar un arreglo con string y me arrojaba errores que no podia encontrar con el debuger. ademas, como en ninguna parte mencionaste string supuse que no tratarias este tema en esta leccion sino en el siguiente o algo asi. Pues ya nos vienes acostumbrando a dejar a lo ultimo las cosas mas dificiles. Pero como el tema ya se estaba yendo por otro lado, me volvi para preguntar esto. De hecho, si no me equivoco, en ningún caso durante toda la leccion utilizaste un arreglo con STRING... Y disculpame si me equivoco.

    Te cuento que estoy leyendo ya la leccion 22. leo primero lo teorico, las comprendo, luego realizo los ejercicios, y despues hare un resumen de todo el curso para que me quede todo bien claro. Hace 15 dias que estoy con esto y como se dice "Me Gusta "
    Te sigo hasta que digas "Fin del curso"

    Saludos profe!

      • 323
      • mensajes
      • miembro desde
      • 07/02/07
    15/04/2013
    #16 Re: Programando desde 0: 11- Subrangos y Arreglos lineales.

    Amigo gracias por seguir el curso y por preocuparte en preguntar las dudas. Como bien dices no hablé de Strings, lo menciono en alguna lección para algún ejemplo, pero en sí no utilizaremos ese tipo hasta Modula. No se qué herrores te tiraría, podríamos ver el código específicamente, pero no es algo que tenga que preocuparte a menos que tú tengas un proyecto personal en el que lo necesites.

    Cualquier otra duda estamos a las órdenes. Gracias por participar.

    Saludos.

Primer 12