Visual C# | Using lists exercise | Generate a list of Friday the 13ths!

This exercise is provided to allow potential course delegates to choose the correct Wise Owl Microsoft training course, and may not be reproduced in whole or in part in any format without the prior written consent of Wise Owl.

Software ==> Visual C#  (79 exercises)
Version ==> Any version of C#
Topic ==> Using lists  (3 exercises)
Level ==> Average difficulty
Subject ==> C# training
Before you can do this exercise, you'll need to download and unzip this file (if you have any problems doing this, click here for help).

You need a minimum screen resolution of about 700 pixels width to see our exercises. This is because they contain diagrams and tables which would not be viewable easily on a mobile phone or small laptop. Please use a larger tablet, notebook or desktop computer, or change your screen resolution settings.

To avoid having to draw the form needed for this exercise, right-click on the name of your project in Solution Explorer then choose Add --> Existing Item... (you can also press SHIFT + ALT + A to do the same thing).

Choose only the file called frmUnluckyDates.cs in the above folder to import it into your project, then edit Program.cs to make this the default form. 

For the rest of this exercise, you may find the following snippet of code useful, to give you ideas on how to handle dates in C#:

// get the 13th of this month

DateTime startDate = System.DateTime.Today;

startDate = new DateTime(startDate.Year,startDate.Month,13);

Also, you may find the AddMonths method useful (this adds a given number of months to any date).

Attach code to the left-hand button so that when you click on it you see something like this:

List of 13th dates

When you click on the button it should create a list of the next (say) 5 years' worth of dates which are on the 13th of the month, then set this list to be the data source of the list box. Your list will be probably a bit more up to date!


Now get the right button to go through the list built up, using the FindAll lambda function (or some other method) to count only those dates which fall on a Friday:

List of Friday 13th dates

Use .Items.Clear on your list to remove all existing items, then .Items.Add to add new ones in one by one, whenever you find a date which is a Friday.


If you haven't covered lambda functions on the course, don't despair - have a look at the relevant page in your courseware!

Make plans for what you'll do on all these days to keep out of trouble, then close everything down. 

You can unzip this file to see the answers to this exercise, although please remember this is for your personal use only.
This page has 0 threads Add post