heyy ich habe ein Problem bei TCrush... in dem GameFieldElement Interface muss ich ja irgendwie die letzten 3 Methoden implementieren... in der Aufgabenstellung steht ja, dass man dazu eigene Klassen erstellen soll, aber ich verstehe irgendwie nicht wirklich wo dann was rein soll? Muss ich 3 separate Klassen erstellen die das Interface dann implementieren und dort die Methode schreiben? aber iwie muss ich dann ja mega oft die Methoden überschreiben? ich verstehe dass leider nicht wirklich
2 weitere Kommentare anzeigen
Nenene ;) Du erstellst die Klassen und implementierst da nur die Methoden vom Interface, die noch nicht implementiert sind ;) Also die, die IntelliJ von dir fordert, so funktioniert Vererbung Im Interface erstellst du dann halt an den entsprechenden Stellen ein neues Objekt dieser Klasse :)
achso vielen dank hab das total falsch verstanden :)
Mal interessehalber, wie lange habt ihr für die einzelnen Aufgaben gebraucht?
4 weitere Kommentare anzeigen
Ich glaube vielen Studenten geht es wie Socke. Und dann am Ende noch eine gui zu machen... Oh weh, wenn man zum ersten Mal damit arbeitet, kann das schon sehr anstrengend werden...
Ja gebe euch da Recht. Bin jetzt am Freitag fertig geworden mit den notwendigen Aufgaben, bin auch WiInfo. Aber war schon viel neues dabei, was man einfach noch nicht gehört bzw. benutzt hat. Hab für Turing und Osci ungefähr 1,5 Wochen gebraucht und die Einführungsaufgabe logischerweise in einer gemacht.
Wie addet ihr in der GUI eine scroll Möglichkeit unten? Eine scrollpane lässt beim kleiner ziehen vom Fenster mein Spielfeld verschwinden
Hey Leute! Kann mir jemand von euch bitte sagen wie die Optionale Methode bei OsciDrawing in der Klasse SignalFactory heißt? Die ist ganz unten und ich hab sie aus Versehen gelöscht haha Bräuchte bitte den gesamten Syntax davon
/* Optional */ public static Signal myCoolSignal() { return null; }
Küsschen aufs Nüsschen!
Ich muss jetzt doch nochmal fragen: Wie schaffe ich es bei Osci ein unendliches Signal zu erstellen? Wenn man alle Samplewerte ich eine Liste packt, braucht man ja eine Obergrenze. Denn für unendlich viele Werte hat man ja weder Zeit noch Speicherplatz. Aber wie sorge ich dafür, dass das unendliche Signal über das ganze Bild ausgegeben wird? Vielleicht mit Zugriff auf die breite des Bildes? Das man praktisch weiß, wie oft man es wiederholen darf um dann eine Schleife zu erstellen? Irgendeine Abbruchbedingung brauche ich doch ... Würde mich über jede Unterstützung freuen!
7 weitere Kommentare anzeigen
@Pik Mein Problem ist halt, dass ich bei for-Schleifen beim "Channel Befüllen" getSize() als Abbruchbedingung nehme und das geht ja nicht bei unendlichen Signalen, die übergeben da teilweise "-4" und so als size. Da ist bei mir schon das Problem, dass ich bei der Implementierung von Signal eine ArrayList mit Channels und bei der Klasse Channel eine ArrayList mit Double Werten habe, die dürfen ja keine negativen Zahlen als Größe übergeben bekommen. Ich hab versucht für size, falls negativ, einfach irgendeine positive Zahl zu übergeben, weil size ja bei unendlichen Signalen eig scheissegal sein sollte, aber das hat irgendwie auch nicht funktioniert.
Dann könntest du ja bei deinen for-Schleifen schauen, ob das Signal unendlich ist und dann ein anderes Verhalten implementieren ;)
Wie kann ich bei TCrush‘s GUI realisieren, dass das Canvas an die stage size angepasst wird? Jemand einen Tipp parat? Danke schonmal:)
Gibt so genannte Propertys (z.B. für Height, Width, Window) an die kannst du etwas binden oder nen Listener drauf setzen. Ansonsten kannst du dir auch die Größe der Stage geben und da dir was ausrechnen oder du nimmst ne feste Größe
Hayhay, wie berrechnet man bei OSCI bei der Klasse Point den Punkt "xd"? komme beim besten Willen nicht drauf. Und bei der Klasse Line: Wie komme ich auf getPointAt? Wie errechne ich den Punkt den an percentage des Weges vom Startpunkt zum Endpunkt ? :) Danke im Vorraus!!
Kann mir jemand "circle" mit der frequenz, cosinus und sinus erklären?
5 weitere Kommentare anzeigen
Vielen Dank, Note!
versteh ich nicht so ganz, was muss man abschreiben und vor allem wieso?
SignalFactory: bei unendlichen Zahlen ist getSize() ja nicht definiert und man kann irgendeine Zahl als Rückgabewert hinschreiben. In der SignalFactory habe ich jetzt trotzdem das Problem bei den unendlichen Signalen, dass PABS den " Illegal Capacity: -1" Fehler wirft. Wie genau implementiere ich denn die Größe der unendlichen Signale?
1 weiteren Kommentar anzeigen
Habe ich ja, aber ich verstehe nicht ganz wie das dann in SignalFactory benutzt und umgesetzt wird.
Brauchst du ja eigentlich da nicht, wenn das Signal endlich ist, musst du die Größe zurückgeben, ansonsten halt irgendwas
Habt ihr auch bei SignalFactory von Osci bei machen Methoden bei getValueAtValid wenn nichts in der Aufgabenstellung dazu stand return 0? Bin mir iwie unsicher bei Pabs sind die Tests grün und ich hätte noch eine Frage zu rampUp und rampDown, da gibt es ja sie Tests TestRampUptooShort ich habe den test jetzt grün indem ich abgefragt habe ob samplerate-duration eins ist aber jetzt wird mir diese Exception im eigentlichen Test geworfen? Hatte jemand vlt ein ähnliches Problem oder kann mir einfach so einen Tipp geben?
6 weitere Kommentare anzeigen
ja darauf habe ich geachtet, danke trz :)
Du kannst auch schauen, ob du es aus anderen Methoden bauen kannst, z.B. reverse. Und bei getSize Abfragen beachten, ob infinity möglich ist, da dann das Verhalten von getSize nicht definiert ist
Hallo :) Eine Frage zu OsciDraw... Klasse Signal In der Aufgabenstellung heißt es ja: Falls isInfinite() true, soll der Rückgabewert von getSize() nicht definiert und zu ignorieren sein... Wie gibt man denn an, ob etwas zu ignorieren ist bzw. nicht definiert ist?
1 weiteren Kommentar anzeigen
Danke :)
Ich gebe dann einfach 42 zurück
Pabs erwartet bei signalValToImageYCoord bei einem val von null und einer height von 400 das Ergebnis 199. in der Aufgabenstellung steht doch aber, dass bei einer geraden Höhe die y Achse auf dem Pixel mit der größeren y Koordinate liegen soll, was in dem Fall ja 200 wäre. Hat jemand eine Idee?
Lies den Satz danach wie Koordinaten bei BufferedImage funktionieren (umgedreht). Hatte den gleichen Fehler
Wie speichert man ein aktuelles gespieltes Level? Die original Datei braucht man zum laden, also müsste das aktuell gespielte Spiel eine neue Datei sein?
Wie stelle ich ein Feld in der gui graphisch dar?
2 weitere Kommentare anzeigen
Panes kann man auch wunderbar programmieren, das geht ganz unproblematisch
Vielen Dank notenschlüssel!
OSCI Wie kommt man bei der drawSignalAt(), ich versuch die x und y Koordinaten über signalValToImageYCoord () bzw. sampleIndexToImageXCoord() aber wenn sich der Channel ändert wird das falsche Pixel gefärbt?
Klasse SignalTimePlotter
Hey, kann mir jemand vielleicht setShapeAndUpdate aus Level aus TCrush erklären? Wie reduziere ich da amount von der shape?
Hatte jemand von euch auch das Problem bei Turing, dass wenn man Transitions mit "_" als input abfragt null zurückgegeben wird, obwohl sie gespeichert wurden? Über einen Tipp würde ich mich sehr freuen :D
hey :) ich weiß nur dass ich bei den Transitions geschaut habe ob der Input "_" entspricht und es wenn dies der fall war durch null ersetzt habe hoffe es hilft dir weiter
Wie wirft man eine exception in dem Konstruktor von Level, falls eine Dimension kleiner 2 ist?
8 weitere Kommentare anzeigen
Genau
danke!
Ich verstehe nicht wirklich wie ich bei SignalFactory (Osci) die Methode getValueAtValid() überschreiben soll channel sind doch integer oder? wie soll ich dann Channel 0 bzw Channel 1 überschreiben? kann mir jemand bitte einen Tipp geben?
2 weitere Kommentare anzeigen
Naja, du hast ja die Channels für 0 und für 1 (und weitere, wenn das Signal mehrere Channels hat) und aus dem Signal, dass dem Channel entspricht musst du dann halt den Wert nehmen. Kannst du deine Frage präzisieren?
Hat sich erledigt danke
Wie kann getsize() int sein, den Fall "Signal ist unendlich" aber ignorieren?
9 weitere Kommentare anzeigen
Ich meine ja, bin mir grade nicht mehr sicher. Aber theoretisch kannst du alles übergeben. Überlege dir erst mal, wie so ein Signal aussieht und was für Bestandteile es hat ;)
ty Notenschlüssel :D
Wie seid ihr bei Turingmachine in Teil 2 vorgegangen? Habt ihr alles Schritt für schritt gemacht oder z.b. zuerst die tape klassen vor der turingmaschine, da die turingmaschine ja klassen erweitert die erst später kommen
bei teil 2 hängt alles iwie zusammen... Mit Tape anzufangen ist aber schonmal eine gute Idee und dann immer weiter über Multitape und MTRWD zur Turingmaschine
Danke
Hayhay :) wie gebt ihr etwas zurück wenn es "undefiniert" ist? (Osci)
Kannst irgendwas machen, ist komplett egal, weil es ja nicht definiert ist ;) Für ein bisschen Stil würde sich z.B. 0 oder was negatives anbieten, aber pass auf, falls du das irgendwo abfragst
Welche exception muss man bei parserutils in parsestringtocoordinate abfangen bei "falls diese Formatierung fehlerhaft sein sollte"? [TCrush]
8 weitere Kommentare anzeigen
Ja, aber um eine Methode aufzurufen, muss ich doch erst ein Objekt dieser factory erstellen, und dieser muss ich ja laut Konstruktor eine collection übergeben
Ahh egal ich Habs jetzt danke!
Servus, habt ihr vielleicht irgendwelche grundlegenden Tipps fürs OSCI Drawing? Die Aufgabe unterscheidet sich ja schon relativ stark von Turingmaschine und ist als Wirtschaftsinformatiker auf den ersten Blick echt komplett was ganz neues. Wie fängt man am besten an?
1 weiteren Kommentar anzeigen
Hayhay :) habe immer noch nicht den Unterschied zwischen getValueAtValid und getValueAt verstanden. Könnt ihr mir da irgendwie weiterhelfen? :3
Ohne Valid: Überprüfung, ob es den Channel oder Index überhaupt gibt und ggf Exception Mit Valid: Es muss channel und Index geben, sonst gibt's ne IOB-Exception
wie bindet man die map-Funktion bei Java ein? :) (Osci-Drawing) also wie benutze ich die map-Funktion. welches Gradle bzw Plugin muss ich dafür wie installieren? Danke im Voraus!
2 weitere Kommentare anzeigen
Du brauchst hier keine map funktion in der aufgabe steht ja man soll sich daran "orientieren" und im folgenden ist genau beschrieben welche variable in der osci aufgabe welche variable im arduino beispiel ist D.h. du gehst auf die arduino seite scrollst ganz runter und kopierst die funktion hinter "return" und musst dann bei dir nur noch die variablen verändern
Uff und ich dachte ich muss hier groß nach JavaFX Plugins suchen und unbedingt die map Funktion nehmen -.- (nur weil die extra eine pdf auf der Kursseite haben wo sie gradle introducen) Danke! Ich hab immer ein Problem damit, dass ich es mir komplizierter mache als es ist...
Und noch eine Frage zu 4. Visualisierung bei OSCI: Zur Methode "public int sampleIndexToImageXCoord(int sampleIndex, int sampleRate" soll man sich ja anhand der map-Funktion orientieren. Aber irgendwie komme ich trotz allem nicht auf die Rechenschritte die ich implementieren soll. Wie genau habt ihr diesbezüglich implementiert? :) Habt ihr genau das in der Angabe in das Appendix der map fkt. eingefügt? Also im Sinne von long map(long x, long in_min, long in_max, long out_min, long out_max) { return (x - in_min) * (out_max - out_min) / (in_max - in_min) + out_min; } nur mit return (sampleIndex - 0) * ((width-1) - 0 ))/ ((sampleRate*timeScale-1) - [... ]? Aber dann hätte das der Prof ja im Prinzip auch gleich selbst implementieren können wenn man das nur abschreiben muss... Hört sich für mich wie eine Falle an Danke im Vorraus!
2 weitere Kommentare anzeigen
btw wie genau habt ihr die arduino gradle runtergeladen? Brauche da ja eine dependancy dann oder wie ? :o
Du musst nichts extra herunterladen
Hi ich mach die Aufgaben gerade zur Übung. Um Turingmaschine bei PABS testen zu können muss ich zuvor alles implementiert haben oder?
Ja genau, einfach alle Methoden implementieren bzw. abschreiben und null zurückgeben.
Danke
Habe alles grün bei turingmaschine obwohl ich bei Teil 3 nur die Inputstream Methode habe, die graphische Oberfläche noch nicht zum laufen gebracht habe und beim listener nicht mehr gemacht habe als die Methoden ins interface zu schreiben (also weder die Methode addListener in tape, noch die methodenaufrufe bei bandbewegung) hab ich trz jz Safe 100%?
2 weitere Kommentare anzeigen
Ok habe jz einfach vor jeden listener einmal if!=null gepackt jetzt funktioniert’s aber wie fügt man mehrere hinzu habe bisher einfach eine listener variable die in add listener mit dem neuen listener überschrieben wird
In der Folie von der Einführungsveranstaltung steht: alles grün -> 100 Punkte. Ich hab jetzt auch alles grün, obwohl ich nur die read(Inputstream input) gemacht hab und nich read(Reader read). Wird schon reichen 🤷‍♂️
Hayhay :) Habe eine Frage bzgl. 4. Visualisierung bei OSCI-Drawing: Die Visualisierung ist ja da um den Verlauf der Samplepunktwerte von Channels eines Signals zu visualisieren... Aber woher bekomme ich denn das Signal? (Also wie implementiere ich es mit rein? bzw. wo wird es übergeben? ) Danke im Voraus! :)
Du erstellst in der Aufgabe quasi erstmal die tools womit später gezeichnet werden kann, das Signal an sich erstellen kommt erst später
oh man, jetzt hab ichs gecheckt, Danke. Habe die ganze Zeit gedacht ich muss hier schon das Bild das als Beispiel gegeben ist zeichnen zusätzlich zurAangabe ^.^ Danke!
wie seit ihr bei Teil 3 vorgegangen? Verstehe nicht wirklich was ich da machen soll
48 weitere Kommentare anzeigen
Probiere es echt mal zu debuggen. Dann siehst du ja, was für eine Maschine raus kommt, wie die beschriftet ist, etc.
Tapes werden durch das MultiTape durch die Turingmaschine erstellt. Also sind die bei der Initialisierung schon da
An die Person die hier ihre Beiträge immer löscht nachdem ihr geholfen wurde lass es doch bitte stehen es hilft anderen auch weiter
2 weitere Kommentare anzeigen
Ist mir auch aufgefallen.
Ich habe in der Universität Würzburg Gruppe gemerkt, dass seit dieser Woche einige Einträge verschwinden. Nun gut, kann auch sein.
Hat jemand einen Tipp für die parseStringToLevel methode in TCrush? Bzw eine Strategie? Besten dank
bekomme bei Teil 3 von Turing bei den letzten 2 test folgenden Fehler: should be in an accepted state after executing run() hat einer eine Idee was das bedeutet ?
6 weitere Kommentare anzeigen
ja das past laut Pabs alles dann muss ich nochmal genauer in der reader klasse schauen danke dir
Tipp: Ruf die Methode mal in einer Main Methode auf und debugge mal die turing, die raus kommt (:
Wie kann ich über rampup rampdown implementieren? Ich muss die getvalueat methode verändern richtig?
Benutze reverse
Hi, ich habe mal eine Frage bezüglich der equals/hashCode Methode aus MTRWD aus TuringMachine: Ich habe die checks vorher abgeklappert und vergleiche dann eigentlich nurnoch die Liste der Values der beiden Objekte auf Gleichheit, trotzdem gibt mir Pabs diesen unverständlichen Fehler aus: java.lang.AssertionError: abac should be equal to ababac (altered objects, that were not equal before) Hatte den jemand auch und könnte mir vielleicht einen Lösungshinweis geben? Ich überlege, ob ich durch die Listen iteriere und jedes Element vergleiche, aber das ist ja das gleiche wie einfach beide Listen mit einer .equals() Methode zu vergleichen ...
5 weitere Kommentare anzeigen
mache ich tatsächlich vor meinem "Vergleich" beides
habe meinen Fehler gefunden Danke :)
Hat schon jemand ne Aufgabe fertig?
Alle
Dieser flex omg
Die Methode drawsignalat zeichnet einen Pixel, richtig? Diesen kann ich mit Hilfe einer Linie malen
Kannst alles mögliche nutzen sollte am ende aber nicht größer als ein pixel sein
Danke!
Hallo, Ich habe ein problem mit der Update methode bei Tcrush, und zwar, wie kann ich prüfen ob eine Zelle ihr item durch ein vorheriges Update erhalten hat. Außerdem habe ich noch die Frage, wo es sich anbietet die „Schwerkraft-map“ zu implementieren? Danke schon mal
Hallo, ich habe folgende Frage zur Klasse GameFieldItem, bzw zu den Methoden startMove und endMove. Mir ist unklar wie man einen bewegungsprozess erzeugt bei startMove ohne einen endkoordinate? Danke
1 weiteren Kommentar anzeigen
Also quasi dass ich bei startMove die nur startkoordinate speichere und bei endMove mit beiden Koordinaten einen move erzeuge?
Wäre eine Lösungsmöglichkeit, ja
wie geht ihr bei TuringMachine Teil 3 die einzelnen fälle durch? mit if else verzweigung? und wie kann man die zustände von den akzeptieren bzw vom Startzustand unterscheiden?
Man kann Zeilen mitzählen und abhängig davon, in welcher Zeile man ist, wird nach anderen Sachen geschaut
danke
Kann mir jemand mal ein Beispiel bezüglich der Rechnung der letzten Methode der Klasse point zeigen. Und auch zur letzten Methode der Klasse Linie?
2 weitere Kommentare anzeigen
Ja, x2-x1 und y2-y1
Ok danke
Wo genau sehe ich jetzt eigentlich meine Punktzahl für spieltheorie bei wuecampus unter Bewertungen steht nichts und da ich alle Tests auf grün hatte müsste doch eigentlich schon eine Bewertung da sein oder?
1 weiteren Kommentar anzeigen
Ok das beruhigt mich bekomme bei sowas immer Panik dass ich iwas vergessen habe und dann durchfalle 😅
du musst einfach rutnerscrollen :D
Hallo zusammen! Frage zur Turingmaschine: Das Interface TapeChangeListener muss man ja nicht konkret implementieren. Aber die Instanzen, die man davon in der Klasse Tape hat, müssen gemäß der Interfacevereinbarung informiert werden, richtig? Also die Methoden soll man trotzdem aufrufen? Danke schon mal im Voraus :)
3 weitere Kommentare anzeigen
Danke vielmals!
Kein Problem :)
Was muss ich denn bei getCurrent() zurückgeben, wenn mein Kopf an der letzten Stelle ist und somit kein nachfolgeElement hat?
4 weitere Kommentare anzeigen
Genau der Inhalt des Kopfes
ahh okay vielen dank
Wie macht ihr das in Tape, dass nur die führenden null werte abgeschnitten werden und nicht alle null werte ?
Solange die null-Werte ignorieren, bis schon was in den String geschrieben wurde (also vorher ein Wert vorhanden war)
Vielen Dank
Was ist denn der regex für eine leere Zeile? Und ist der regex für einen Kommentar [#]+?
RegEx ist da zu kompliziert, zwei einfache Vergleiche tun es auch :D
wenn du es jedoch mit regex machen willst fehlen dir bei deinem Vorschlag die Chars die nach dem sicheren "#" kommen können, es würde im moment zu den Strings "#","##","###"... matchen.
Wie geht man denn bei addTransition in State vor? Einer Map als Key "input" und als Value "new Transition" hinzufügen? Bzw wie speichere ich allgemein die Transitions in State?
addTransition bin ich Genauso vorgegangen wie du beschrieben äst mit der Map:)
Wie lässt man kommentare weg (#) in einer zu lesenden datei?
2 weitere Kommentare anzeigen
Entweder so oder du nutzt startsWith()
Danke :)
Erster!!11elf
9 weitere Kommentare anzeigen
Entweder Tobi#9831 auf Discord oder per Mail jpp [at] tbsn [minus] systems [punkt] de :)
Why though?
In den instructions zu TuringTransitionOutput steht ja Direction...directions. Was genau soll das bedeuten. Habe stattdessen [ ] geschrieben, dass gab aber einen grader Build Fehler jz habe ich einfach ... wie in der Angabe geschrieben und der Fehler speziell ist weg die Klasse macht aber immernoch Probleme und was bedeutet eigentlich dieses ...
... ist auch ein array, hat aber eine beliebige Länge. Du brauchst die Länge an sich aber gar nicht, du kannst auf length zugreifen :)
Weitere laden