Generate a random seating chart for a class or exam, free — with an option to keep specific people apart.
Generate a random seating chart for a classroom, exam hall, or any room laid out in rows and seats — enter your names, set the room's dimensions, and optionally list pairs of people who shouldn't end up next to each other.
The "keep apart" feature works by trying many different random arrangements (not just one) and checking each one against every pair you've listed, keeping the first arrangement that satisfies all of them. If your constraints are genuinely impossible to satisfy at once — too many people who all need to avoid each other in too small a room — it tells you plainly which specific pairs ended up adjacent anyway in its best attempt, rather than silently ignoring a constraint it couldn't meet.
"Apart" means not directly adjacent — not beside, in front of, or behind — in the four-directional sense a real room's neighboring seats would be. It doesn't currently avoid diagonal neighbors, which is a reasonable, common way to define "kept apart" for exam seating specifically.
It tries many random arrangements and keeps the one with the fewest violations, then tells you exactly which pairs still ended up adjacent in that best attempt — it never silently ignores a constraint it couldn’t meet.
No — only directly beside, in front of, or behind (the four-directional neighbors), not diagonal. This matches how most real exam seating rules are actually defined.
You’ll get an error telling you exactly how many more seats you need — increase rows or seats per row to fit everyone.
No — nothing persists between visits. Keep a copy of your names list somewhere if you’ll need to regenerate a chart for the same class later.