commit 43057a55d6dd6a34eb61b2b9b04389fe23b93e35 Author: mehbark Date: Thu Dec 25 00:13:35 2025 -0500 initial diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..ea8c4bf --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/target diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 0000000..b81b9aa --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,7 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "qr-random" +version = "0.1.0" diff --git a/Cargo.toml b/Cargo.toml new file mode 100644 index 0000000..cf27cce --- /dev/null +++ b/Cargo.toml @@ -0,0 +1,6 @@ +[package] +name = "qr-random" +version = "0.1.0" +edition = "2024" + +[dependencies] diff --git a/src/main.rs b/src/main.rs new file mode 100644 index 0000000..d00116a --- /dev/null +++ b/src/main.rs @@ -0,0 +1,23 @@ +use std::env; + +fn main() { + // try 48413 + let s: usize = env::args() + .nth(1) + .expect("give me a number") + .parse() + .unwrap(); + + let p = 2 * s + 1; + let mut qr = vec![false; p]; + for n in 1..p { + qr[(n * n) % p] = true; + } + + for is_qr in qr { + let color_code: u8 = if is_qr { 255 } else { 232 }; + print!("\x1b[48;5;{color_code}m "); + } + + print!("\x1b[0m"); +}