|
|
Schleife in Funktion mitzählen |
|
Matlab_Beginner56446 |
Gast
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.06.2015, 16:48
Titel: Schleife in Funktion mitzählen
|
 |
Also ich habe folgendes Problem ich berechne die Differenz zwischen zwei Werten und nehme dann den maximalen Wert. Dafür verwende ich, wie in meinem Code zu sehen ist, auch eine Schleife.
Mein Problem ist nun ich benötige die Zeile in der dieser maximale Wert gefunden wurde, möchte die Schleife aber nicht nochmal in einer anderen Zeile durchführen. Und ein weiteres Array nur für einen Zwischenschritt macht das ganze Programm relativ groß da ich die Berechnung noch das ein oder andere mal für andere Werte durchführe.
Kann ich nun die Schleife mitzählen lassen.
Also sowas wie i=1:2:end (geht nicht aber nur um das Prinzip zu erklären).
Vielleicht kennt ihr da ja was geschicktes.
Danke und Gruß
|
|
|
|
|
Winkow |

Moderator
|
 |
Beiträge: 3.842
|
 |
|
 |
Anmeldedatum: 04.11.11
|
 |
|
 |
Wohnort: Dresden
|
 |
|
 |
Version: R2014a 2015a
|
 |
|
|
 |
|
Verfasst am: 17.06.2015, 17:06
Titel:
|
 |
um in irgendeiner schleife irgendwas zu zählen geht
so in der richtung.
max hat aber noch weitere rückgabe parameter. die könnten eventuell hilfreich sein. ich verstehe dein problem noch nicht genau um da sicher zu sein. dein beispiel code ist sehr kurz und enthällt weder die von dir erwähnte schleife noch wird klar was du noch haben willst und was nicht klappt. und lauffähig ist es natürlich auch nicht.
_________________
richtig Fragen
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.06.2015, 17:42
Titel:
|
 |
Ok werden mir die max Funktion dann mal noch anschauen.
Also die eigentliche Funktion ist:
Also x verwende ich für die einzelnen Spalten
in last_values stehen die Messwerte ich nehme dann die Differenz zwischen jedem 2. Wert für die beiden Spalten.
Also ich denke dann muss ich die Funktion etwas "auseinanderbauen" um dann eine richtige for-Schleife zu machen um den korrekten Wert zu bekommen.
Wie kann ich denn dann eine for schleife schreiben die bis zum letzten Wert des Arrays läuft. Darum habe ich das so gemacht.
Also 1:2:end ist ja perfekt für meinen Fall, jedoch geht das bei einer for Schleife also
Funktioniert ja nicht.
|
|
|
Epfi |

Forum-Meister
|
 |
Beiträge: 1.134
|
 |
|
 |
Anmeldedatum: 08.01.09
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 17.06.2015, 20:53
Titel:
|
 |
Mal über die Verwendung von size() oder numel() nachgedacht?
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.06.2015, 13:19
Titel:
|
 |
Vielen Dank für den Tipp da hab ich gar nicht dran gedacht.
Code funktioniert jetzt indem ich eine Schleife gemacht hab:
|
|
|
Gast |
|
 |
Beiträge: ---
|
 |
|
 |
Anmeldedatum: ---
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.06.2015, 14:03
Titel:
|
 |
habe doch einen besseren Trick gefunden weil das maximum mit dem vorherigen Code ja dauernd überschrieben wird.
Man kann den Index mithilfe des max speichern und dann später auslesen um die Zeile zu nutzen in der das Maximum gefunden wurde.
Damit kann ich das Array I_max auslesen für die einzelnen Spalten.
Vielen Dank Winkow.
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
| 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.
|
|