-
Notifications
You must be signed in to change notification settings - Fork 0
Update main.go #11
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Update main.go #11
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| http.ServeFile(w, r, r.URL.Path[1:]) | ||
| }) | ||
|
|
||
| printPrimeNumbers(5,19) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| func printPrimeNumbers(num1, num2 int){ | ||
| if num1<2 || num2<2{ | ||
| fmt.Println("Numbers must be greater than 2 for this to work.") | ||
| return | ||
| } | ||
| for num1 <= num2 { | ||
| isPrime := true | ||
| for i:=2; i<=int(math.Sqrt(float64(num1))); i++{ | ||
| if num1 % i == 0{ | ||
| isPrime = false | ||
| break | ||
| } | ||
| } | ||
| if isPrime { | ||
| fmt.Printf("Found Prime number: %d ", num1) | ||
| } | ||
| num1++ | ||
| } | ||
| fmt.Println() | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The function printPrimeNumbers prints prime numbers directly to the console. This might not be ideal in a production environment as it could clutter the console output. Consider returning the prime numbers as a slice of integers instead and let the caller decide what to do with them.
| func printPrimeNumbers(num1, num2 int){ | |
| if num1<2 || num2<2{ | |
| fmt.Println("Numbers must be greater than 2 for this to work.") | |
| return | |
| } | |
| for num1 <= num2 { | |
| isPrime := true | |
| for i:=2; i<=int(math.Sqrt(float64(num1))); i++{ | |
| if num1 % i == 0{ | |
| isPrime = false | |
| break | |
| } | |
| } | |
| if isPrime { | |
| fmt.Printf("Found Prime number: %d ", num1) | |
| } | |
| num1++ | |
| } | |
| fmt.Println() | |
| } | |
| func printPrimeNumbers(num1, num2 int) []int { | |
| primes := []int{} | |
| if num1<2 || num2<2{ | |
| fmt.Println("Numbers must be greater than 2 for this to work.") | |
| return primes | |
| } | |
| for num1 <= num2 { | |
| isPrime := true | |
| for i:=2; i<=int(math.Sqrt(float64(num1))); i++{ | |
| if num1 % i == 0{ | |
| isPrime = false | |
| break | |
| } | |
| } | |
| if isPrime { | |
| primes = append(primes, num1) | |
| } | |
| num1++ | |
| } | |
| return primes | |
| } |
| for i:=2; i<=int(math.Sqrt(float64(num1))); i++{ | ||
| if num1 % i == 0{ | ||
| isPrime = false | ||
| break | ||
| } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The inner loop checks whether a number is prime by dividing it by all numbers up to its square root. However, you can optimize this by checking division only up to the smallest prime number greater than the square root. If a number is not divisible by any prime number less than or equal to its square root, then it's a prime number. This reduces the number of iterations and improves performance.
| for i:=2; i<=int(math.Sqrt(float64(num1))); i++{ | |
| if num1 % i == 0{ | |
| isPrime = false | |
| break | |
| } | |
| for i:=2; i*i<=num1; i++{ | |
| if num1 % i == 0{ | |
| isPrime = false | |
| break | |
| } | |
| } |
Summary by CodeRabbit
Release Notes
New Feature
printPrimeNumbersthat prints all prime numbers within a given range. This feature enhances the mathematical capabilities of our application, providing users with an efficient way to generate prime numbers for their computational needs.