PDA

View Full Version : 434


Ronnsn
15-04-2002, 13:41
Hallo!

Ich denke ich hab eine Lösung für das 434er

Bitte seht mal durch und bestätigt / korrigiert.

Danke!

==> http://members.aon.at/ronnsn/Bsp_434.txt

LG Ronnsn
(alle Angaben ohne Gewähr)

catwoman
15-04-2002, 20:05
ich denke du hast noch was vergessen: nämlich daß auch "96" nicht vorkommen darf.

nach meiner rechnung ergibt das dann 1038 passwörter, die nicht gültig sind.
>>edit: bin inzwischen auf eine andere lösung gekommen, sh. unten

danke & grüße
ines

Ronnsn
15-04-2002, 20:50
Original geschrieben von catwoman
.....nämlich daß auch "96" nicht vorkommen darf.
&& ......nach meiner rechnung ergibt das dann 1038 passwörter ...

... oh! ... DANKE!

habs gleich berücksichtigt
==> http://members.aon.at/ronnsn/Bsp_434_v2.txt

einzig weiteres Problem, dass ich jetzt auf 1142 nicht zulässige PW's komm.

- lieg ich da jetzt komplett falsch?

bitte sieh nochmal drüber

LG Ronnsn
(alle Angaben ohne Gewähr)

catwoman
16-04-2002, 21:31
ganz stimmts nicht, denke ich.

deine angabe:
macht in Summe
3 x ( 3x2x8x8 ) - (2x2) x 2 - 2 =

dazu meine anmerkung:
das letzte "-2" sollte ein +2 sein, weil das sind die passwörter, die "1996" enthalten. & die sollen ja zu den nicht möglichen/gültigen passwörtern dazugezählt werden.

ich komme auf 1140 nicht gültige passwörter.

