public void GenerateNewCoords(AtomsGrid grid) { this.X = RandomContainer.NextInt(0, grid.X); this.Y = RandomContainer.NextInt(0, grid.Y); this.Z = RandomContainer.NextInt(0, grid.Z); Console.WriteLine($"New generated Coords: {X}, {Y}, {Z} and tries: {Tries}"); this.Tries++; }
public static Atom GenerateAtom(AtomsGrid grid) { Atom atom = new Atom(-1, -1, -1); do { atom.GenerateNewCoords(grid); } while (!grid.AddToSet(atom)); return(atom); }
public static void Main(string[] args) { var grid = AtomsGrid.ReadGrid(); int n = Reader.Read <int>("Enter amount of atoms to be placed inside Grid", "Smth wrong, reenter pls", (el) => el > 0 && el <= (grid.X + 1) * (grid.Y + 1) * (grid.Z + 1)); for (int i = 0; i < n; ++i) { Atom atom = Atom.GenerateAtom(grid); Console.WriteLine($"\n\n Tries: {atom.Tries} \n"); } }