Simulador de conversión de monedas

Proyecto de programación
Avanzado
Kotlin
Curso de Kotlin
90 min
500 XP
Actualizado: 08/11/2024

¡Programa y certifícate!

Asistente de IA
Solución de código
Certificado
Empezar ejercicio

Descripción

Desarrolla un simulador de divisas en Kotlin aplicando la programación funcional para la conversión de tasas de cambio dinámicas.

  1. Inicializa un nuevo proyecto de Kotlin
  2. 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.
  3. 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.
  4. 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.
  5. 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.
  6. 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.

solution.js
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 }
Código completo
Explicaciones
Mejores prácticas
+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