Dame Cambio - Ejercicio De Programacion C# Sharp

Este ejercicio en C# tiene como objetivo desarrollar un programa que calcule el cambio para una compra, utilizando las monedas o billetes de mayor valor posible. El programa debe solicitar al usuario el precio de la compra y la cantidad pagada, y luego calcular el cambio, desglosado en monedas o billetes de 100, 50, 20, 10, 5, 2 y 1. El cambio debe ser dado utilizando la mayor cantidad posible de cada denominación, comenzando con la de mayor valor y avanzando hacia la de menor valor.

Este tipo de ejercicio es útil para practicar el uso de condicionales y bucles, así como para trabajar con cálculos matemáticos y la implementación de algoritmos en programación. El desafío está en encontrar una manera eficiente de dividir el cambio en las denominaciones disponibles sin realizar cálculos innecesarios. Este tipo de problemas es común en aplicaciones de gestión de pagos y transacciones, y aprender a manejar el cambio es fundamental para resolver problemas de programación relacionados con división y resto.

 Categoría

Control del Flujo

 Ejercicio

Dame Cambio

 Objectivo

Cree un programa de C# para devolver el cambio de una compra, utilizando monedas (o billetes) lo más grandes posible. Supongamos que tenemos una cantidad ilimitada de monedas (o billetes) de 100, 50, 20, 10, 5, 2 y 1, y no hay decimales. Por lo tanto, la ejecución podría ser algo como esto:

¿Precio? 44
¿Pagado? 100
Su cambio es 56: 50 5 1
¿Precio? 1
¿Pagado? 100
Su cambio es 99: 50 20 20 5 2 2

 Ejemplo Ejercicio C#

 Copiar Código C#
using System;  // Import the System namespace, which contains fundamental classes like Console

class Program  // Define the Program class
{
    static void Main()  // The entry point of the program
    {
        // Ask the user for the price of the item
        Console.Write("Price? ");
        int price = int.Parse(Console.ReadLine());  // Read and convert the price to an integer

        // Ask the user for the amount paid
        Console.Write("Paid? ");
        int paid = int.Parse(Console.ReadLine());  // Read and convert the paid amount to an integer

        // Calculate the change to be returned
        int change = paid - price;  // Subtract the price from the paid amount to calculate the change

        // Display the total change to be returned
        Console.WriteLine($"Your change is {change}:");

        // Define an array of available coin and bill denominations
        int[] denominations = { 100, 50, 20, 10, 5, 2, 1 };  // Coins and bills in descending order

        // Iterate through the denominations array
        foreach (int denomination in denominations)  
        {
            // Calculate how many coins/bills of this denomination can be given as change
            while (change >= denomination)  
            {
                Console.Write(denomination + " ");  // Display the current denomination
                change -= denomination;  // Subtract the denomination from the remaining change
            }
        }

        // Print a newline after displaying the change
        Console.WriteLine();
    }
}

 Salida

Case 1:
Price? 180
Paid? 500
Your change is 320:
100 100 100 20

Case 2:
Price? 150
Paid? 200
Your change is 50:
50

Case 3:
Price? 85
Paid? 100
Your change is 15:
10 5

Case 4:
Price? 45
Paid? 100
Your change is 55:
50 5

 Comparte este Ejercicio C# Sharp

 Más Ejercicios de Programacion C# Sharp de Control del Flujo

¡Explora nuestro conjunto de ejercicios de programación C# Sharp! Estos ejercicios, diseñados específicamente para principiantes, te ayudarán a desarrollar una sólida comprensión de los conceptos básicos de C#. Desde variables y tipos de datos hasta estructuras de control y funciones simples, cada ejercicio está diseñado para desafiarte de manera gradual a medida que adquieres confianza en la codificación en C#.

  •  Excepciones

    Este ejercicio en C# tiene como objetivo desarrollar un programa que solicite al usuario dos números y muestre su división. El programa debe manejar posibles ...

  •  Positivo y negativo

    En este ejercicio de C#, aprenderás a crear un programa que determine si un número ingresado por el usuario es positivo o negativo. El programa solicitará al u...

  •  Multiplicar si no es cero

    En este ejercicio de C#, aprenderás a crear un programa que solicita al usuario un número. Si el número ingresado es diferente de cero, el programa pedirá un segundo número ...

  •  Dividir si no es cero

    En este ejercicio de C#, aprenderás a crear un programa que solicita al usuario dos números. Si el segundo número es diferente de cero, el programa realizará la división...

  •  Dividir si no es cero (Usar else)

    En este ejercicio de C#, aprenderás a modificar el programa anterior utilizando la estructura de control else. El programa pedirá al usuario dos números, y si el segu...

  •  El mayor de tres números

    En este ejercicio de C#, aprenderás a escribir un programa que solicita al usuario ingresar tres números y muestra el número mayor de los tres. El programa utilizará estruct...