Aggregate functions (Count, Sum, Average) in C Sharp (C#) - Mini Project: Build & Apply
Start learning this pattern below
Jump into concepts and practice - no test required
List<double> called sales with these exact values: 10.5, 20.0, 15.75, 30.0, 25.25.Use List<double> and initialize it with the exact numbers inside curly braces.
int variable called count and set it to the number of items in the sales list using sales.Count.Use int count = sales.Count; to get the number of items.
double variable called sum and set it to the sum of all values in sales using sales.Sum(). Then create a double variable called average and set it to sum / count.Use sales.Sum() to get the total sum. Then divide by count to get the average.
Console.WriteLine statements to print the values of count, sum, and average exactly as shown:Count: 5Sum: 101.5Average: 20.3.Use
average.ToString("F1") to format the average to one decimal place.Use Console.WriteLine with string interpolation and format average with ToString("F1").
Practice
Which aggregate function in C# is used to find how many items are in a list?
Solution
Step 1: Understand the purpose of Count
The Count function returns the number of elements in a collection.Step 2: Compare with other aggregate functions
Sum adds values, Average calculates mean, Max finds the largest value, so they do not count items.Final Answer:
Count -> Option AQuick Check:
Count = number of items [OK]
- Confusing Sum with Count
- Using Average to count items
- Thinking Max counts items
Which of the following is the correct syntax to calculate the sum of integers in a list named numbers?
var total = ???;
Solution
Step 1: Identify the method to sum list elements
The Sum() method is called on the list to add all elements.Step 2: Check syntax correctness
numbers.Sum() is the correct syntax; Count() counts items, Average() finds mean, Sum(numbers) is invalid.Final Answer:
numbers.Sum() -> Option AQuick Check:
Sum() adds list values [OK]
- Using Count() instead of Sum()
- Calling Sum as a standalone function
- Using Average() to sum values
What is the output of this C# code?
var numbers = new List<int> { 2, 4, 6, 8 };
var result = numbers.Average();
Console.WriteLine(result);Solution
Step 1: Calculate the sum of the list elements
Sum = 2 + 4 + 6 + 8 = 20Step 2: Calculate the average
Average = Sum / Count = 20 / 4 = 5.0Step 3: Check the output type
Average returns a double, so output is 5 (printed as 5)Final Answer:
5 -> Option DQuick Check:
Average = 20 / 4 = 5 [OK]
- Adding values but not dividing by count
- Confusing sum with average
- Miscounting number of elements
Identify the error in this code snippet and choose the correct fix:
var numbers = new int[] { 1, 2, 3 };
var total = numbers.Count + 5;
Console.WriteLine(total);Solution
Step 1: Identify the error in Count usage
Count is a method, so it requires parentheses: Count()Step 2: Fix the syntax
Change numbers.Count to numbers.Count() to get the number of elements.Final Answer:
Replace Count with Count() -> Option CQuick Check:
Count() is a method, not a property [OK]
- Using Count without parentheses
- Replacing Count with Sum or Average incorrectly
- Assuming Count is a property
You have a list of exam scores: var scores = new List<int> { 70, 85, 90, 100, 65 };. You want to find the average score but only for scores above 80. Which code snippet correctly calculates this?
Solution
Step 1: Filter scores greater than 80
Use Where(s => s > 80) to select only scores above 80.Step 2: Calculate average of filtered scores
Call Average() on the filtered list to get the mean of those scores.Final Answer:
var avg = scores.Where(s => s > 80).Average(); -> Option BQuick Check:
Filter then average = correct approach [OK]
- Passing condition directly to Average()
- Dividing sum by total count instead of filtered count
- Using Count divided by Sum incorrectly
