Die Regel von Sarrus gilt ausschließlich für 3x3-Matrizen. (Denn sie ist nichts Anderes als die Leibnizformel für n = 3.)

Nichtsdestotrotz: Die Determinante der 2x2 Einsmatrix ist 0.

...zur Antwort

Im Allgemeinen ist das keine echte Inklusion. Betrachte zum Beispiel A = B oder den Fall, dass eine der beiden Mengen die leere Menge ist.

Du möchtest zeigen:



für beliebige Mengen A und B.

Du möchtest also eine Inklusionsbeziehung zweier Mengen beweisen. Dazu nimmst du an, dass das Element in der linken Menge ist, beobachtest, was das genau bedeutet und folgerst dann daraus, dass das Element auch in der rechten Menge ist.

Versuch es damit vielleicht erstmal selbst. Im Folgenden findest du eine ausführliche Lösung.

Los gehts:



Was heißt das nun genau? Ein Element ist in der Vereinigung zweier Mengen, wenn es in (mindestens) einer der beiden Mengen ist.



Jetzt könnten wir eine Fallunterscheidung machen. Da die Bedingung symmetrisch ist, können wir uns aber auch ohne Einschränkung für eine der beiden Möglichkeiten entscheiden - der Beweis der anderen funktioniert dann völlig analog.



Jetzt wollen wir zeigen, dass die rechte Seite folgt. M ist eine Teilmenge von A. Dann ist M natürlich auch offenbar eine Teilmenge der Vereinigung von A und B.



Wir haben gezeigt:



Das ist genau der Beweis einer Mengeninklusion.



...zur Antwort

Warum wäre das interessant? Du betrachtest ja C^3 als IR-Vektorraum. Als C-Vektorraum hätte er die Dimension 3. Insofern alles wunderbar.

...zur Antwort

Unter Verwendung der doppelten logischen Negation ist die Identität einfaches Anwenden der Definition. Für eine Menge M ist



die Definition des Komplements. Für das „Doppel-Komplement“ kann man damit



äquivalent umformen. Wann ist x nun im Komplement von M? Genau dann, wenn x eben nicht in M ist, also geht es weiter mit



und unter Verwendung der Identität für die doppelte logische Negation ergibt sich dann



und wenn man sich hier Anfang und Ende genau anschaut, sieht man, dass das genau die zu beweisende Aussage ist:



heißt genauso viel wie



und genau das war zu zeigen.

[Ich habe jetzt hier vor allem versucht, die Anschauung rüberzubringen. Dabei sind einige Schritte nicht ganz formal sauber, weil ich sie implizit um der Intuition willen als „klar“ abgetan habe. In einem formal sauberen Beweis würde man die beiden Inklusionen



also die beiden Implikationen



zeigen (womit man auch bei der Äquivalenz von oben ankommt). Das ist auch allgemein die häufigste Beweismethode beim Zeigen von Mengen-Gleichheiten.]

...zur Antwort

Es geht wohl um statistische Tests. Ein Fehler 1. Art ist eine irrtümliche Ablehnung der Hypothese, d.h. die Hypothese ist hier eigentlich wahr, wird aber trotzdem abgelehnt. Damit wurde ein Fehler gemacht - ein Fehler 1. Art (denn idealerweise sollte eine wahre Hypothese ja durch Stichproben auch immer bestätigt werden). Das ist in der Regel der Fehler, dessen Risiko man minimal halten möchte.

Ein Fehler 2. Art ist genau der andere Fehler, nämlich dass die Hypothese angenommen wird, obwohl sie falsch ist.

Prinzipiell kann man die Rollen vom Fehler 1. und 2. Art umdrehen, indem man einfach die Nullhypothese umdreht. Unter Anderem aus Konsistenzgründen wählt man die Nullhypothese aber in der Regel explizit so, dass der Fehler 1. Art der gravierendere ist.

...zur Antwort

Eine sinnvolle Lösung wäre 93.

Es werden immer die beiden vorherigen Schritte addiert, beginnend mit 7 und 7 und der Startzahl 9.

[9    | + 7]
[16   | + 7]
 23   | + (7 + 7) = 14
 37   | + (7 + 14) = 21
 58   | + (14 + 21) = 35
 93
