Simplify Hurkle (C#) folder structure

This commit is contained in:
Zev Spitz
2022-01-17 11:09:11 +02:00
parent 35bfd114e0
commit 3eed84264f
12 changed files with 81 additions and 83 deletions

View File

@@ -1,8 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net5.0</TargetFramework>
</PropertyGroup>
</Project>
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net5.0</TargetFramework>
</PropertyGroup>
</Project>

View File

@@ -3,25 +3,23 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 16
VisualStudioVersion = 16.0.30114.105
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "src", "src", "{EBE7BC2B-8F2E-41D5-AF36-7AAC7CE0E1BF}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "hurkle", "src\hurkle\hurkle.csproj", "{47578EC1-A012-4BF7-8709-64F675E72DB0}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Hurkle", "Hurkle.csproj", "{BE321D5B-93BD-4F91-A875-564DC9D4094F}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{BE321D5B-93BD-4F91-A875-564DC9D4094F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BE321D5B-93BD-4F91-A875-564DC9D4094F}.Debug|Any CPU.Build.0 = Debug|Any CPU
{BE321D5B-93BD-4F91-A875-564DC9D4094F}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BE321D5B-93BD-4F91-A875-564DC9D4094F}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{47578EC1-A012-4BF7-8709-64F675E72DB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{47578EC1-A012-4BF7-8709-64F675E72DB0}.Debug|Any CPU.Build.0 = Debug|Any CPU
{47578EC1-A012-4BF7-8709-64F675E72DB0}.Release|Any CPU.ActiveCfg = Release|Any CPU
{47578EC1-A012-4BF7-8709-64F675E72DB0}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
{47578EC1-A012-4BF7-8709-64F675E72DB0} = {EBE7BC2B-8F2E-41D5-AF36-7AAC7CE0E1BF}
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {42DC6AE5-5127-4B1B-BD5E-F3B1CCDC3822}
EndGlobalSection
EndGlobal

View File

@@ -1,64 +1,64 @@
using System;
namespace hurkle
{
class Program
{
static void Main(string[] args)
{
/*
Original source transscription
10 PRINT TAB(33);"HURKLE"
20 PRINT TAB(15);"CREATIVE COMPUTING NORRISTOWN, NEW JERSEY"
30 PRINT;PRINT;PRINT
*/
Console.WriteLine(new string(' ', 33) + @"HURKLE");
Console.WriteLine(new string(' ', 15) + @"CREATIVE COMPUTING NORRISTOWN, NEW JERSEY");
/*
110 N=5
120 G=10
*/
var N=5;
var G=10;
/*
210 PRINT
220 PRINT "A HURKLE IS HIDING ON A";G;"BY";G;"GRID. HOMEBASE"
230 PRINT "ON THE GRID IS POINT 0,0 AND ANY GRIDPOINT IS A"
240 PRINT "PAIR OF WHOLE NUMBERS SEPERATED BY A COMMA. TRY TO"
250 PRINT "GUESS THE HURKLE'S GRIDPOINT. YOU GET";N;"TRIES."
260 PRINT "AFTER EACH TRY, I WILL TELL YOU THE APPROXIMATE"
270 PRINT "DIRECTION TO GO TO LOOK FOR THE HURKLE."
280 PRINT
*/
// Using string formatting via the '$' string
Console.WriteLine();
Console.WriteLine($"A HURKLE IS HIDING ON A {G} BY {G} GRID. HOMEBASE");
Console.WriteLine(@"ON THE GRID IS POINT 0,0 AND ANY GRIDPOINT IS A");
Console.WriteLine(@"PAIR OF WHOLE NUMBERS SEPERATED BY A COMMA. TRY TO");
Console.WriteLine($"GUESS THE HURKLE'S GRIDPOINT. YOU GET {N} TRIES.");
Console.WriteLine(@"AFTER EACH TRY, I WILL TELL YOU THE APPROXIMATE");
Console.WriteLine(@"DIRECTION TO GO TO LOOK FOR THE HURKLE.");
Console.WriteLine();
var view = new ConsoleHurkleView();
var hurkle = new HurkleGame(N,G, view);
while(true)
{
hurkle.PlayGame();
Console.WriteLine("PLAY AGAIN? (Y)ES/(N)O");
var playAgainResponse = Console.ReadLine();
if(playAgainResponse.Trim().StartsWith("y", StringComparison.InvariantCultureIgnoreCase))
{
Console.WriteLine();
Console.WriteLine("LET'S PLAY AGAIN. HURKLE IS HIDING");
Console.WriteLine();
}else{
Console.WriteLine("THANKS FOR PLAYING!");
break;
}
}
}
}
}
using System;
namespace hurkle
{
class Program
{
static void Main(string[] args)
{
/*
Original source transscription
10 PRINT TAB(33);"HURKLE"
20 PRINT TAB(15);"CREATIVE COMPUTING NORRISTOWN, NEW JERSEY"
30 PRINT;PRINT;PRINT
*/
Console.WriteLine(new string(' ', 33) + @"HURKLE");
Console.WriteLine(new string(' ', 15) + @"CREATIVE COMPUTING NORRISTOWN, NEW JERSEY");
/*
110 N=5
120 G=10
*/
var N=5;
var G=10;
/*
210 PRINT
220 PRINT "A HURKLE IS HIDING ON A";G;"BY";G;"GRID. HOMEBASE"
230 PRINT "ON THE GRID IS POINT 0,0 AND ANY GRIDPOINT IS A"
240 PRINT "PAIR OF WHOLE NUMBERS SEPERATED BY A COMMA. TRY TO"
250 PRINT "GUESS THE HURKLE'S GRIDPOINT. YOU GET";N;"TRIES."
260 PRINT "AFTER EACH TRY, I WILL TELL YOU THE APPROXIMATE"
270 PRINT "DIRECTION TO GO TO LOOK FOR THE HURKLE."
280 PRINT
*/
// Using string formatting via the '$' string
Console.WriteLine();
Console.WriteLine($"A HURKLE IS HIDING ON A {G} BY {G} GRID. HOMEBASE");
Console.WriteLine(@"ON THE GRID IS POINT 0,0 AND ANY GRIDPOINT IS A");
Console.WriteLine(@"PAIR OF WHOLE NUMBERS SEPERATED BY A COMMA. TRY TO");
Console.WriteLine($"GUESS THE HURKLE'S GRIDPOINT. YOU GET {N} TRIES.");
Console.WriteLine(@"AFTER EACH TRY, I WILL TELL YOU THE APPROXIMATE");
Console.WriteLine(@"DIRECTION TO GO TO LOOK FOR THE HURKLE.");
Console.WriteLine();
var view = new ConsoleHurkleView();
var hurkle = new HurkleGame(N,G, view);
while(true)
{
hurkle.PlayGame();
Console.WriteLine("PLAY AGAIN? (Y)ES/(N)O");
var playAgainResponse = Console.ReadLine();
if(playAgainResponse.Trim().StartsWith("y", StringComparison.InvariantCultureIgnoreCase))
{
Console.WriteLine();
Console.WriteLine("LET'S PLAY AGAIN. HURKLE IS HIDING");
Console.WriteLine();
}else{
Console.WriteLine("THANKS FOR PLAYING!");
break;
}
}
}
}
}