Added IsPandigital string function

This commit is contained in:
2021-10-11 12:58:08 -04:00
parent 9524144f28
commit cdb118ca32
4 changed files with 143 additions and 71 deletions

View File

@@ -1,7 +1,7 @@
//C#/CSClasses/TestStringAlgorithms.cs
//Matthew Ellison
// Created: 07-04-21
//Modified: 07-04-21
//Modified: 10-11-21
//This class contains tests for my string algorithms library
/*
Copyright (C) 2021 Matthew Ellison
@@ -76,62 +76,42 @@ namespace TestStringAlgorithms{
Assert.AreEqual(correctAnswer, answer, "IsPalindrome 3 failed");
}
[TestMethod]
public void TestPrintList(){
public void TestIsPandigital(){
//Test 1
List<int> nums = new List<int>();
string correctAnswer = "[]";
string answer = mee.StringAlgorithms.PrintList(nums);
Assert.AreEqual(correctAnswer, answer, "PrintList<int> 1 failed");
string num = "123456789";
bool correctAnswer = true;
bool answer = mee.StringAlgorithms.IsPandigital(num);
Assert.AreEqual(correctAnswer, answer, "IsPandigital 1 failed");
//Test 2
nums = new List<int>(){1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
correctAnswer = "[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]";
answer = mee.StringAlgorithms.PrintList(nums);
Assert.AreEqual(correctAnswer, answer, "PrintList<int> 2 failed");
num = "123";
correctAnswer = true;
answer = mee.StringAlgorithms.IsPandigital(num, '1', '3');
Assert.AreEqual(correctAnswer, answer, "IsPandigital 2 failed");
//Test 3
nums = new List<int>(){-3, -2, -1, 0, 1, 2, 3};
correctAnswer = "[-3, -2, -1, 0, 1, 2, 3]";
answer = mee.StringAlgorithms.PrintList(nums);
Assert.AreEqual(correctAnswer, answer, "PrintList<int> 3 failed");
num = "123";
correctAnswer = false;
answer = mee.StringAlgorithms.IsPandigital(num);
Assert.AreEqual(correctAnswer, answer, "IsPandigital 3 failed");
//Test 4
List<string> strings = new List<string>(){"A", "B", "C"};
correctAnswer = "[A, B, C]";
answer = mee.StringAlgorithms.PrintList(strings);
Assert.AreEqual(correctAnswer, answer, "PrintList<string> 1 failed");
//Test 5
strings = new List<string>(){"abc", "def", "ghi"};
correctAnswer = "[abc, def, ghi]";
answer = mee.StringAlgorithms.PrintList(strings);
Assert.AreEqual(correctAnswer, answer, "PrintList<string> 2 failed");
}
[TestMethod]
public void TestPrintArray(){
//Test 1
int[] nums = new int[]{};
string correctAnswer = "[]";
string answer = mee.StringAlgorithms.PrintArray(nums);
Assert.AreEqual(correctAnswer, answer, "PrintArray<int> 1 failed");
//Test 2
nums = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
correctAnswer = "[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]";
answer = mee.StringAlgorithms.PrintArray(nums);
Assert.AreEqual(correctAnswer, answer, "PrintArray<int> 2 failed");
//Test 3
nums = new int[]{-3, -2, -1, 0, 1, 2, 3};
correctAnswer = "[-3, -2, -1, 0, 1, 2, 3]";
answer = mee.StringAlgorithms.PrintArray(nums);
Assert.AreEqual(correctAnswer, answer, "PrintArray<int> 3 failed");
num = "123";
correctAnswer = false;
answer = mee.StringAlgorithms.IsPandigital(num, '3', '1');
Assert.AreEqual(correctAnswer, answer, "IsPandigital 4 failed");
//Test 4
string[] strings = new string[]{"A", "B", "C"};
correctAnswer = "[A, B, C]";
answer = mee.StringAlgorithms.PrintArray(strings);
Assert.AreEqual(correctAnswer, answer, "PrintArray<string> 1 failed");
//Test 5
strings = new string[]{"abc", "def", "ghi"};
correctAnswer = "[abc, def, ghi]";
answer = mee.StringAlgorithms.PrintArray(strings);
Assert.AreEqual(correctAnswer, answer, "PrintArray<string> 2 failed");
num = "1";
correctAnswer = true;
answer = mee.StringAlgorithms.IsPandigital(num, '1', '1');
Assert.AreEqual(correctAnswer, answer, "IsPandigitial 5 failed");
//Test 6
num = "112";
correctAnswer = false;
answer = mee.StringAlgorithms.IsPandigital(num, '1', '3');
Assert.AreEqual(correctAnswer, answer, "IsPandigitial 6 failed");
}
}
}