...zur Antwort

Genau, die Definitionsmenge ist im Grunde einfach eine Eigenschaft einer Funktion, die man festlegen kann wie man möchte. Wenn ich meine Funktion nur von 2 bis 5 definieren will, kann ich das einfach machen.

Warum man das macht, hängt von der Aufgabe ab. Im Schulkontext wahrscheinlich, um einen Rahmen zu geben, auf welchen Bereich sich der Schüler konzentrieren soll, auch wie du sagst, wenn der Graph gezeichnet werden soll.

...zur Antwort

Die zu beweisende Aussage ist:



Zunächst von links nach rechts. Wir zeigen zwei Inklusionen und damit die Gleichheit. Gelte also die linke Seite.



Passt. Analog die andere Inklusion.

Für die Rückrichtung dasselbe Verfahren: Überlege dir,

  1. was du gegeben hast,
  2. was du zeigen sollst und
  3. wie du die Voraussetzung für den Schluss verwenden kannst.

Alle Teile des Beweises sind einfache Schlüsse - vermutlich liegt das Augenmerk bei dieser Aufgabe eher darauf, formal sauber zu argumentieren. Der Beweis selbst ist elementar.

Kriegst du die fehlende Inklusion und die Rückrichtung hin? Ich helfe dir gerne dabei.

...zur Antwort

Wie kommst du darauf, dass es einen Vorzeichenfehler geben muss? Die Umformungen stimmen, nur hast du eben damit nur eine triviale Aussage gemacht, weil sich -cos(x) sin(x) und sin(x) cos(x) gegenseitig wegheben und die triviale Gleichheit stehen bleibt.

Heißt nur, dass sich so mit partieller Integration hier das Integral nicht lösen lässt, aber falsch ist es nicht.

...zur Antwort

Schlicht Geometrie. In der komplexen Ebene lassen sich viele geometrische Überlegungen rechnerisch sauber beweisen.

Als Beispiel der Satz des Thales.

Geometrisch: Ein Dreieck, das von einem Halbkreis umschrieben wird, hat immer einen rechten Winkel, der auf dem Umfang des Halbkreises liegt.

Rechnerisch: Für



gilt:



...zur Antwort

E_n ist die Einheitsmatrix der Dimension n (bzw. n x n), hat also n Zeilen und n Spalten. Für



ist



also die n x n-Matrix mit 1 auf der Diagonalen und 0 sonst.

Damit lautet die erste Zeile für n = 10 zum Beispiel 1 0 0 0 0 0 0 0 0 0.

...zur Antwort

Der Begriff „Gesetz“ ist im formalen Kontext ein bisschen irreführend. Kommutativität, Assoziativität und Distributivität sind Eigenschaften, die bestimmte algebraische Strukturen erfüllen können. In der Regel dienen sie als Forderung an bestimmte Strukturen.

Eine Gruppe ist beispielsweise definiert als ein Paar (G, *), bestehend aus einer Menge G und einer auf dieser Menge definierten Verknüpfung/Relation *, sodass gilt:

  • * ist assoziativ, d.h. für beliebige a, b, c aus G ist (a * b) * c = a * (b * c),
  • G enthält ein bzgl. * neutrales Element und
  • zu jedem Element in G gibt es ein inverses in G.

Hier ist Assoziativität also eine Bedingung, die eine Verknüpfung über der Menge G erfüllen muss, damit (G, *) tatsächlich die Definition einer Gruppe erfüllt.

Umgekehrt gilt aber natürlich auch: Haben wir eine Gruppe G gegeben, also eine Menge G, von der wir wissen, dass sie die Definition einer Gruppe erfüllt, dann garantieren uns die definierenden Eigenschaften, dass G tatsächlich assoziativ ist. Hier könnte man eher von einem „Gesetz“ sprechen.

Eigentlich rührt der Name „Gesetz“ für Kommutativität, Assoziativität und Distributivität aus dem Schulkontext: Schüler kennen nur natürliche, ganze, rationale, reelle (und ggf. komplexe) Zahlen und lernen, dass diese Mengen kommutativ, assoziativ und distributiv sind - stur nach dem Motto „das ist so“.

