Make your own free website on Tripod.com

Mas sobre arrays


 

Inserción

 

 

Insertar un elemento implica desplazar todos los que están por debajo una posición

eso implica hacer

A[x+1]  = A[x]

 

Proceso

 

1.- Ir al ultimo elemento y correrlo una posición hacia abajo

2.- Ir al Penúltimo elemento y correrlo una posición hacia abajo

3.- Ir al Antepenúltimo elemento y correrlo una posición hacia abajo...

....

hasta que lleguemos a la posición de inserción

Luego

A[Pos de  inserción] = Numero a Insertar

 

Diccionario de palabras en BASIC

 

CLS                         Limpiar pantalla

Dim                         Dimensionar el array

Do While                Mientras  condicion hacer

Loop                       Fin mientras

INPUT                     Leer

PRINT                     Escribir

REM                        poner un comentario al programa

 

IF THEN                  Si Entonces

EndIf                       Fin_SI

 

FOR   TO                Desde .... Hasta

Next                       Fin_desde

 

End                         Fin

 

Los Arrays en BASIC están con paréntesis en vez de corchetes osea que A(X) es lo mismo que A[X]

 


Ejemplo de Insercion

Sugerencia Hacer un seguimiento de este programa y entenderlo

 

 

CLS

DIM a(20)

REM aqui esta la lectura

x = 1

DO WHILE x <= 10

   PRINT x;

   INPUT a(x)

   x = x + 1

LOOP

REM aqui esta la insercion

PRINT "digita la posicion";

INPUT n

x = 10

DO WHILE x >= n

   a(x + 1) = a(x)

   x = x - 1

LOOP

PRINT "que numero vas a ingresar";

INPUT a(n)

REM aqui empieza la escritura de todos

x = 1

DO WHILE x <= 11

   PRINT a(x)

   x = x + 1

LOOP

END

 


Otro ejemplo de Inserción (DEJO LA INQUIETUD PARA SABER QUE HACE ESTE PROGRAMA)

Sugerencia Hacer un seguimiento de este programa y entenderlo

 

CLS
DIM a(20)
REM aqui esta la lectura
x = 1
DO WHILE x <= 10
        PRINT x;
        INPUT a(x)
        x = x + 1
LOOP
REM aqui esta la insercion
y = 1
DO WHILE y <= 4
        INPUT n
        x = 10 + y
        DO WHILE x >= n
                a(x + 1) = a(x)
                x = x - 1
        LOOP
        PRINT "que numero vas a ingresar";
        INPUT a(n)
        y = y + 1
LOOP
REM aqui empieza la escritura de todos
x = 1
DO WHILE x <= 10 + y - 1
        PRINT a(x)
        x = x + 1
LOOP
END

 

1.- Modificar este programa para que se hagan mas de 4 inserciones

2.-  Modificar este programa para que se hagan mas de 4 inserciones pero que solo inserte números pares


 


Otro Ejemplo con arrays:    Mejorar tu capacidad de memoria
CLS
DIM a(10)
FOR x = 1 TO 10
        INPUT a(x)
NEXT
INPUT "listo para jugar", bb
CLS
FOR x = 1 TO 10
        PRINT "que valor esta guardado en la posicion", x;
        INPUT q
        IF q = a(x) THEN
                PRINT "acertaste"
        ELSE
                PRINT "fallaste"
        END IF
NEXT
END
 

Propuestos

1.- Modificar este último programa  para llevar la cuenta de cuantos aciertos y cuantas fallas tuvo el jugador

2.- Modificar este último programa  para que jueguen 2 jugadores y nos diga cual fue el mejor jugador

3.- Modificar este último programa  para que jueguen n jugadores y nos diga cual fue el mejor jugador

 

 

4.- Hacer un programa que combine la técnica de Inserción con la de mejorar la memoria,

como asi?...-    Claro que me permita ira insertando numeros cada vez que juega o sea que

primero juega con 10... luego con 11 luego con 12 luego con 13 y asi sucesivamente.

 

Los alumnos que presentan este Último Ejercicio tendrán un bono de 2 puntos en el examen que viene

debe estar hecho en BASIC.

 

 

SUERTE

ENRIQUE BARRUETO

 

QUEREMOS UN MUNDO USAT- LLENO DE ALGORITMOS POR DENTRO