also die 3x384 hab ich auch.
vielleicht ist es leichter, wenn wir das ganze als mengen betrachten (so wie's in der angabe gefordert ist).

|A| = ungültige passwörter mit "15" = 384
|B| = ungültige passwörter mit "04" = 384
|C| = ungültige passwörter mit "96" = 384
|D| = ungültige passwörter mit "1996" = 2
(soweit so gut, soweit so gleichlautend)
dann müssen wir die schnittmengen abziehen.
|A ∩ B| = möglichkeiten, daß A & B zusammenfallen = 2x2 ("1504", "0415" & das ganze umgekehrt = 4
|A ∩ C| = 4
|B ∩ C| = 4
|A ∩ D| = 0
|B ∩ D| = 0
|C ∩ D| = 2 (in den 2 möglichkeiten von "1996" ist "96" auch mit drinnen)
|A ∩ B ∩ C| = 0
|A ∩ B ∩ D| = 0
|B ∩ C ∩ D| = 0
|A ∩ B ∩ C ∩ D| = 0

das ganze ausgerechnet: 384+384+384+2-4-4-4-2 = 1140

was meint ihr??

danke & grüße
ines

nix_is
17-04-2002, 12:56
Original geschrieben von catwoman
ganz stimmts nicht, denke ich.

deine angabe:
macht in Summe
3 x ( 3x2x8x8 ) - (2x2) x 2 - 2 =

dazu meine anmerkung:
das letzte "-2" sollte ein +2 sein, weil das sind die passwörter, die "1996" enthalten. & die sollen ja zu den nicht möglichen/gültigen passwörtern dazugezählt werden.

dann aber mit klammern...
3x(3x2x8x8)-((2x2)x2+2)=
oder?

dornröschen
17-04-2002, 14:21
zu catwoman:
|A ∩ B| = möglichkeiten, daß A & B zusammenfallen = 2x2 ("1504", "0415" & das ganze umgekehrt = 4

gibt's da nicht noch mehr möglichkeiten
1504 0415
5104 4015
1540 0451
5140 4051

??????????????????
Dominik

und ih hätt glei noch eine frage wie kommst du auf

|A| = ungültige passwörter mit "15" = 384

ih kimm do auf viel mehr:
15.. -> ergibt 100 Zahlen
.15. -> 100
..15 -> 100
51.. -> 100
.51. -> 100
..51 -> 100
-------------------------
min. 600
ich hoff nicht daß ich noch was vergessen hab?
bin ich da falsch?

toxicum
17-04-2002, 14:43
also ich komm auf 1800 unzulässige Passwörter

diese Möglichkeiten gibt es

15xx x51x
51xx xx15
x15x xx51
04xx x40x
40xx xx04
x04x xx40
96xx x69x
69xx xx96
x96x xx69

(1996 6991 sind wie schon erwähnt bei 96 enthalten)

fürs x kommen 10 Ziffern in Frage (0...9) => d.h. 100 Möglichkeiten, macht in Summe 1800

dornröschen
17-04-2002, 14:53
aber du hast vergessen daß du zum beispiel
1504 zwei mal abgezogen hast!

ich glaub ich habs!
korrigierts mich

|A| = ungültige passwörter mit "15" = 600
|B| = ungültige passwörter mit "04" = 600
|C| = ungültige passwörter mit "96" = 600
|D| = ungültige passwörter mit "1996" = 2 (Kann ich aber ignorieren weil sie mit C vollkommen abgedeckt sind)

|A ∩ B| = 8
|A ∩ C| = 8
|B ∩ C| = 8
|A ∩ B ∩ C| = 0

=10000-(3*600)+(3*8)=8224

Seg
17-04-2002, 15:08
Ich das die gültigen Passwörter von einem Programm einmal abzählen lassen:

Ergebnis: Von insgesamt 10000 Passwörtern sind 8350 gültig und 1650 ungültig

Bekommt das jemand heraus?

toxicum
17-04-2002, 15:10
ups, ja da hast recht, muß ich nochmal kurz überdenken

Ronnsn
17-04-2002, 15:37
Original geschrieben von Seg
Ich das die gültigen Passwörter von einem Programm einmal abzählen lassen:

Ergebnis: Von insgesamt 10000 Passwörtern sind 8350 gültig und 1650 ungültig

Bekommt das jemand heraus?

nur so ne InteressensFrage:
wie hast du's vom Programm sicherstellen lassen,
dass es keine doppelten Lösungen zählt?

LG Ronnsn

Roli
17-04-2002, 15:41
Original geschrieben von Seg
Ich das die gültigen Passwörter von einem Programm einmal abzählen lassen:

Ergebnis: Von insgesamt 10000 Passwörtern sind 8350 gültig und 1650 ungültig

Bekommt das jemand heraus?

ja kriegs heraus!

du mußt beachten, daß sich 15 und 51 auch überschneiden können (gibt auch für 04 und 40 und 69 und 96!):
151.
.151
1551
515.
.515
5115
-> 42 Möglichkeiten

mfg
Roli

gck
17-04-2002, 15:54
perl -e 'for ($i=0;$i<10000;$i++) {printf "%.4d\n", $i;}' | grep -v 96 | grep -v 69 | grep -v 15 | grep -v 51 | grep -v 04 | grep -v 40 | grep -v 1996 | wc -w

gibt aber 8350 gültige Passwörter, also 10000-8350 = 1650 ungültige Passwörter. Das oben ist doch genau der Ausdruck, den wir brauchen, oder? (Alle 10000 aufschreiben, dann die mit "15" weg, dann die mit "51", usw..., und dann werden einfach die Worte gezählt, die das Aussieben überstanden haben....

ich versteh nicht ganz, wieso ihr beide meint, dass die verbleibenden beiden Stellen bei den 2el Teilworten nur noch Ziffern außer denen im Teilwort sein dürfen? Damit siebt ihr ja Passwörter wie 1015 nicht aus, weil an der ersten Stelle ja auch ein Einser steht...
ich denke eher, wir müssen die beiden Stellen halt fest lassen und die anderen beiden von allen 10 Ziffern durchlaufen lassen, dann die diejenigen, die mehrmals vorkommen, raushauen, aber das muss ich mir noch genauer anschauen...

EDIT: ups, seg hats auch schon gezählt: ja, das kommt bei mir auch raus, aber nicht rechnerisch :)

Roli
17-04-2002, 16:04
Alle möglichen Wörter: 10000
1.
A1 - "15"
A2 - "51"
A3 - "04"
A4 - "40"
A5 - "96"
A6 - "69"
bsp:
15..
.15.
..15
-> |A1|=|A2|=|A3|=|A4|=|A5|=|A6|=300

2.
151.
.151
1551
515.
.515
5115
-> 42 Möglichkeiten (gilt auch für 04 und 40, 96 und 69)
|A1 ∩ A2|=|A3 ∩ A4|=|A5 ∩ A6|=42

3.
Keine Überschneidende Teilwörter:
zb. 15 und 04:
1504 und 0415 -> 2 Möglichkeiten
|A1 ∩ A3|=|A1 ∩ A4|=|A1 ∩ A5|=|A1 ∩ A6|=2
|A2 ∩ A3|=|A2 ∩ A4|=|A2 ∩ A5|=|A2 ∩ A6|=2
|A3 ∩ A5|=|A3 ∩ A6|=2
|A4 ∩ A5|=|A4 ∩ A6|=2

4.
Alle anderen Durchschnitte der Teilwörter sind 0

=> 10000 - 6*300 + 3*42 + 12*2 = 8350

Roli

#!/usr/bin/perl
17-04-2002, 18:12
Original geschrieben von gck
perl -e 'for ($i=0;$i<10000;$i++) {printf "%.4d\n", $i;}' | grep -v 96 | grep -v 69 | grep -v 15 | grep -v 51 | grep -v 04 | grep -v 40 | grep -v 1996 | wc -w

Das oben ist doch genau der Ausdruck, den wir brauchen, oder?

hehe, ja das is er denk ich ;)

Ronin
17-04-2002, 21:18
@Roli.

mache grad das beispiel durch. und ist da nicht dein Punkt 2 schon in Punkt 1 inbegriffen.

also 151. (. ist eine ziffer 0-9) liegt doch schon in der möglichkeit 15.. (.. sind zwei ziffern 0-9).

ODER ???

Sam
17-04-2002, 21:25
Original geschrieben von Roli
Alle möglichen Wörter: 10000
1.
A1 - "15"
A2 - "51"
A3 - "04"
A4 - "40"
A5 - "96"
A6 - "69"
bsp:
15..
.15.
..15
-> |A1|=|A2|=|A3|=|A4|=|A5|=|A6|=300

2.
151.
.151
1551
515.
.515
5115
-> 42 Möglichkeiten (gilt auch für 04 und 40, 96 und 69)
|A1 ∩ A2|=|A3 ∩ A4|=|A5 ∩ A6|=42

3.
Keine Überschneidende Teilwörter:
zb. 15 und 04:
1504 und 0415 -> 2 Möglichkeiten
|A1 ∩ A3|=|A1 ∩ A4|=|A1 ∩ A5|=|A1 ∩ A6|=2
|A2 ∩ A3|=|A2 ∩ A4|=|A2 ∩ A5|=|A2 ∩ A6|=2
|A3 ∩ A5|=|A3 ∩ A6|=2
|A4 ∩ A5|=|A4 ∩ A6|=2

4.
Alle anderen Durchschnitte der Teilwörter sind 0

=> 10000 - 6*300 + 3*42 + 12*2 = 8350

Roli

Hab da eine kleine Frage: kann es sein, dass du bei Punkt 2 zB. die Zahl 1515 zweimal miteinbeziehst. Müssten es nicht 40 Möglichkeiten sein???? Bitte um Überprüfung (hoffe, dass ich dadurch keine Verwirrung stifte :) )

Roli
17-04-2002, 22:33
@Ronin

ja es stimmt, daß 151. bei punkt 1 schon inbegriffen ist.

Der Punkt wird bei 1. ja sogar 2 mal genommen bei 15.. und bei .51. und deshalb wird durch das Inklusions/Exklusionsprinzip dieser Punkt ja wieder abgezogen - hoffe das erklärts so einigermaßen

@Sam
also 1515 wird bei Punkt 2 nicht 2 mal miteinbezogen.
Ich glaub du hast dich verschaut - oder ich sehs nicht, was du meinst.
Außerdem behauptet mein Programm, daß es 8350 Möglichkeiten gibt ;)

