Added sommer2017 sae
This commit is contained in:
32
sae/aufgaben/sommer2017Go/main.go
Normal file
32
sae/aufgaben/sommer2017Go/main.go
Normal file
@@ -0,0 +1,32 @@
|
||||
package main
|
||||
|
||||
import "fmt"
|
||||
|
||||
func main() {
|
||||
fmt.Println("Prüfziffer:", berechnePruefziffer(21050170, 425))
|
||||
fmt.Println("Prüfziffer:", berechnePruefziffer(21050170, 12345678))
|
||||
}
|
||||
|
||||
//Achtung: Es müssen Datentypen mit 64 Bit Ganzzahl angewendet werden,
|
||||
//da * 1mio gerechnet wird. In Java/C# wäre das der Typ long.
|
||||
func berechnePruefziffer(blz, kontonr int64) int64 {
|
||||
var pruefziffer int64 = 0.0
|
||||
|
||||
for blz >= 97.0 {
|
||||
blz -= 97.0
|
||||
}
|
||||
kontonr *= 1000000.0
|
||||
kontonr += 131400.0
|
||||
for kontonr >= 88529281.0 {
|
||||
kontonr -= 88529281.0
|
||||
}
|
||||
for kontonr >= 97.0 {
|
||||
kontonr -= 97.0
|
||||
}
|
||||
pruefziffer = blz*62.0 + kontonr
|
||||
for pruefziffer >= 97.0 {
|
||||
pruefziffer -= 97.0
|
||||
}
|
||||
pruefziffer = 98.0 - pruefziffer
|
||||
return pruefziffer
|
||||
}
|
Reference in New Issue
Block a user