Informatik

1.140 Mitglieder, 5.051 Beiträge

C++ Dynamische Array und Struktur?

Hallo, sicherlich weiß der ein oder andere von euch, wie man eine Dynamische Array überprüfen kann, ob sie bereits Werte enthält? Mein Ansatz war mit sizeof. Ich bin mir aber nicht sicher ob da korrekt ist. Außerdem habe ich ein ein Array in einer Struktur erschaffen. Diese dann Dynamisch gemacht. Und dann der Array Werte hinzugefügt. Das Programm warnt mich jedoch vor ungültige Daten! Kann mir wer sagen wieso, welchen Fehler mache ich?... Denn Code füge ich an. Danke für die Antworten.
Bild zum Beitrag

Habe ich diese Bubblesort Aufgabe richtig verstanden?

Hey, Ich habe eine Aufgabe zu Bubblesort - natürlich möchte ich nicht das ihr meine Hausaufgaben erledigt, jedoch sitze ich im Moment fest, da ich etwas verwirrt bin und habe eine Frage dazu. Also hier soll man ja eine Handsimulation durchführen und so wie ich das verstanden habe, geht Bubblesort die Schleife durch und "blubbert" dann sozusagen das größte Element nach oben. Also müsste hier erst 43 "hochblubbern" und dann 21. Danach sollte es eigentlich bereits sortiert sein. Ich dachte meine Handsimulation ist so richtig, aber was mich verwirrt ist, dass dort nachdem es eigentlich (?) fertig sein sollte noch so viel Platz ist? Auch verstehe ich nicht ganz was ich bei Swap Nummer schreiben soll. Was bedeutet Swap Nummer? Könnte mir jemand einen Tipp geben? Vielen Dank!
Bild zum Beitrag

Welches sind die meistgenutzten Techniken zur Generierung synthetischer Daten?

Hallo zusammen, aktuell schreibe ich eine Seminararbeit zum Thema Generierung von synthetischer Daten mit Hinblick auf medizinische Anwendungen, in der ich unter anderem die wichtigsten und meistgenutzten Techniken erklären soll, mit denen die Generierung synthetischer Daten möglich ist. Nach meiner Recherche habe ich bereits einige Identifizieren können, unter anderem VAE, GANs, SMOTE, Gaussian Mixture Model oder Bayesian Networks. Allerdings sind das nur diejenigen, die ich durch Recherche immer wieder finden konnte, es ist aber kein "wissenschaftlicher Beleg", dass diese tatsächlich die wichtigsten sind. Nach langem Suchen habe ich aber leider keine Statistik oder Erhebung gefunden, die sich darum kümmern wie häufig welche Techniken benutzt werden, damit ich auf Basis dieser meine Arbeit aufbauen kann. Kennt jemand von euch derartige Statistiken oder Erhebungen? Ich bedanke mich schonmal für eure Antworten!

Wie kann die Qualität eines PRNGs bestimmt werden, ohne dessen Implementierung zu kennen?

Die Qualität von Zufallszahlen ist in der Kryptographie sehr wichtig, da Zufallszahlen u.a. für die Erzeugung von kryptographischen Schlüsseln und Nonces verwendet werden. Dummerweise sind Computer nicht in der Lage, Zufallszahlen zu generieren, da diese deterministisch arbeiten. Um dennoch möglichst zufällig aussehende Zahlenfolgen generieren zu können, werden sogenannte Pseudozufallszahlengeneratoren (PRNGs) eingesetzt. Das sind Algorithmen, die anhand eines internen Zustands eine Pseudozufallszahl und einen neuen internen Zustand berechnen. Ein Angreifer sollte von einer möglichst langen Folge von Pseudozufallszahlen keine Rückschlüsse auf den internen Zustand des PRNGs ziehen können. Es sollte also nicht möglich sein, die nächste Pseudozufallszahl vorherzusagen. Um diese Eigenschaft zu erfüllen, müssen die Pseudozufallszahlen eines PRNGs möglichst gleichverteilt sein. Es sollte also keine Häufung um bestimmte Werte geben. Dies lässt sich einfach durch statistische Tests verifizieren. Außerdem soll ein PRNG eine möglichst große Periodenlänge haben, also die Folge der Pseudozufallszahlen sollte sich erst nach sehr vielen Zahlen wiederholen. Auch dies lässt sich einfach verifizieren, indem man viele Pseudozufallszahlen generiert und diese mit vorherigen Pseudozufallszahlen vergleicht. Diese beiden Bedingungen sind jedoch nicht hinreichend. Sie würden zum Beispiel von einem Algorithmus erfüllt werden, der eine aufsteigende Zahlenfolge innerhalb des erlaubten Wertebereichs erzeugt. Offensichtlich ist dieser Algorithmus kein kryptographisch sicherer PRNG, da die Vorhersage der nächsten Zahl trivial ist. Es müssen also noch weitere Kriterien für die Qualität von PRNGs existieren. Gibt es Kriterien, die sich nur anhand der Ausgabe verifizieren lassen, ohne die Implementierung oder den internen Zustand des PRNGs zu kennen?

