Skip to content

Conversation

@gchaware
Copy link
Owner

@gchaware gchaware commented Jun 26, 2023

Added Prime Number Function

Summary by CodeRabbit

Thank you for providing the summary of changes. Please share the code snippet or the relevant diff, so I can review it and provide suggestions to improve the code quality.

@coderabbit-nyctonid
Copy link

Image description CodeRabbit

Thank you for providing the summary of changes. Please share the relevant code hunks so I can review them and provide suggestions to improve the code quality.


Chat with Image description CodeRabbit Bot (@coderabbitai)

  • Reply on review comments left by this bot to ask follow-up questions. A review comment is a comment on a diff or a file.
  • Invite the bot into a review comment chain by tagging @coderabbitai in a reply.

Code suggestions

  • The bot may make code suggestions, but please review them carefully before committing since the line number ranges may be misaligned.
  • You can edit the comment made by the bot and manually tweak the suggestion if it is slightly off.

Ignoring further reviews

  • Type @coderabbitai: ignore anywhere in the PR description to ignore further reviews from the bot.


In the recent run, only the files that changed from the base of the PR and between ab560ca055115585bfecf6dd17f46fed4cf614ef and bba2fd438d39259a87206d0c3da693e27ffcce1d commits were reviewed.

Comment on lines +23 to 24
printPrimeNumbers(5,19)
// start HTTP server with `http.DefaultServeMux` handler

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The printPrimeNumbers function is called directly in the main function. It would be better to move this call to a separate function or an HTTP handler to improve modularity and maintainability.

Suggested change
printPrimeNumbers(5,19)
// start HTTP server with `http.DefaultServeMux` handler
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
http.ServeFile(w, r, r.URL.Path[1:])
})
http.HandleFunc("/prime", primeHandler)
// start HTTP server with `http.DefaultServeMux` handler
log.Fatal(http.ListenAndServe(":9000", nil))
}
func primeHandler(w http.ResponseWriter, r *http.Request) {
printPrimeNumbers(5, 19)
}

Comment on lines +29 to +48
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()
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Image description CodeRabbit

The printPrimeNumbers function currently prints the prime numbers directly to the console. To make it more reusable, consider returning a slice of prime numbers instead of printing them. This way, the function can be used in different contexts, such as returning the prime numbers in an API response or processing them further.

Suggested change
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 {
if num1 < 2 || num2 < 2 {
fmt.Println("Numbers must be greater than 2 for this to work.")
return nil
}
primes := []int{}
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
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants