[ Foro de Pascal ]

COMO OBTENER UN VALOR DE UNA TABLA

18-Mar-2015 14:34
obom obom
1 Respuestas

Con que estructura debo  comenzar  este programa en lenguaje pascal. Con un dato real debo  recorrer  una  tabla para obtener un valor y este valor sera multiplicado por una constante para que el resultado sea mostrado en pantalla.
Ejemplo:  El dato es un numero del tipo real ( 23.459,37 ), este dato debe recorrer  esta  tabla  para  ubicarse entre sus  valores  ( 20001/25000) .Obteniendo un valor  ( " B " = 150) Este valor " B ", se multiplicara siempre por la constante " K " . Teniendo un valor esta constante = 127, que debe ser cambiada a fururo. Luego el resultado debe ser mostrado en pantalla.
                                                               de                               hasta                  valor " B "  
                                                                       1                          5000                           90
                                                                5001                        10000                         103
                                                              10001                        15000                         115
                                                              15001                        20000                         140
                                                              20001                        25000                         150
                                                              25001                        30000                         160
                                                              30001                        35000                         170
                                                              35001                        40000                         180
                                                              40001                        45000                         190
                                                              45001                        50000                         200
                                                              50001                        70000                         210
                                                              70001                    1000000                        220

Luego al resultado de la operacion de haber multiplicado el valor "B" por la constante, se le saca un porcentaje (% comision) que debe ir a un trabajador ( Nombre XXX ) que le corresponde y debe ir sumando en la medida que hace trabajos con los valores  del dato de entrada.
Gracias por la orientacion....


18-Mar-2015 17:41
Luis Torres (+12)

Puedes declarar un array tabla de 12 filas y 3 columnas, de la siguiente manera:

 
var
  tabla: array[12,3] of integer;
 


Este array tabla lo deberás llenar con los datos que están en el enunciado del problema.
Para buscar el valor de B, tendrás que crear un ciclo en el que preguntarás, si el datoReal está entre las columnas 1 y 2 de cada fila de la tabla:

 
if (datoReal >= tabla[i,1]) and (datoReal <= tabla[i,2]) then
  begin
      filaBuscada:= i;
  end;
 


Ya tengo la fila en la que se encuentra el valor de B; así, ese valor será:

 
B:= tabla[i,3];
 


Ahora, tendrás que multiplicar el valor de B por la constante K.

Creo que esto debería aclarar tus dudas. Elabora el código y colócalo aquí para ver cómo vas.
Espero haberte ayudado.
Saludos.






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)