From 4fe1c4c9a9dbdfef0417219c1157010d6df49bd3 Mon Sep 17 00:00:00 2001 From: thusser252 Date: Fri, 15 Aug 2025 19:58:36 +0000 Subject: [PATCH 1/3] made updates to prime number form --- lesson_04/lesson_04.md | 47 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 lesson_04/lesson_04.md diff --git a/lesson_04/lesson_04.md b/lesson_04/lesson_04.md new file mode 100644 index 000000000..5bfb9bb6d --- /dev/null +++ b/lesson_04/lesson_04.md @@ -0,0 +1,47 @@ +## Java implementation +```java +public class EvenCheck { + public static void main(String[] args) { + System.out.println(isEven(4)); // true + System.out.println(isEven(7)); // false + } + + public static boolean isEven(int number) { + return number % 2 == 0; + } +``` +## Typescript implementation +```typescript + function isEven(number: number): boolean { + return number % 2 === 0; +} + +// Example usage: +console.log(isEven(4)); // Output: true +console.log(isEven(7)); // Output: false +``` +## Explanation + +The Java implementation is a compiled language. .java files are compiled into .class files +TypeScript implementation is a transpiled language. .ts files get transpiled into JavaScript. + +## Differences + +1. **Syntax**: +- **Java** needs a `class` and a `main` method as the entry point. +- **TypeScript** just runs functions and code top-to-bottom, no class required. + +2. **Type Coercion**: +- **Java**: `int number = 29;` → types are mandatory and fixed. +- **TypeScript**: `let number: number = 29;` → types are optional but recommended. + +3. **Function Calls**: +- **Java**: Everything lives inside a class, classed based. +- **Typescript**: No need for a class or main method unless you want one, function based. + + + + + + + From 724d43da288a291d4658821142d2fe430d39c7ea Mon Sep 17 00:00:00 2001 From: thusser252 Date: Fri, 15 Aug 2025 20:19:58 +0000 Subject: [PATCH 2/3] feat: add prime number checker in Java and JavaScript --- lesson_04/PrimeCheck.java | 24 ++++++++++++++++++++++++ lesson_04/primechecker.js | 21 +++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 lesson_04/PrimeCheck.java create mode 100644 lesson_04/primechecker.js diff --git a/lesson_04/PrimeCheck.java b/lesson_04/PrimeCheck.java new file mode 100644 index 000000000..b888f11ff --- /dev/null +++ b/lesson_04/PrimeCheck.java @@ -0,0 +1,24 @@ +public class PrimeCheck { + public static void main(String[] args) { + int number = 29; // Change this number to test other values + + if (isPrime(number)) { + System.out.println(number + " is a prime number."); + } else { + System.out.println(number + " is NOT a prime number."); + } + } + + // Method to check if a number is prime + public static boolean isPrime(int num) { + if (num <= 1) { + return false; // 0 and 1 are not prime + } + for (int i = 2; i <= Math.sqrt(num); i++) { + if (num % i == 0) { + return false; // Found a divisor, so not prime + } + } + return true; // No divisors found, so prime + } +} \ No newline at end of file diff --git a/lesson_04/primechecker.js b/lesson_04/primechecker.js new file mode 100644 index 000000000..9b9041e44 --- /dev/null +++ b/lesson_04/primechecker.js @@ -0,0 +1,21 @@ +function isPrime(number) { + // Numbers less than or equal to 1 are not prime + if (number <= 1) { + return false; + } + + // Check for divisors up to square root of number + for (let i = 2; i <= Math.sqrt(number); i++) { + if (number % i === 0) { + return false; // Found a divisor, so not prime + } + } + + return true; // No divisors found, so prime +} + +// Test prime numbers +console.log("Is 7 prime?", isPrime(7)); // Output: true +console.log("Is 4 prime?", isPrime(4)); // Output: false +console.log("Is 13 prime?", isPrime(13)); // Output: true +console.log("Is 29 prime?", isPrime(29)); // Output: true \ No newline at end of file From b0b59e95fc10c2c163d34eb4540c0e57aab3574c Mon Sep 17 00:00:00 2001 From: thusser252 Date: Sun, 28 Sep 2025 00:38:25 -0400 Subject: [PATCH 3/3] feat: complete lesson 4 prime number implementation correction --- lesson_04/TrishtanH/PrimeCheck.class | Bin 0 -> 1154 bytes lesson_04/TrishtanH/PrimeCheck.java | 24 ++++++ lesson_04/TrishtanH/PrimeCheckTest.class | Bin 0 -> 2859 bytes lesson_04/TrishtanH/PrimeCheckTest.java | 84 ++++++++++++++++++ lesson_04/TrishtanH/README.md | 88 +++++++++++++++++++ lesson_04/TrishtanH/primechecker.js | 21 +++++ lesson_04/TrishtanH/primechecker.test.js | 83 ++++++++++++++++++ lesson_04/TrishtanH/test-in-browser.html | 103 +++++++++++++++++++++++ 8 files changed, 403 insertions(+) create mode 100644 lesson_04/TrishtanH/PrimeCheck.class create mode 100644 lesson_04/TrishtanH/PrimeCheck.java create mode 100644 lesson_04/TrishtanH/PrimeCheckTest.class create mode 100644 lesson_04/TrishtanH/PrimeCheckTest.java create mode 100644 lesson_04/TrishtanH/README.md create mode 100644 lesson_04/TrishtanH/primechecker.js create mode 100644 lesson_04/TrishtanH/primechecker.test.js create mode 100644 lesson_04/TrishtanH/test-in-browser.html diff --git a/lesson_04/TrishtanH/PrimeCheck.class b/lesson_04/TrishtanH/PrimeCheck.class new file mode 100644 index 0000000000000000000000000000000000000000..4f6780cd71a4a137833ec152a4c24942a5688401 GIT binary patch literal 1154 zcmaJ=OHUI~6#i~IWndU66ezR>ELgBbrM_QnTv#NM@GvRCL{^t_Lx;|z&fJo)H{ma! zi7OXu*yutD3x9w=#h+k^dS=>4k;ctEk9*GdopbIz-+!Hc1MnP04IzY8C^{nOVi?%v zdpvJ)dndoPwJR!;p{r=vhJ4Bp&gM2WbfZUwrlS`+gZ9!jEK#b8N{vA^yuf5ovP-$w zJ?KYN#ej}M#4aG0_dO{r0(2ULKe8Nf8cv?FZCRGC;8r0<nlQ5oo%lhH>p^bHoP=XQ(u-y z+X4T4H}VW)!OiO0`oFi)F5K2|2X|H6^JjgZA#>iMVedILk#7#QIsQdnk&e61aM(Vx zR$#N37u?=9g_l`&oLZw^xZH4?=R)H8eqD43Zy#CnOBULnyaiF>rdc+mC@|$ekwWxz z`q#eRgIQc7>4$C-fDbV{Fi}jMKz)bUXY{2`F$8?U=nQfq`~7f+%T&7)A_9s%@O~X~YA%UMT7r7>oU+urP8#@*J)Qi6Pvg0&WE7JRXow LBl{s9qkzO8-b@bf literal 0 HcmV?d00001 diff --git a/lesson_04/TrishtanH/PrimeCheck.java b/lesson_04/TrishtanH/PrimeCheck.java new file mode 100644 index 000000000..b888f11ff --- /dev/null +++ b/lesson_04/TrishtanH/PrimeCheck.java @@ -0,0 +1,24 @@ +public class PrimeCheck { + public static void main(String[] args) { + int number = 29; // Change this number to test other values + + if (isPrime(number)) { + System.out.println(number + " is a prime number."); + } else { + System.out.println(number + " is NOT a prime number."); + } + } + + // Method to check if a number is prime + public static boolean isPrime(int num) { + if (num <= 1) { + return false; // 0 and 1 are not prime + } + for (int i = 2; i <= Math.sqrt(num); i++) { + if (num % i == 0) { + return false; // Found a divisor, so not prime + } + } + return true; // No divisors found, so prime + } +} \ No newline at end of file diff --git a/lesson_04/TrishtanH/PrimeCheckTest.class b/lesson_04/TrishtanH/PrimeCheckTest.class new file mode 100644 index 0000000000000000000000000000000000000000..7646561e980e94a45bf406fb75a7ba0a0137f98e GIT binary patch literal 2859 zcmaJ@+fx%)82=p-*d+v5A{XW6qM!*X$VEUyRYcJsC=$dLdvQrt32b&_c4MXYTCLUE zn@^5YXPoxInT{`|Gp)mPd~l{OKK8MXKDOgOP@T5lISB-YrDWLe?C-mO=R4n?r~fQI z25s(98?%C#Prin8Q%ipD+{7eg;o4G+7K8#S(mel)%4A zJUVYXdXl893@KHO2tx_0eJq_Yov4%6wPaXE8N=4`jAa?zsQd0L}BQ{B>^`j2;3}qsU!5KX^$3q~%A(96fYFs=-rnrwr^3mbuLx##wy=#v< zZwo_3=MrlvEE&xNcddoD5xi_DFC8Sfcdc|Qh19(SuS{FUPGa@Av)YK&=g!(qtiA56 zPRg;vwZ<~K83G;4waJIw!*Q1^`#A2B&pwVX`_J3yC%n_e4)toF(?$Luk9E1|s|$08 z^Oj4zns=CZoy&Qw<_&S)I(o;5*R@Vav0Aa;k-#d&TyX3u^i3ds&;@T z#cO^{;Vhklq&BAyT4qdh&Lo@}TG@_fIyPk*j6_0fk6{1|Z*b)|sfU7Y5;D#)YBiPpEaCeS1wE8;C{;k#UWoiEq)+KxBjfb(ebNa*944dYs;Nsz)t{ zXn7H?`|ufVNVv(%`Z+^$zB~!@k~OEdXNPyT!G^S$W2NUA?yRhSPB0t!G0lt{y4^ft zS#z0Gcx|y(AgdH7=2N49REP#)nTw3|~DJ5D+$BRDP^vuv(15w7&)?dJWqy@tz zdU7^j7vpVQCQ730H+VS88Wtc0N`FRqpvvQUgqlEuSCGxh3qhL-y&Te@8q1z;677 z4%($IR!kq$O7yUL^kH5^Qt*OR(nXA4V6t0E+v=qs&`0@r&;5kcb&n9+-%x)awUkin zA`(jpbMC1JsNisY!y*j9$Y_-3xDE5O0QGUI2Yvd6~D0qnwE2V { + assertEqual(isPrime(0), false, '0 should not be prime'); + assertEqual(isPrime(1), false, '1 should not be prime'); + assertEqual(isPrime(-5), false, 'negative numbers should not be prime'); +}); + +test('should return true for small prime numbers', () => { + assertEqual(isPrime(2), true, '2 should be prime'); + assertEqual(isPrime(3), true, '3 should be prime'); + assertEqual(isPrime(5), true, '5 should be prime'); + assertEqual(isPrime(7), true, '7 should be prime'); +}); + +test('should return false for small composite numbers', () => { + assertEqual(isPrime(4), false, '4 should not be prime'); + assertEqual(isPrime(6), false, '6 should not be prime'); + assertEqual(isPrime(8), false, '8 should not be prime'); + assertEqual(isPrime(9), false, '9 should not be prime'); + assertEqual(isPrime(10), false, '10 should not be prime'); +}); + +test('should return true for larger prime numbers', () => { + assertEqual(isPrime(11), true, '11 should be prime'); + assertEqual(isPrime(13), true, '13 should be prime'); + assertEqual(isPrime(17), true, '17 should be prime'); + assertEqual(isPrime(19), true, '19 should be prime'); + assertEqual(isPrime(23), true, '23 should be prime'); + assertEqual(isPrime(29), true, '29 should be prime'); +}); + +test('should return false for larger composite numbers', () => { + assertEqual(isPrime(12), false, '12 should not be prime'); + assertEqual(isPrime(15), false, '15 should not be prime'); + assertEqual(isPrime(21), false, '21 should not be prime'); + assertEqual(isPrime(25), false, '25 should not be prime'); + assertEqual(isPrime(30), false, '30 should not be prime'); +}); + +test('should handle perfect squares correctly', () => { + assertEqual(isPrime(16), false, '16 (4²) should not be prime'); + assertEqual(isPrime(25), false, '25 (5²) should not be prime'); + assertEqual(isPrime(49), false, '49 (7²) should not be prime'); +}); + +console.log('\nJavaScript tests completed!'); diff --git a/lesson_04/TrishtanH/test-in-browser.html b/lesson_04/TrishtanH/test-in-browser.html new file mode 100644 index 000000000..ea93c1ea8 --- /dev/null +++ b/lesson_04/TrishtanH/test-in-browser.html @@ -0,0 +1,103 @@ + + + + + + Prime Number Checker Test + + +

Prime Number Checker Test

+

Open your browser's Developer Console (F12) to see the test results.

+ + + +