Proyecto Inventario de productos

Proyecto de programación
Avanzado
TypeScript
Curso de TypeScript
120 min
200 XP
Actualizado: 12/05/2025

¡Programa y certifícate!

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

Descripción

Crea un sistema simple en TypeScript para gestionar un inventario básico de productos.

  • Define un enum llamado CategoriaProducto con al menos tres categorías (por ejemplo: 'Electrónica', 'Ropa', 'Alimentos').
  • Define una interface llamada Producto con las siguientes propiedades:
    • id: un string único.
    • nombre: un string.
    • precio: un number (debe ser positivo; puedes añadir un comentario indicando que en un sistema real se validaría).
    • categoria: una propiedad que use el enum CategoriaProducto.
    • stock: un number que represente la cantidad disponible.
  • Crea un array en memoria (una variable global simple) que almacene objetos de tipo Producto.
  • Implementa las siguientes funciones:
    • agregarProducto(producto: Producto): Añade un producto al array de inventario.
    • obtenerTodosProductos(): Producto[]: Devuelve el array completo de inventario.
    • buscarPorCategoria(categoria: CategoriaProducto): Producto[]: Filtra y devuelve solo los productos de una categoría específica.
    • calcularValorTotalInventario(): number: Calcula la suma total del valor de todos los productos (precio * stock).
  • En el archivo principal (index.ts), demuestra el uso de las funciones:
    • Agrega al menos tres productos al inventario.
    • Muestra por consola el inventario completo.
    • Busca y muestra por consola los productos de una categoría.
    • Calcula y muestra por consola el valor total del inventario.
  • Organiza tu código en al menos dos archivos: uno para las definiciones de tipos (types.ts) y otro para la lógica (index.ts), utilizando export e import.

Solución al ejercicio de programación en TypeScript

Contenido bloqueado

¡Desbloquea la solución completa!

Completa el ejercicio de programación en TypeScript 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 TypeScript

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 TypeScript

⭐⭐⭐⭐⭐
4.9/5 valoración