DataJuggler.RandomShuffler 8.0.4

dotnet add package DataJuggler.RandomShuffler --version 8.0.4                
NuGet\Install-Package DataJuggler.RandomShuffler -Version 8.0.4                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="DataJuggler.RandomShuffler" Version="8.0.4" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add DataJuggler.RandomShuffler --version 8.0.4                
#r "nuget: DataJuggler.RandomShuffler, 8.0.4"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install DataJuggler.RandomShuffler as a Cake Addin
#addin nuget:?package=DataJuggler.RandomShuffler&version=8.0.4

// Install DataJuggler.RandomShuffler as a Cake Tool
#tool nuget:?package=DataJuggler.RandomShuffler&version=8.0.4                

RandomShuffler

RandomShuffler is a .NET 8 Nuget Package and project uses even random distribution and has built in methods for shuffling Cards and integers for Dice games and other uses.

Random Shuffler comes with two shufflers. For small values (less than 100), the RandomShuffler class is well suited for continually drawing numbers or cards, and reshuffling when the reshuffle threshhold is reached. True random numbers can take a very long time to even out, where as an even distrution system will distribute evenly.

I just released a demo project: Random Bytes

Random Bytes - Example Win Forms app https://github.com/DataJuggler/RandomBytes

Card Demo Coming Soon!

Create a random shuffler for cards:

// create the RandomShuffler object for cards int numberDecks = 1; int initialShuffles = ShufflesControl.IntValue;

// Create a new RandomShuffler for Cards RandomShuffler shuffler = new RandomShuffler(numberDecks, BlackJackCardValueManager, initialShuffles);

using DataJuggler.RandomShuffler; using DataJuggler.RandomShuffler.Enumerations;

Create a random shuffler for integers

// How many random sets to create
int setsToInitialize = 10;

// Create a RandomShuffler
RandomShuffler shuffler = new RandomShuffler(MinControl.IntValue, MaxControl.IntValue, setsToInitialize, initialShuffles);

Create a LargeNumberShuffler to draw numbers between 1 and 1 million

// Create a new instance of a 'LargeNumberShuffler' object.
int digits = 7;
int min = 1;
int max = 1000000;
LargeNumberShuffler Shuffler = new LargeNumberShuffler(digits, min, max, NumberOutOfRangeOptionEnum.ReturnModulus);

To pull items:

value = Shuffler.PullNumber();

You can also create random numbers on my site: https://datajuggler.com/Random

News

12.17.2023: I changed how Return Modulus works. I now return the modulus + the min value.

12.14.2023: DataJuggler.UltimateHelper NuGet package was updated.

11.22.2023: DataJuggler.UltimateHelper NuGet package was updated.

11.15.2023: This project was updated to .NET8.

10.20.2022 Version 7.0.0-rc1: This project has been updated to .NET7.

Version 6.0.4: This project has been updated to .NET6.

Version 1.2.6: I implemented IDisposeable so I could use this project in a Using statement

Version 1.2.5 I changed from targeting Dot Net Core 3.0, to Net Core 3.1, .Net Standard2.1

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on DataJuggler.RandomShuffler:

Package Downloads
DataJuggler.PixelDatabase

PixelDatabase.Net is an image processing library that uses Bitmap Query Language (BQL). to manipulate images. If you know SQL for databases, you are 90% of the way to BQL. This version is for .NET8 only. Use a 7.x version for .NET7. 6.x Version for .NET6. This project started off inside a Windows Forms project called Transparency Maker, which I have ported to a Blazor project that is live PixelDatabase.Net https://pixeldatabase.net. This project has been tested while I built PixelDatabase.Net, but I am sure more updates may be needed.

DataJuggler.DBCompare

DB Compare compares two instances of a SQL Server database. This project has been on .Net Framework for about 10 or 12 years or more. DB Compare has been updated to .NET8.0, and should run faster. C# Developers - Now you can create a project in a manner of minutes and this way you can stay updated with the latest version. This product is also a standalone application. Using it as a Nuget package is just a nice way to always have the latest version.

DataJuggler.RandomUSD

Randomly place objects in a USD scene. The first use case for this project is a snow creator for Omniverse.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.0.4 333 12/17/2023
8.0.3 125 12/14/2023
8.0.2 103 12/14/2023
8.0.1 157 11/22/2023
8.0.0 160 11/15/2023
7.0.4 511 2/6/2023
7.0.3 712 11/9/2022
7.0.3-rc1 304 10/21/2022
7.0.2-rc1 296 10/21/2022
7.0.1-rc1 303 10/20/2022
7.0.0-rc1 319 10/19/2022
6.0.4 1,026 1/23/2022
6.0.2 388 1/4/2022
6.0.1 470 1/1/2022
6.0.0 453 12/11/2021
1.3.0 3,485 11/13/2020

11.15.2023: This project was updated to .NET8.

10.20.2022
Version 7.0.0-rc1: This project has been updated to .NET7.

Version 6.0.4: This project has been updated to .NET6.

Version 1.2.6: I implemented IDisposeable so I could use this project in a Using statement

Version 1.2.5 I changed from targeting Dot Net Core 3.0, to Net Core 3.1, .Net Standard2.1