Está en la página 1de 3

Fundamentos de Programacin

Ejercicios
Profesor : Roberto Montero Flores
Tema : Cadenas de caracteres

Pregunta 1

Una fbrica va a automatizar su sistema de almacenamiento por medio de la lectura del


cdigo de producto.

Dicho cdigo tiene un formato como el que sigue

PER001FRI

Las tres primeras letras indican si es perecible o no perecible. (PER - NPE)


Las tres siguientes el cdigo de producto (puede ser desde el 000 al 999)
Las tres ltimas indican si debe ir a fro o no (FRI - NFR).

Para el etiquetado se necesita el cdigo numrico del producto. Este es un cdigo


diferente al que ingresa. En caso de ser PER las primera tres letras el nmero que las
reemplaza ser el 1, en caso de ser NPE entonces ser 2. En el caso de FRI ser 9 y en el
caso de ser NFR ser 0.

Ejemplo: Si el cdigo es PER001FRI el cdigo numrico ser 10019 y deber ser un


valor entero.

Monterrico, 04 octubre de 2014

Desarrollo

# encoding: UTF-8

def codigoNumerico(codigo)
parte1=codigo.slice(0,3)
parte2=codigo.slice(3,3)
parte3=codigo.slice(6,3)

digito1=""
if parte1=="PER"
digito1="1"
else
digito1="2"
end
digito2=""
if parte3=="FRI"
digito2="9"
else
digito2="0"
end
nuevocodigo=digito1+parte2+digito2
return nuevocodigo.to_i
end

#--- zona de test ----

def test_codigoNumerico
print validate(10019,codigoNumerico("PER001FRI"))
print validate(20079,codigoNumerico("NPR007FRI"))
print validate(20090,codigoNumerico("NPR009NFR"))
print validate(10110,codigoNumerico("PER011NFR"))

end

def validate (expected, value)


expected == value ? "." : "F"
end

def test
puts "---------------------------"
test_codigoNumerico
puts " "
end
test

También podría gustarte