Roli

steve
18-04-2002, 00:51
ich hab ein kurzes perl-script geschrieben, das alle möglichen passwörter einfach durch-brute-force-t. es kommt auf (edit)1650(/edit) Wörter, die nicht verwendet werden dürfen.

code: hier (http://home.pages.at/stefanm/stud/mathe2/bsp434-2.pl).

Roli
18-04-2002, 17:06
sorry es haten sich 2 fehler eingeschlichen, die sich beide wieder korrigierten!

habs erst kurz vor der Übung gesagt bekommen
Original geschrieben von Roli
Alle möglichen Wörter: 10000
1.
A1 - "15"
A2 - "51"
A3 - "04"
A4 - "40"
A5 - "96"
A6 - "69"
bsp:
15..
.15.
..15
-> |A1|=|A2|=|A3|=|A4|=|A5|=|A6|=300

15.. und ..15 enthalten beide das Wort 1515
-> |A1|=|A2|=|A3|=|A4|=|A5|=|A6|=300-1=299

2.
151.
.151
1551
515.
.515
5115
-> 42 Möglichkeiten (gilt auch für 04 und 40, 96 und 69)
|A1 ∩ A2|=|A3 ∩ A4|=|A5 ∩ A6|=42

@Sam hast recht
151. und .515 enthalten beide das Wort 1515 und
515. und .151 enthalten beide das Wort 5151
->|A1 ∩ A2|=|A3 ∩ A4|=|A5 ∩ A6|=40

3.
Keine Überschneidende Teilwörter:
zb. 15 und 04:
1504 und 0415 -> 2 Möglichkeiten
|A1 ∩ A3|=|A1 ∩ A4|=|A1 ∩ A5|=|A1 ∩ A6|=2
|A2 ∩ A3|=|A2 ∩ A4|=|A2 ∩ A5|=|A2 ∩ A6|=2
|A3 ∩ A5|=|A3 ∩ A6|=2
|A4 ∩ A5|=|A4 ∩ A6|=2

4.
Alle anderen Durchschnitte der Teilwörter sind 0

=> 10000 - 6*300 + 3*42 + 12*2 = 8350

=> 10000 - 6*299 + 3*40 + 12*2 = 8350

Das Ergebnis bleibt aber gleich

Roli

Seg
18-04-2002, 17:37
ad Roli

Ich wrürde die alte Version beibehalten, bei diesem wird so wie so alles abgezogen, was zuviel ist!!

Es gibt noch viele andere Überschneidungen, die Ihr nicht Du bei der 2. Version nicht berücksichtigt hast. Beachtet man alle, dann braucht man das Inklusions/Exklusions-Prinzip nicht verwenden!!

Roli
19-04-2002, 01:33
@ Seg
hab die Lösung, die da Urbanek kurz angedeutet hat, versucht nachzuvollziehen -> das is rausgekommen - i glaub es is einfacher zu durchschauen und es schleichen sich soweit ich weiß, keine solchen Fehler wie vorher ein.

@all
für die, die es interessiert

Urbanek-Lösung:
Menge A enthält alle Teilwörter am Anfang
Menge B enthält alle Teilwörter in der Mitte
Menge C enthält alle Teilwörter am Ende

1a. |A|
15..
51..
04..
40..
96..
69..
-> |A|=600

1b. |B|
.15.
.51.
.04.
.40.
.96.
.69.
-> |B|=600

1c. |C|
..15
..51
..04
..40
..96
..69
-> |C|=600

2a. |A∩B|
151.
515.
040.
404.
969.
696.
-> |A∩B|=60

2b. |B∩C|
.151
.515
.040
.404
.969
.696
-> |B∩C|=60

2c. |A∩C|
15.. kombiniert mit ..15,..51,..04,..40,..96,..69
51.. kombiniert mit ..15,..51,..04,..40,..96,..69
04.. kombiniert mit ..15,..51,..04,..40,..96,..69
40.. kombiniert mit ..15,..51,..04,..40,..96,..69
96.. kombiniert mit ..15,..51,..04,..40,..96,..69
69.. kombiniert mit ..15,..51,..04,..40,..96,..69
-> |A∩C|=6*6=36

3. |A∩B∩C|
1515
5151
0404
4040
6969
9696
|A∩B∩C|=6

-> 10000 - 3*600 + 2*60 + 36 - 6 = 8350

mfg
Roli