gpt/2025-10-07/numbers.go (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 |
package main
import(
"fmt"
"bufio"
"log"
"os"
"strconv"
)
func readNumber() int {
for {
scanner := bufio.NewScanner(os.Stdin)
scanner.Scan()
err := scanner.Err()
if err != nil {
log.Println(err)
continue
}
number, err := strconv.ParseInt(scanner.Text(), 0, 64)
if err != nil {
log.Println(err)
continue
}
return int(number)
}
}
func leftmost(number int) *int {
for ; number >= 10; number=number/10 {
}
return &number
}
func main(){
var maximum int
var sum int
var quersum int
poolSize := readNumber()
for i := 0; i < poolSize; i++ {
currentNumber := readNumber()
if currentNumber > maximum {
maximum = currentNumber
}
sum = sum + currentNumber
quersum = quersum + *(leftmost(currentNumber))
}
fmt.Printf("Maximum: %d\nSumme: %d\nQuersumme: %d\n\n", maximum, sum, quersum)
}
|