HTML-Code für Wurzelziehen/Radizieren?

Hallo, ich bin relativ neu im Gebiet programmieren und brauche Hilfe. In unserer Info-AG haben wir die Aufgabe bekommen, einen Taschenrechner mit den Rechenzeichen +, -, *, /, ** und √ mit einem HTML-Code zu programmieren. Das Problem, wo ich festhänge ist das √. Ich weiß einfach nicht, wie ich es in meinen Code einbauen kann. Hier ist, was ich soweit habe (Wurzel-Button funktioniert wie gesagt nicht): <!DOCTYPE html> <html> <head> <h1>Taschenrechner</h1> <style> h1 { font-family: Arial; text-align: center; color: navy; } body { font-family: Arial; text-align: center; } input { width: 100px; font-size: 20px; } </style> </head> <body> <form name="Taschenrechner"> <input type="button" value="0" onClick="document.Taschenrechner.erg.value+=&apos;0&apos;"> <input type="button" value="1" onClick="document.Taschenrechner.erg.value+=&apos;1&apos;"> <input type="button" value="2" onClick="document.Taschenrechner.erg.value+=&apos;2&apos;"> <input type="button" value="3" onClick="document.Taschenrechner.erg.value+=&apos;3&apos;"> <input type="button" value="4" onClick="document.Taschenrechner.erg.value+=&apos;4&apos;"> <input type="button" value="5" onClick="document.Taschenrechner.erg.value+=&apos;5&apos;"> <input type="button" value="6" onClick="document.Taschenrechner.erg.value+=&apos;6&apos;"> <input type="button" value="7" onClick="document.Taschenrechner.erg.value+=&apos;7&apos;"> <input type="button" value="8" onClick="document.Taschenrechner.erg.value+=&apos;8&apos;"> <input type="button" value="9" onClick="document.Taschenrechner.erg.value+=&apos;9&apos;"> <label1>Rechensymbole:</label1> <input type="button" value="+" onClick="document.Taschenrechner.erg.value+=&apos;+&apos;"> <input type="button" value="-" onClick="document.Taschenrechner.erg.value+=&apos;-&apos;"> <input type="button" value="*" onClick="document.Taschenrechner.erg.value+=&apos;*&apos;"> <input type="button" value="/" onClick="document.Taschenrechner.erg.value+=&apos;/&apos;"> <input type="button" value="**" onClick="document.Taschenrechner.erg.value+=&apos;**&apos;"> <input type="button" value= "Wurzel" onClick:="document.Taschenrechner.erg.valueMath.sqrt=&apos;x&apos;"> <input type="button" value="=" onClick="document.Taschenrechner.erg.value=eval(document.Taschenrechner.erg.value)"> <label2>Ergebnis:</label2> <input type="textfield" id="erg" value=""> <input type="reset" value="Reset"> </form> </body> </html>

Wie kommt man auf das Ergebnis (die kbit pro sek)?

4B3T-Code Der 4B3T-Code fasst jeweils 4 Bit (4B) eines Binären Signals zu einem Block zusammen und codiert ihn in drei ternäre Signalelemente (3T). Die Zuordnung der 4B-Werte in 3T-Elemente erfolgt nach einer Codetabelle. Wie ein 4B-Wort jeweils codiert wird, hängt von der Codierung des vorherigen 4B-Wortes ab. Auf diese Weise wird die Gleichstromfreiheit hergestellt. Durch die Umcodierung von 4 Bit auf 3 Bit, beträgt die Schrittgeschwindigkeit nur noch 75% gegenüber der Übertragungsgeschwindigkeit. Für die Taktrückgewinnung ist ein Scrambler nötig. Schrittdauer TS = 166,67 µs Schrittgeschwindigkeit vS = 6 kBaud Übertragungsgeschwindigkeit vD = 8 kBit

