WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Fehlermeldung bei for-Schleife

 

HilfloserHannes
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 25.09.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.09.2015, 17:27     Titel: Fehlermeldung bei for-Schleife
  Antworten mit Zitat      
Hallo Zusammen,
ich bin noch ein Matlab-Anfänger. Sad

Um Matlab zu lernen mache ich mir immer gerne einfache Minimalbeispiele. Leider bin ich auf ein Problem gestoßen.

Ich habe ein m-File mit einer Parabelfunktion erstellt:
Code:
%Das ist mein m-File
function [y]= Parabel(x)
y=(x.^2)-5 ;
end
 


zu Übungszwecken wollte ich nun die Funktionswerte der Parabel von -5 bis +5 in einen Vektor schreiben.
Code:

clear all
clc

xs=-5:5
Laengedesvektorsx=size(xs,2)

%Nulstelle=fzero(@(x)Parabel(x),1);

for j=-5:5             %hier liegt der Hund begraben
    yWerte(j)=(j.^2)-5  
end
       
plot(xs,Parabel(xs))
hold on
plot(xs:yWerte)
 


Es kommt die Fehlermeldung: Subscript indices must either be real positive integers or logicals.

Warum darf ich keine negativen Werte verwenden?
Kann ich das dann gar nicht als for-Schleife machen?
Habt ihr vielleicht andere Vorschläge?(am liebstenn als for-Schleife)

Vielen Dank für Eure Hilfe!
Private Nachricht senden Benutzer-Profile anzeigen


Epfi
Forum-Meister

Forum-Meister



Beiträge: 1.134
Anmeldedatum: 08.01.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.09.2015, 18:13     Titel: Re: Fehlermeldung bei for-Schleife
  Antworten mit Zitat      
HilfloserHannes hat Folgendes geschrieben:
Warum darf ich keine negativen Werte verwenden?

Das Problem ist, dass du auf Elemente des Vektors zugreifen willst, die es nicht gibt. Matlab indiziert ab 1. Negative Indizes sind nicht erlaubt und da Dein j negativ ist, gibt es diese Meldung.

Zitat:
Kann ich das dann gar nicht als for-Schleife machen?

Kannst Du schon, musst Du aber nicht:
Code:

yWerte = Parabel(xs);
 


Zitat:
Habt ihr vielleicht andere Vorschläge?(am liebstenn als for-Schleife)

Gar nicht erst angewöhnen ;-)
Private Nachricht senden Benutzer-Profile anzeigen
 
HilfloserHannes
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 25.09.15
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.09.2015, 18:29     Titel:
  Antworten mit Zitat      
Danke Epfi!
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.