Formal ist das aber natürlich überhaupt nicht trivial, aber nachdem Zahlenmengen in der Schule nicht explizit konstruiert, sondern eher halbscharig „definiert“ werden, ist man hier mit weiteren formellen Überlegungen ohnehin an der falschen Stelle.

...zur Antwort

Ein Leitsatz vorab: Lerne C++ erst, wenn du schon programmieren kannst.

Zunächst mal solltest du dir im Klaren darüber sein, dass komplexe Spiele wie WoW von zig Entwicklern über Jahre hinweg entwickelt werden. Der Wunsch, so ein Spiel allein zu entwickeln, ist - das muss man leider so klar sagen - illusorisch.

C++ ist eine Programmiersprache, die sich vor allem durch Hardwarenähe und Schnelligkeit auszeichnet und sich damit gut eignet, um komplexe Spiele zu entwickeln. Wofür sie sich nicht eignet: Als Anfängersprache, um programmieren zu lernen. Ich würde auch stark davon abraten, mit C++ anzufangen.

Die eierlegende Wollmilchsau unter den Programmiersprachen gibt es nicht. C++ ist schnell, hardwarenah, aber ziemlich komplex. Python zum Beispiel ist sehr einfach zu erlernen und es lassen sich bequem und unkompliziert viele Algorithmen umsetzen, ist aber vergleichsweise lahm (unperformant).

Kein Entwickler hat nur Sprache X gelernt und programmiert nur in dieser. Viel wichtiger als die Sprache ist es, grundlegende Programmierkonzepte (Abfragen, Schleifen, Methoden, Klassen, OOP etc.) und algorithmisches Denken zu lernen - dafür eignen sich hardwareferne Sprachen mehr, weil der Fokus auf dem tatsächlichen Programm und nicht auf der dahinterliegenden technischen Umsetzung und Interpretation liegt. Eine Sprache, die sich dafür gut eignet, ist Java.

Wenn du dann tatsächlich programmieren kannst (und nebenbei noch Java gelernt hast), kannst du deinen Fokus auf anderes legen und C++ lernen oder dich mit 3D-Programmierung beschäftigen oder oder oder. Aber sei dir dessen bewusst, dass Software Engineering mittlerweile aufgrund seines Umfangs sogar schon als eigener Studiengang angeboten wird.

Grundsätzlich ist es nicht schlecht, dass du bereits jetzt Entwicklungsziele hast und im Hinblick darauf programmieren lernen willst. Aber nur um dir ein Gefühl dafür zu geben: Zwischen jetzt, wo du anfängst, programmieren zu lernen und dem Zeitpunkt, ab dem du tatsächlich so weit bist, (einfache - wir sprechen nicht von WoW) 3D-Spiele zu entwickeln, liegen viele Jahre.

Gerade wenn du konkrete Ziele vor Augen hast, ist die Wahl der Sprache relativ einfach.

  • Apps entwickelt man in der Regel in Java/Kotlin (Android) bzw. in Swift (iOS). Das sind beides gute Anfängersprachen.
  • Aufwändige und komplexe 3D-Spiele (WoW/GTA/etc.) entwickelt man in der Regel in sehr hardwarenahen und performanten Sprachen wie eben C++. Das ist allerdings meines Erachtens keine sinnvolle Anfängersprache.
  • Zur Entwicklung von Webseiten unerlässlich ist es, HTML, CSS und JavaScript zu beherrschen. Tatsächlich benutzt wird aber in der Regel kein Plain JavaScript, sondern Frameworks im Frontend und Sprachen wie Java, Python, Scala o.Ä. im Backend. Das variiert tatsächlich stark.

So viel erstmal zum Allgemeinen.

