Descripción
Desarrolla un simulador de divisas en Kotlin aplicando la programación funcional para la conversión de tasas de cambio dinámicas.
- Inicializa un nuevo proyecto de Kotlin
- Estructura el proyecto creando las siguientes carpetas y archivos de manera lógica:
src/
para los archivos fuente.- En el directorio
src/
, crea:CurrencyConverter.kt
para las funciones específicas del proceso de conversión.ExchangeRates.kt
para gestionar las tasas de cambio.Main.kt
como punto de entrada de la aplicación.
- Desarrolla las funciones de conversión en
CurrencyConverter.kt
:- Define una función pura
convertirMonto
que acepte un monto, una moneda origen y una moneda destino. - Utiliza funciones de orden superior para aplicar las tasas de cambio.
- Define una función pura
- Gestiona las tasas de cambio en
ExchangeRates.kt
:- Implementa las tasas de cambio como una lista inmutable.
- Desarrolla funciones que permitan la actualización de tasas asegurando la inmutabilidad en las conversiones anteriores.
- Orquesta las conversiones en
Main.kt
:- Implementa la lógica de entrada del usuario para seleccionar las monedas y el monto.
- Integra la funcionalidad de las funciones puras y de orden superior definidas.
- Prueba el simulador completo:
- Asegúrate de que las conversiones se realicen correctamente utilizando diferentes tasas de cambio.
- Comprueba la inmutabilidad de las tasas y conversiones anteriores tras actualizaciones.
Solución al ejercicio de programación en Kotlin
Contenido bloqueado
¡Desbloquea la solución completa!
Completa el ejercicio de programación en Kotlin para acceder a la solución paso a paso, explicaciones detalladas y mejores prácticas.
JavaScript
1
function
solveChallenge
(
input
) {
2
// Algoritmo optimizado O(n log n)
3
const
data
=
parseInput
(
input
);
4
const
sorted
=
data
.
sort
((
a
,
b
) =>
a
-
b
);
5
6
// Aplicar técnica de dos punteros
7
let
left
=
0
,
right
=
sorted
.
length
-
1
;
8
const
result
= [];
9
10
while
(
left
<
right
) {
11
const
sum
=
sorted
[
left
] +
sorted
[
right
];
12
if
(
sum
===
target
) {
13
result
.
push
([
sorted
[
left
],
sorted
[
right
]]);
14
left
++;
right
--;
15
}
else if
(
sum
<
target
) {
16
left
++;
17
}
else
{
18
right
--;
19
}
20
}
21
22
return
result
;
23
}
+1.200 developers han resuelto este ejercicio de programación
Practica con ejercicios de programación en Kotlin
Mejora tus habilidades con cientos de ejercicios de práctica, recibe retroalimentación instantánea y obtén tu certificación cuando estés listo.
Asistente de IA
Aprende de tus errores
Progreso
Mide tu avance
Certificación
Valida tus habilidades
Únete a miles de desarrolladores mejorando sus habilidades en Kotlin
⭐⭐⭐⭐⭐
4.9/5 valoración