Forum: Mikrocontroller und Digitale Elektronik Benötige Hilfe bei Gleichung


von Balko (Gast)


Lesenswert?

Hallo zusammen!
Wollte nachfragen, ob jemand folgende Gleichung für mich vereinfachen 
kann?
Ist nämlich leider schon lange her seit dem ich die letzte Gleichung 
gelöst habe...

y= a&(nicht)b oder a&b&(nicht)c oder a&b&c oder (nicht)a&b&c oder 
a&(nicht)b&(nicht)c

von Kai Klaas (Gast)


Lesenswert?

Y=a

von nd (Gast)


Lesenswert?

das ist nicht dein ernst oder ??

von Sven P. (Gast)


Lesenswert?

y= a&(nicht)b oder a&b&(nicht)c oder a&b&c oder (nicht)a&b&c oder
a&(nicht)b&(nicht)c
1
a  b  c  |  y
2
0  0  0  |  0
3
0  0  1  |  0
4
0  1  0  |  0
5
0  1  1  |  1
6
1  0  0  |  1
7
1  0  1  |  1
8
1  1  0  |  1
9
1  1  1  |  1

y = a + b*c
Oder hab ich mich irgendwo vertan?

von Kai Klaas (Gast)


Lesenswert?

Nee, Y=1, oder? Auch schon lange nicht gemacht...

Kai Klaas

von karadur (Gast)


Lesenswert?

Hallo

ist zwar schon lange her: Y= A oder !ABC

von Sven P. (Gast)


Lesenswert?

Wobei man sich das !A schenken kann (Absorption).

von karadur (Gast)


Lesenswert?

Korrektur: Sven P. hat Recht.

von Kai Klaas (Gast)


Lesenswert?

Y=a + (nicht)a&b&c, so jetzt. Peinlich...

von Walter (Gast)


Lesenswert?

sven und karadur meinen das gleiche ...
svens ist etwas kürzer ...

von Walter (Gast)


Lesenswert?

ganz schön was los hier ..

von Sunrise (Gast)


Lesenswert?

Gerade gerechnet:

Y = A müsste die richtige Antwort sein.

von Kai Klaas (Gast)


Lesenswert?

>Y = A müsste die richtige Antwort sein

Hatte ich auch zunächst falsch: Die zwei letzten Terme sind nicht 1!

Kai Klaas

von Sunrise (Gast)


Lesenswert?

Mal rechnen:

^ bedeutet, dass der folgende Operand negiert ist

* ist Konjunktion

+ ist Disjunktion


Y =  a * ^b + a  b  ^c + a  b  c + ^a  b  c + a * ^b * ^c

  = a * (^b + b * ^c + b * c + ^b * ^c) + ^a  b  c

  = a * (^b + b + ^b * ^c) + ^a  b  c

  = a + ^a  b  c

(ich hatte den letzten Term unterschlagen ;-)

von Sunrise (Gast)


Lesenswert?

Die Operatoren hat die Forensoftware verstümmelt ;-)

von Gerhard (Gast)


Lesenswert?

habs nachgerechnet.

Ergebnis: Y= a oder b&c = a+b*c

ich gebe Sven meine Stimme

von Gast (Gast)


Lesenswert?

Mein KV-Diagramm sagt auch Y=a

von Simon K. (simon) Benutzerseite


Lesenswert?

Sven P. schrieb:
> y = a + b*c
> Oder hab ich mich irgendwo vertan?

Stimmt nicht für a = b = c = 1 :-)

von Sven P. (Gast)


Lesenswert?

Simon K. schrieb:
> Sven P. schrieb:
>> y = a + b*c
>> Oder hab ich mich irgendwo vertan?
>
> Stimmt nicht für a = b = c = 1 :-)

y= a&(nicht)b oder a&b&(nicht)c oder a&b&c oder (nicht)a&b&c oder
a&(nicht)b&(nicht)c

Schöner:
1
y = 
2
  a * /b +
3
  a * b * /c +
4
  a * b * c +
5
  /a * b * c +
6
  a * /b * /c

a = b = c = 1 => y = 1


Ich sagte:
y = a + b*c
a = b = c = 1 => y = 1

Was stimmt nicht?


KV-Diagramm:
1
        b   b
2
  -----------------
3
  | 0 | 0 | 1 | 0 |
4
  -----------------
5
a | 1 | 1 | 1 | 1 |
6
  -----------------
7
            c   c

Sagt mir: y = a + b*c

von Simon K. (simon) Benutzerseite


Lesenswert?

y = a + b*c = 1 + 1*1 = 2! ;)

von Sven P. (Gast)


Lesenswert?

au wei.

von Michael (Gast)


Lesenswert?

Also ich habe es eben auch manuell aufgelistet und kam auf das gleiche 
Diagramm wie schon um 19:06 von Sven P. aufgeführt. Somit ist Y immer 1, 
wenn a = 1 ist, außerdem aber auch 1, wenn b UND c gleich 1 sind. Oder 
eben, wie schon u.a. um 19:29 aufgeführt wurde:
Y = a oder (b&c) // Klammern nur noch stärkeren Verdeutlichung :-)

von Gast (Gast)


Lesenswert?

ich sehe auch

Y = a oder (b&c)

als richtige Lösung. Allerdings frage ich mich, nach welcher booleschen 
oder de Morgan'schen Regel gilt:

a + /a * b == a + b * c

diese Vereinfachung ist korrekt, aber welche Regel drückt dies aus?

von Walter (Gast)


Lesenswert?

die Aussage war A oder !ABC == A oder BC

deine Formulierung ist ein bißchen unsinnig (Schreibfehler?):
a + /a * b == a + b * c

von Kai Klaas (Gast)


Lesenswert?

Wegen dem Absorptionsgesetz gilt beispielsweise

a = a + a & b & c.

Deswegen kannst du das erste "a" in

Y = a + /a & b & c

durch "a + a & b & c" ersetzen und so zusammenfassen:

Y = a + /a & b & c = a + a & b & c + /a & b & c = a + (a + /a) & b & c = 
a + b & c

"+" heißt hier "oder", "&" heißt "und".


Kai Klaas

von Michael G. (linuxgeek) Benutzerseite


Lesenswert?

Also gut, nochmal:

> expr := BooleanSimplify( (a &and &not b) &or (a &and b &and &not c) &or (a
> &and b &and c) &or (&not a &and b &and c) &or (a &and &not b &and &not c));

 expr := a &or (b &and c)

> tt := TruthTable(expr, [a, b, c], form=MOD2);

  tt := TABLE([(0, 0, 1) = 0,
               (0, 1, 1) = 1,
               (1, 1, 0) = 1,
               (0, 0, 0) = 0,
               (1, 0, 0) = 1,
               (0, 1, 0) = 0,
               (1, 1, 1) = 1,
               (1, 0, 1) = 1])

Die Tabelle sollte sich nun exakt mit der urspruenglichen decken... und 
das tut sie auch! Passt jetzt ;)

Sieht man ja an der Tabelle: Immer wenn a gesetzt ist, ist auch y wahr, 
oder aber halt wenn b und c gesetzt sind. Haku hatte also recht mit 
seinem Post ;)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.