¿Se puede convertir la siguiente declaración if en una declaración de caso?¿Cómo puedo probar que un valor está dentro de un rango con una declaración "case" en lugar de una instrucción "if"?
if (Number >= 5) and (Number <= 10) then
lblAnswer.Caption := 'in range'
else
lblAnswer.Caption := 'out of range';
Mi respuesta:
Sí se puede
case (number >= 5) and (Number <= 10) of
lblAnswer.Caption := 'in range';
lblAnswer.Caption := 'out of range';
end;
¿Es esto correcto?
¿Por qué quieres hacer eso? Para tales expresiones, un 'si ... entonces' es solo la manera más clara y rápida de hacerlo. No hay interés en usar un 'caso' aquí. –
Una declaración alternativa: if (number in [5..10]) then .. else .. –
InRange() para cuando los límites no son constantes o están fuera del rango establecido. –