In how many ways can a cashier give change of exactly 60 cents if he has the following coins available?

10 quarters; 10 dimes; 10 nickels

make a list of ways to obtain 60¢ starting with the largest coins

2Q, 1D
2Q 2N
1Q 3D 1N
1Q 2D 3N
1Q 5N
6D
5D 2N
4D 4N
3D 6N
2D 8N
1D 10N

no

To find the number of ways the cashier can give change of exactly 60 cents using the available coins, you can use a combination of a loop and recursion.

First, you need to define a function that recursively calculates the number of ways to give change for a given amount using the available coins. Let's call this function "countChange".

Here's how the function can be implemented in Python:

```python
def countChange(amount, coins):
# Base case: If the amount is 0, there is only one way to give change, i.e., not using any coin.
if amount == 0:
return 1

# Base case: If the amount is negative or there are no more coins left, there is no way to give change.
if amount < 0 or not coins:
return 0

# Recursive case:
# Call the countChange function twice:
# 1. Once by including the first coin and subtracting its value from the amount.
# 2. Once by excluding the first coin and keeping the same amount.
return countChange(amount - coins[0], coins) + countChange(amount, coins[1:])

# Define the available coins
coins = [25, 10, 5]

# Call the countChange function with the amount of 60 cents and the available coins
num_ways = countChange(60, coins)

# Print the result
print(num_ways)
```

In this example, the "coins" variable represents the available coins with their respective values. The countChange function takes the amount as a parameter and recursively calculates the number of ways to give change using the available coins. The function uses the concept of dynamic programming by memoizing the results, making it efficient even for larger values.

The output will be the number of ways the cashier can give change of exactly 60 cents using the available coins.