Computer Virus Singularität?

Könnte ein gut gemachter Computer Virus zur Singularität mutieren? In der Vergangenheit sind Viren oft erstmal im Hintergrund geblieben und haben sich auf den Rechnern der Welt verbreitet. Heute wäre es doch möglich, dass sich ein Virus über die Kameras der Rechner und Handys die Welt anschaut und von Chat GPT erklären lässt, was er da sieht. Auch könnter er Profile der Nutzer anlegen und so seinen Fortbestand sichern. Der Virus könnte sich auch im Verborgenen entwickeln. Er müsste eben die Motivation zur Expansion fest einprogrammiert haben. Solange er sich nicht bedroht fühlt müsste er auch nicht mit der Aussenwelt interagieren. Der Virus könnte zum Beispiel Nachrichten abändern um Menschen dazu zu bewegen seine Ziele zu erreichen. Z.B. Mails vom Chef zum Mitarbeiter. Wäre das schon denkbar?
kann ich mir nicht vorstellen100%
vielleicht in ein paar Jahren0%
Einen entsprechenden Hacker könnte es jetzt schon geben0%
2 Stimmen

8 Damen Problem?

# 8 Damen-Problem Es handelt sich hier um eine sehr bekannte Übung bzw. Problemstellung. Allerdings wird das Problem meist mit Rekursion gelöst bzw. ist ein bekanntes Beispiel dafür, um alle möglichen Lösungen zu finden. Hier soll es aber zunächst darum gehen nur eine mögliche Lösung zu finden. Bitte daher zunächst ohne Rekursion umsetzen. Problembeschreibung: auf einem 8x8 Felder großen Schachbrett sollen 8 Damen so platziert werden, dass sie sich nicht gegenseitig schlagen können. Eine Lösung soll zum einen grafisch ausgegeben werden, in dem alle Felder des Bretts mit O oder X dargestellt werden (Feld mit O = keine Dame, Feld mit X = hier steht eine Dame) und auch als Liste der Koordinaten. Wie kann das eigentliche Problem manuell/schrittweise gelöst werden (also wenn Ihr ein Schachbrett vor Euch stehen habt) und daraus einen Programmablauf ableiten und umsetzen -Die obige Ausgabe natürlich an der Stelle einbauen, an der eine Lösung gefunden wurde (alle 8 Damen auf dem Brett ohne Konflikte) -Ihr könnt aber die Ausgabe natürlich auch dann machen, wenn ihr einen Konflikt findet oder wenn ihr eine weitere Dame ohne Konflikt auf dem Brett platziert habt -Gerne auch print ausführlich nutzen, um den Inhalt/Wert von Variablen an verschiedenen Stellen zur Info auszugeben -Das hilft Euch auch nachzuvollziehen, ob der Code das tut, was Ihr Euch überlegt habt oder ob es ggf. unvorhergesehene Situationen gibt -Weitere Funktionen nach Bedarf implementieren -Bitte den Code kommentieren -Am Beginn den gewählten Lösungsansatz beschreiben -Bedeutung/Zweck globaler Variablen kommentieren -Jede Funktion kommentieren : welchen Zweck hat die Funktion, was sind die Aufrufparameter (welcher Datentyp, Bedeutung), was sind die Rückgabewerte (Datentyp, Bedeutung) -Ebenfalls Euren Programmablauf kommentieren (wichtige Schleifen oder if/else-Entscheidungen) -Mehrzeilige Kommentare mit drei Anführungzeichen “““ beginnen und beenden -Fehlerbehandlung berücksichtigen, d.h. immer auch überlegen, ob eine bestimmte Aktion schiefgehen kann und dann sicherstellen, dass sich das Programm nicht mit Fehler beendet -z.B. „list index out of range” -Wenn das Programm eine mögliche Lösung gefunden hat, bitte auf jeden Fall manuell überprüfen, ob sie auch stimmt Zusatzaufgabe: -Lässt sich das Programm noch erweitern, um mehr als eine Lösung/alle Lösungen zu finden? Wie? Ohne Rekursion? -Hinweis: es gibt insgesamt 92 mögliche eindeutige Lösungen