diff --git a/public/usage-examples/utilities/least_common_multiple-1-example-oop.cs b/public/usage-examples/utilities/least_common_multiple-1-example-oop.cs new file mode 100644 index 000000000..d75538e94 --- /dev/null +++ b/public/usage-examples/utilities/least_common_multiple-1-example-oop.cs @@ -0,0 +1,53 @@ +// c# oop: least common multiple demo +using SplashKitSDK; + +class App +{ + public void Run() + { + SplashKit.OpenWindow("Least Common Multiple Demo", 640, 400); + + int num1 = 12, num2 = 18; + + while (!SplashKit.QuitRequested()) + { + SplashKit.ProcessEvents(); + + // controls + if (SplashKit.KeyTyped(KeyCode.UpKey)) num1++; + if (SplashKit.KeyTyped(KeyCode.DownKey)) num1 = (num1 > 1) ? num1 - 1 : 1; + if (SplashKit.KeyTyped(KeyCode.RightKey)) num2++; + if (SplashKit.KeyTyped(KeyCode.LeftKey)) num2 = (num2 > 1) ? num2 - 1 : 1; + if (SplashKit.KeyTyped(KeyCode.RKey)) { num1 = 12; num2 = 18; } + + int result = SplashKit.LeastCommonMultiple(num1, num2); + + SplashKit.ClearScreen(Color.White); + + // title + SplashKit.DrawText("LCM CALCULATOR", Color.Blue, "arial", 28, 190, 40); + + // numbers + SplashKit.DrawText("Number 1: " + num1, Color.Black, "arial", 22, 180, 140); + SplashKit.DrawText("Number 2: " + num2, Color.Black, "arial", 22, 180, 180); + + // result + SplashKit.DrawText("LCM: " + result, Color.Red, "arial", 24, 180, 230); + + // instructions + SplashKit.DrawText( + "Controls: UP/DOWN for Number 1, LEFT/RIGHT for Number 2, R = reset", + Color.Gray, "arial", 16, 40, 330 + ); + + SplashKit.RefreshScreen(); + } + + SplashKit.CloseAllWindows(); + } +} + +class Program +{ + static void Main() => new App().Run(); +} diff --git a/public/usage-examples/utilities/least_common_multiple-1-example-top-level.cs b/public/usage-examples/utilities/least_common_multiple-1-example-top-level.cs new file mode 100644 index 000000000..0099aec51 --- /dev/null +++ b/public/usage-examples/utilities/least_common_multiple-1-example-top-level.cs @@ -0,0 +1,42 @@ +// c# top-level: least common multiple demo +using SplashKitSDK; + +SplashKit.OpenWindow("Least Common Multiple Demo", 640, 400); + +int num1 = 12, num2 = 18; + +while (!SplashKit.QuitRequested()) +{ + SplashKit.ProcessEvents(); + + // controls + if (SplashKit.KeyTyped(KeyCode.UpKey)) num1++; + if (SplashKit.KeyTyped(KeyCode.DownKey)) num1 = (num1 > 1) ? num1 - 1 : 1; + if (SplashKit.KeyTyped(KeyCode.RightKey)) num2++; + if (SplashKit.KeyTyped(KeyCode.LeftKey)) num2 = (num2 > 1) ? num2 - 1 : 1; + if (SplashKit.KeyTyped(KeyCode.RKey)) { num1 = 12; num2 = 18; } + + int result = SplashKit.LeastCommonMultiple(num1, num2); + + SplashKit.ClearScreen(Color.White); + + // title + SplashKit.DrawText("LCM CALCULATOR", Color.Blue, "arial", 28, 190, 40); + + // numbers + SplashKit.DrawText("Number 1: " + num1, Color.Black, "arial", 22, 180, 140); + SplashKit.DrawText("Number 2: " + num2, Color.Black, "arial", 22, 180, 180); + + // result + SplashKit.DrawText("LCM: " + result, Color.Red, "arial", 24, 180, 230); + + // instructions + SplashKit.DrawText( + "Controls: UP/DOWN for Number 1, LEFT/RIGHT for Number 2, R = reset", + Color.Gray, "arial", 16, 40, 330 + ); + + SplashKit.RefreshScreen(); +} + +SplashKit.CloseAllWindows(); diff --git a/public/usage-examples/utilities/least_common_multiple-1-example.cpp b/public/usage-examples/utilities/least_common_multiple-1-example.cpp new file mode 100644 index 000000000..e20524406 --- /dev/null +++ b/public/usage-examples/utilities/least_common_multiple-1-example.cpp @@ -0,0 +1,44 @@ +#include "splashkit.h" +#include + +int main() +{ + open_window("Least Common Multiple Demo", 640, 400); + + int num1 = 12, num2 = 18; + + while (!quit_requested()) + { + process_events(); + + // controls + if (key_typed(UP_KEY)) num1++; + if (key_typed(DOWN_KEY)) num1 = (num1 > 1) ? num1 - 1 : 1; + if (key_typed(RIGHT_KEY)) num2++; + if (key_typed(LEFT_KEY)) num2 = (num2 > 1) ? num2 - 1 : 1; + if (key_typed(R_KEY)) { num1 = 12; num2 = 18; } + + int result = least_common_multiple(num1, num2); + + clear_screen(COLOR_WHITE); + + // title + draw_text("LCM CALCULATOR", COLOR_BLUE, "arial", 28, 190, 40); + + // display numbers + draw_text("Number 1: " + std::to_string(num1), COLOR_BLACK, "arial", 22, 180, 140); + draw_text("Number 2: " + std::to_string(num2), COLOR_BLACK, "arial", 22, 180, 180); + + // display result + draw_text("LCM: " + std::to_string(result), COLOR_RED, "arial", 24, 180, 230); + + // instructions + draw_text("Controls: UP/DOWN for Number 1, LEFT/RIGHT for Number 2, R = reset", + COLOR_GRAY, "arial", 16, 40, 330); + + refresh_screen(); + } + + close_all_windows(); + return 0; +} diff --git a/public/usage-examples/utilities/least_common_multiple-1-example.gif b/public/usage-examples/utilities/least_common_multiple-1-example.gif new file mode 100644 index 000000000..6adfa2b89 Binary files /dev/null and b/public/usage-examples/utilities/least_common_multiple-1-example.gif differ diff --git a/public/usage-examples/utilities/least_common_multiple-1-example.py b/public/usage-examples/utilities/least_common_multiple-1-example.py new file mode 100644 index 000000000..774d49e46 --- /dev/null +++ b/public/usage-examples/utilities/least_common_multiple-1-example.py @@ -0,0 +1,47 @@ +from splashkit import * + +def main(): + open_window("Least Common Multiple Demo", 640, 400) + + num1 = 12 + num2 = 18 + + while not quit_requested(): + process_events() + + # controls + if key_typed(UP_KEY): + num1 += 1 + if key_typed(DOWN_KEY) and num1 > 1: + num1 -= 1 + if key_typed(RIGHT_KEY): + num2 += 1 + if key_typed(LEFT_KEY) and num2 > 1: + num2 -= 1 + if key_typed(R_KEY): + num1, num2 = 12, 18 + + result = least_common_multiple(num1, num2) + + clear_screen(COLOR_WHITE) + + # title + draw_text("LCM CALCULATOR", COLOR_BLUE, "arial", 28, 190, 40) + + # numbers + draw_text("Number 1: " + str(num1), COLOR_BLACK, "arial", 22, 180, 140) + draw_text("Number 2: " + str(num2), COLOR_BLACK, "arial", 22, 180, 180) + + # result + draw_text("LCM: " + str(result), COLOR_RED, "arial", 24, 180, 230) + + # instructions + draw_text("Controls: UP/DOWN for Number 1, LEFT/RIGHT for Number 2, R = reset", + COLOR_GRAY, "arial", 16, 40, 330) + + refresh_screen() + + close_all_windows() + +if __name__ == "__main__": + main() diff --git a/public/usage-examples/utilities/least_common_multiple-1-example.txt b/public/usage-examples/utilities/least_common_multiple-1-example.txt new file mode 100644 index 000000000..242c2d848 --- /dev/null +++ b/public/usage-examples/utilities/least_common_multiple-1-example.txt @@ -0,0 +1 @@ +LCM Calculator \ No newline at end of file