Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- namespace _Easy__Final_Grades___Test_Data
- {
- class Program
- {
- // http://www.reddit.com/r/dailyprogrammer/comments/28vgej/6232014_challenge_168_easy_final_grades_test_data/
- static void Main(string[] args)
- {
- while (true)
- {
- Console.WriteLine("How many students do you want to generate?");
- string m_line = Console.ReadLine();
- int m_number = 0;
- if (int.TryParse(m_line, out m_number))
- {
- MainClass m = new MainClass(int.Parse(m_line));
- }
- }
- }
- }
- class Student
- {
- public string FirstName { get; set; }
- public string LastName { get; set; }
- public int[] Scores = new int[5];
- public Student(string p_firstname, string p_lastname, int[] p_scores)
- {
- FirstName = p_firstname;
- LastName = p_lastname;
- Scores = p_scores;
- }
- public Student(string p_firstname, string p_lastname)
- {
- FirstName = p_firstname;
- LastName = p_lastname;
- }
- public override string ToString()
- {
- string m_scores = "";
- foreach (int i in Scores)
- m_scores += i + " ";
- return " " + FirstName + ", " + LastName + " " + m_scores;
- }
- }
- class MainClass
- {
- List<Student> listStudents;
- Random r;
- public MainClass(int p_number)
- {
- listStudents = new List<Student>();
- r = new Random();
- GenerateStudents(p_number);
- Console.WriteLine("\nStudents:");
- foreach (Student s in listStudents)
- Console.WriteLine(s.ToString());
- Console.WriteLine("\n\nPress ENTER to go again.");
- Console.ReadLine();
- }
- private void GenerateStudents(int p_number)
- {
- try
- {
- Console.WriteLine("Generating " + p_number + " students...");
- for (int i = 0; i < p_number; i++)
- {
- string m_firstname;
- string m_lastname;
- int m_retries = 0;
- while (true)
- {
- GenerateNames(out m_firstname, out m_lastname);
- if (!StudentExists(m_firstname, m_lastname) || m_retries > 2)
- {
- listStudents.Add(new Student(m_firstname, m_lastname));
- Student ls = listStudents[listStudents.Count - 1];
- for (int i2 = 0; i2 < ls.Scores.Length; i2++)
- {
- ls.Scores[i2] = r.Next(0, 101);
- }
- break;
- }
- else
- m_retries++;
- }
- }
- }
- catch (Exception Ex)
- {
- Console.WriteLine("-- ERROR: " + Ex.Message);
- }
- }
- private void GenerateNames(out string p_firstname, out string p_lastname)
- {
- p_firstname = FIRSTNAMES[r.Next(0, FIRSTNAMES.Length)];
- p_lastname = LASTNAMES[r.Next(0, LASTNAMES.Length)];
- }
- private bool StudentExists(string p_firstname, string p_lastname)
- {
- foreach (Student s in listStudents)
- if (s.FirstName == p_firstname && s.LastName == p_lastname)
- {
- Console.WriteLine("-- Warning: " + p_firstname + " " + p_lastname + " already exists.");
- return true;
- }
- return false;
- }
- #region First and lastnames
- private string[] FIRSTNAMES = new string[] {
- "John",
- "Maurice",
- "Jim",
- "James",
- "Jan",
- "Lorenzo",
- "Henk",
- "Robert",
- "Alex",
- "Hans",
- "Jimmy",
- "Danny",
- "Ruben",
- "Kevin",
- "Frank",
- "Jesse",
- "Patrick",
- "Martin",
- "Martijn"
- };
- private string[] LASTNAMES = new string[] {
- "Loly",
- "Baarten",
- "Gekken",
- "van der Heijden",
- "Bond",
- "van Veldhoven",
- "van der Meer",
- "Huizen",
- "Goedenmakers",
- "den Haag",
- "Silvers",
- "Heerens",
- "van der Berg",
- "Messi",
- "van der Vaart"
- };
- #endregion
- }
- }
Add Comment
Please, Sign In to add comment