Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Theoretische Informatik (http://www.informatikerboard.de/board/board.php?boardid=5)
--- Codes u. Codewörter lösen (http://www.informatikerboard.de/board/thread.php?threadid=2483)


Geschrieben von Shizmo am 16.10.2015 um 18:16:

  Codes u. Codewörter lösen

Hallo,

ich sitz hier vor 5 Aufgaben (Fach Digitale Rechenanlagen), die wir bis nächste Woche schaffen sollten und habe davon absolut keinen Plan. Wir sind es noch nicht mal durchgegangen, also habe ich auch keine Unterlagen. Wahrscheinlich gehen wir es am MO durch, allerdings muss ich schon am DI damit fertig sein und bezweifle dass ich es so schnell hin bekomme, deshalb frage ich einfach mal euch.

Würde mich freuen, wenn ihr mir bei ein paar Sachen helfen könntet und evtl auch ein bisschen erklären.

Vielen Dank schon mal und viel Spaß verwirrt Zunge raus



Geschrieben von xyz am 16.10.2015 um 19:36:

 

Soll ich dir noch weitere Foren nennen, in denen Du deine Fragen ohne eigene Ansätze stellen kannst? Oder reichen dir die jetzigen aus? Ansonsten gilt das, was dir auch schon im MB gesagt wurde.



Geschrieben von eulerscheZahl am 16.10.2015 um 20:00:

 

10a) Für ein Zeichen hast du [latex]|A|[/latex] Möglichkeiten. Da jedes Zeichen unabhängig voneinander gewählt werden kann, gibt das [latex]|A|^n[/latex]
b) [latex]\sum_{i=0}^n{|A|^i} = \frac{|A|^{n+1}-1}{|A|-1}[/latex]
c) [latex]|A \cup B|^{m+n}[/latex]
d) [latex]|A|^n \cdot |B|^m[/latex]
11) Ich kann kein Problem erkennen, c(32) würde nicht gehen, da 32=2^5, aber nur Potenzen bis 4 zugelassen sind.
12)Es gibt folgende Möglichkeiten(v=Vokal, k=Konsonant): vvv, vvk, vkv, kvv, kvk.
Also an Möglichkeiten: 5*5*5+5*5*21+5*21*5+21*5*5+21*5*21=3905
13)
code:
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:
def golomb(M,n):
	l=log(M,2)
	q=n//M
	r=n-q*M
	signs = [0]*q
	signs.append(1)
	for k in range(l-1,-1,-1):
		signs.append(int(floor(r*2^-k) % 2))
	return ''.join([str(x) for x in signs])

for n in [0,1,2,3,4,6,10,20]:
	for M in [1,2,4]:
		print "n=" + str(n) + "   M=" + str(M) + "   " + str(golomb(M,n))


n=0   M=1   1
n=0   M=2   10
n=0   M=4   100
n=1   M=1   01
n=1   M=2   11
n=1   M=4   101
n=2   M=1   001
n=2   M=2   010
n=2   M=4   110
n=3   M=1   0001
n=3   M=2   011
n=3   M=4   111
n=4   M=1   00001
n=4   M=2   0010
n=4   M=4   0100
n=6   M=1   0000001
n=6   M=2   00010
n=6   M=4   0110
n=10   M=1   00000000001
n=10   M=2   0000010
n=10   M=4   00110
n=20   M=1   000000000000000000001
n=20   M=2   000000000010
n=20   M=4   00000100


14)
code:
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:
def c(a):
	num = 0
	for k in range(0, len(a)):
		num += a[k] * fibonacci(k+2)
	return num

sage: c([1,0,1,0,1,0,1])
33
sage: c([0,1,0,1,0,1,0,1])
54

for i in range(1, 1000, 2): #nur ungerade Zahlen -> keine 0 am Ende
	bits = []
	num = bin(i)[2:]
	while len(num) > 0:
		bits.append(ord(num[0])-ord('0'))
		num = num[1:]
	while c(bits) < 73:
		bits.insert(0, 0)
	if c(bits) == 73: print bits

[0, 0, 0, 1, 0, 1, 1, 1]
[0, 0, 0, 1, 0, 1, 0, 0, 1]
[0, 1, 1, 0, 0, 1, 1, 1]
[0, 1, 1, 1, 1, 0, 1, 1]
[0, 1, 1, 0, 0, 1, 0, 0, 1]
[0, 1, 1, 1, 1, 0, 0, 0, 1]



Geschrieben von Shizmo am 18.10.2015 um 11:21:

 

Großartig, vielen Dank, warst mir eine große Hilfe!!! Gott Gott


Forensoftware: Burning Board, entwickelt von WoltLab GmbH