Zwei spezifischere Sachen:

  1. Anwendungssoftware entwickelt man anders als Spiele, Spiele entwickelt man anders als Webseiten und Webseiten entwickelt man anders als Anwendungssoftware (wenn es sich nicht gerade um eine Webanwendung handelt). Du möchtest irgendwie alles können, was ein Softwareentwickler gerade überhaupt können kann, habe ich das Gefühl. Das ist in etwa so als würdest du jetzt beschließen, Chirurg zu werden. Das Ziel ist grundsätzlich erreichbar, aber nicht in naher Zukunft.
  2. "Ich lese in zisch Beiträgen, dass es dumm wäre eine eigene Engine zu programmieren. Dann lese ich aber wieder, dass es nicht möglich sei, mit der Unreal oder Unity-Engine sowas zu machen." Das stimmt auch beides. Für komplexe 3D-Spiele kann es durchaus angebracht sein, dass ein Unternehmen Hunderttausende von Euro in die Hand nimmt und selbst eine Engine entwickelt, die spezifisch auf ihren Anwendungszweck ausgerichtet ist. Der Vorteil an Unity ist die Vielfalt der Spiele, die man damit entwickeln kann. Jemand der nebenbei etwas Geld mit dem Programmieren von Spiel-Apps verdient, greift eher zu einer öffentlichen Engine als ein millionenschweres Unternehmen, das über viele Jahre ein riesiges 3D-Spiel entwickelt.

Fazit

Wenn du tatsächlich in diese Richtung gehen möchtest, "Spieleprogrammierer" und später vielleicht sogar unabhängiger Freelancer werden willst, dann studiere ein entsprechendes Fach (wenn du noch jung bist). Man kann sich zwar selbst programmieren beibringen, ein Laie wird sich aber in den seltensten Fällen autodidaktisch weiter fortbilden können als zu einem Halblaien. Nahezu jeder professionelle Programmierer/Softwareentwickler/Web-Entwickler hat ein einschlägiges Fach studiert. Das ist der normale Weg zum Erfolg.

...zur Antwort

Hier muss man sich tatsächlich einmal mehr klar machen, was hier Elemente des Vektorraums und was Skalare sind.

Das grundsätzliche Vorgehen ist hier wie folgt: Als potenziellen Vektorraum betrachten wir die ganzen Zahlen Z, Skalare kommen aus dem Körper F_2 = {0, 1}. Die Addition ist die übliche ganzer Zahlen und die Skalarmultiplikation ist händisch explizit durch



für alle Skalare festgelegt: Multiplizieren wir mit dem Skalar 0, ist das Ergebnis (unabhängig vom Vektor) 0, multiplizieren wir mit dem Skalar 1, ist das Ergebnis der entsprechende Vektor.

Man hätte den Beweis auch mit jeder anderen gerade Zahl (außer der 0) führen können, man hat sich hier eben für die 6 entschieden.

Wie kommen nun die verschiedenen Gleichheiten des Beweises zustande?

  1. Wir schreiben den Vektor 6 als Summe der beiden Vektoren 3 und 3. Das ist gerechtfertigt, weil wir gesagt haben, dass die Vektoraddition die übliche Addition ganzer Zahlen ist.
  2. Wir schreiben jeweils den Vektor 3 als Produkt aus dem Skalar 1 und dem Vektor 3. Das ist gerechtfertigt, weil die Skalarmultiplikation genau so definiert ist. Wichtig: Die 1 ist hier ein Skalar, also ein Element aus F_2, kein Vektor! Es handelt sich hier um ein Produkt aus einem Skalar und einem Vektor.
  3. Wir klammern die 3 aus. Das ist gerechtfertigt, weil Vektorräume per Definition distributiv sind. Auch hier ist wieder (1 + 1) ein Skalar (bzw. eine Summe zweier Skalare) und 3 ein Vektor.
  4. Wir verwenden die Gleichheit 1 + 1 = 0. So ist die Addition im Körper F_2 definiert.
  5. Wir verwenden die Definition der Skalarmultiplikation mit der 0: Die ist nach Voraussetzung definiert als 0.

Insgesamt haben wir also gezeigt: Wäre V_2 nun ein Vektorraum, wäre 6 = 0. Das ist aber ein Widerspruch.

Wichtig ist hier, dass man mit den Skalaren und Vektoren nicht durcheinander kommt. Ich habe dir hier mal die Vektoren rot und die Skalare blau hinterlegt:



Wie gesagt, mit 4, 8, 20 oder 236234 würde der Beweis genauso funktionieren.

...zur Antwort