index — ti25-glauchau-code @ 23c14956042998dc03f6c03c44d76fd9b2c932f6

Meine Lösungen (oder auch nicht) für die Programmieraufgaben in der TI25 an der Staatlichen Studienakademie Glauchau

gpt/2025-10-14/boolische_funktionen.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
 52
 53
 54
 55
 56
package main

import (
	"fmt"
)

func createArr(nptr *int) *[][]int {
	arr := make([][]int, (1 << *nptr))
	for i := range arr {
		arr[i] = make([]int, *nptr)
	}

	for row := 1; row < len(arr); row++ {
		copy(arr[row], arr[row-1])
		column:
		for column := range arr[row]{
			if arr[row][column] == 0 {
				arr[row][column] = 1
				break column
			} else {
				arr[row][column] = 0
			}
		}
	}
	return &arr
}

func konjunktion(arrptr *[][]int) *[4]int {
	var result [4]int
	for row := range *arrptr {
		result[row] = (*arrptr)[row][0]*(*arrptr)[row][1]
	}

	return &result
}

func xor(arrptr *[][]int) *[4]int {
	var result [4]int
	for row := range *arrptr {
		result[row] = ((*arrptr)[row][0]+(*arrptr)[row][1]) % 2
	}

	return &result
}

func main() {
	n := 2

	arrptr := createArr(&n)
	fmt.Println(*arrptr)	

	konjunktionptr := konjunktion(arrptr)
	xorptr := xor(arrptr)
	fmt.Printf("konjunktion: %d\nxor: %d\n", *konjunktionptr, *xorptr)
}