Könnt ihr meine Lösungen zu 2 MATLAB-Prüfungsaufgaben (Plot-Anpassung, bedingte Anweisung) überprüfen? Sie wurden als falsch bewertet, aber ich halte sie für korrekt.

1 view (last 30 days)
Hallo MATLAB-Community,
ich benötige eure Hilfe, um die Richtigkeit meiner Lösungen zu zwei MATLAB-Prüfungsaufgaben zu überprüfen. Obwohl ich überzeugt bin, dass meine Antworten korrekt sind, wurden sie in der Prüfung als falsch bewertet. Hier sind die Aufgabenstellungen und meine Lösungen:
Aufgabe 1: Plot-Anpassung
Aufgabenstellung:Erstellen Sie ein Diagramm mit zwei Plots. Formatieren Sie das Diagramm anhand folgender Vorgaben:
  • Darstellung Plot 1: Standardeinstellungen
  • Darstellung Plot 2: rot-gepunktete Quadrate
  • Titel des Diagramms: „Zwei Plots“
  • Länge X-Achse: -12 bis 12
  • Länge Y-Achse: -8 bis 8
  • Beschriftung X-Achse: Geschwindigkeit
  • Beschriftung Y-Achse: Zeit
  • Legende: Plot 1; Plot 2, Platzierung unten rechts
  • Darstellung von Gitterlinien im Diagramm
Meine Lösung:
figure
hold on
grid on
p1 = plot(x1, y1);
p2 = plot(x2, y2, ':r', 'Marker', 'square');
title('Zwei Plots')
xlim([-12, 12])
ylim([-8, 8])
xlabel('Geschwindigkeit')
ylabel('Zeit')
legend([p1, p2], {'Plot 1', 'Plot 2'}, 'Location', 'southeast')
Beanstandungen in der Bewertung:
  • Fehlen von 'hold off'
  • Verwendung von geschweiften Klammern '{}' und den Parametern 'Marker' und 'square'
Aufgabe 2: Bedingte Anweisung
Aufgabenstellung: Geben Sie die Syntax einer bedingten Ausführung ('if') an. Wenn die Bedingung (nehmen Sie eine beliebige Bedingung an) erfüllt ist, soll die Variable 'x' auf den Wert 18,9 gesetzt werden. Geben Sie die korrekte Syntax für MATLAB an.
Meine Lösung:
a = 1
if a
x = 18.9;
end
Beanstandungen in der Bewertung:
  • Es wurde eine spezifischere Bedingung wie if a == 1 erwartet.
Zusätzliche Informationen:
  • Für Aufgabe 1: Das Fehlen von 'hold off' beeinträchtigt die Funktionalität des Codes nicht, da keine weiteren Plots folgen sollen. Die geschweiften Klammern '{}' sind für Cell Arrays erforderlich, was in der MATLAB-Dokumentation beschrieben wird. Die Parameter 'Marker' und 'square' sind korrekt verwendet, um den zweiten Plot visuell vom ersten zu unterscheiden.
  • Für Aufgabe 2: In MATLAB ist 'if a' eine gültige Methode, um zu prüfen, ob a einen nicht-null Wert enthält.
Ich freue mich über eure Einschätzung und Rückmeldung. Vielen Dank!

Accepted Answer

Harald
Harald on 24 May 2024
Hallo,
generell würde ich sagen, dass deine Codes korrekt sind, es aber teils schönere Lösungen gibt.
  • hold off würde ich immer setzen. Hier ist es zwar nicht notwendig, kann aber in anderen Fällen zu unschönen Effekten führen, wo es eben doch notwendig gewesen wäre.
  • Statt Cell Arrays von chars ist die neuere, modernere Lösung String Arrays, hier ["Plot 1", "Plot 2"]. Alternativ hätten 'Plot 1' und 'Plot 2' getrennt übergeben werden können.
  • Für Quadrate als Marker ist die einfachere Lösung ':rs'.
  • Eine Abfrage wie if a ~= 0 finde ich persönlich schöner / lesbarer.
Wenn es signifikante Abzüge gab, würde ich das Gespräch mit dem Aufgabensteller / Korrektor suchen.
Viele Grüße,
Harald
  1 Comment
jan stoll
jan stoll on 24 May 2024
Hallo Harald,
vielen Dank für die schnelle Antwort und die wertvollen Tipps. Da ich in der Prüfung natürlich etwas unter Stress stand, sind mir einige der schöneren Lösungen nicht in den Sinn gekommen.
Nochmals vielen Dank für deine Unterstützung.
Viele Grüße
Jan

Sign in to comment.

More Answers (0)

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!