|
|
Flussdiagramm von n_über_k in For-Schleife programmieren |
|
Clemens |

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 01.04.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.04.2016, 12:19
Titel: Flussdiagramm von n_über_k in For-Schleife programmieren
|
 |
Guten Tag,
ich soll für die Uni aus einem Flussdiagramm eine function mit for-Schleife programmieren. Ich hab einfach mal angefangen und wollte mal Fragen was ich falsch mache bzw. wie ich der Funktion klar mache das sie solange die Verzweigung JA durchgeht bis endlich die Bedingung für die Beendigung erreicht ist...
hier mal mein "Anfang":
function n_ueber_k(n,k)
ge(n,k)
isa(n, 'posinteger');
isa(k, 'posinteger');
z=k;
F=1;
for k=1:n
z>0
F = F*(n-(z-1));
F = F/z;
z = z-1;
for k=1:n
ge(0,z)
end
end
Im Anhang habe ich euch mal das Flussdiagramm hochgeladen.
Liebe Grüße
Clemens
Beschreibung: |
|
 Download |
Dateiname: |
Flussdiagramm.png |
Dateigröße: |
13.79 KB |
Heruntergeladen: |
397 mal |
|
|
|
|
|
Clemens |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 01.04.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.04.2016, 15:19
Titel:
|
 |
hat keiner nen tipp ? hab das gefühl dass die for schleife gar nicht durchlaufen wird
|
|
|
DSP |

Forum-Meister
|
 |
Beiträge: 2.117
|
 |
|
 |
Anmeldedatum: 28.02.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: R2014b
|
 |
|
|
 |
|
Verfasst am: 01.04.2016, 15:40
Titel:
|
 |
Hallo,
ich habe so einige Verständnisprobleme mit deinem Code. Siehe Kommentare
Zitat: |
hab das gefühl dass die for schleife gar nicht durchlaufen wird |
So etwas lässt sich leicht mit dem Debugger überprüfen. Breakpoint in die gewünschte Zeile setzen und dann die Funktion starten.
Sinnvoller wäre allerdings eine while Schleife
Jetzt fehlt hier noch eine entsprechende Überprüfung von n und k auf Gültigkeit.
Gruß DSP
|
|
|
Clemens |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 01.04.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.04.2016, 16:32
Titel:
|
 |
Hallo,
erstmal vielen Dank für deine/ihre Antwort.
ge(n,k) habe ich gewählt, weil in der Aufgabe vorgegeben wurde, dass n>=k.
Das hatte ich vergessen zu erwähnen.
Ich hab jetzt versucht, in die for Schleife eine if else Bedingung einzubauen.
Jetzt bekomme ich für k und n auch schon werte ausgegeben. Allerdings ist die Bedingung n>=K noch nicht implementiert worden bzw. sie wird noch nicht befolgt.
Denn ich kann zum Beispiel auch n_ueber_k(1,4) eingeben und es wird tdm. gerechnet.
Grüße Clemens
[EDITED, Jan, Bitte kein Top-Quoting - Danke!]
|
|
|
DSP |

Forum-Meister
|
 |
Beiträge: 2.117
|
 |
|
 |
Anmeldedatum: 28.02.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: R2014b
|
 |
|
|
 |
|
Verfasst am: 01.04.2016, 16:58
Titel:
|
 |
Diese Zeilen führen zu nichts...
Was soll mit dem Ergebnis passieren? Du prüfst eine Bedingung, aber das Ergebnis der Prüfung wird nie verwendet. Lies dir mal die Doku zu
if
und
else
durch! Der isa Befehl macht hier auch keinen Sinn. Es wird nur der Datentyp überprüft, nicht aber die Zahl selbst. Die Eingangsargumente n und k sind i.d.R. vom Datentyp double, so fern sie nicht anders deklariert wurden. Daher wird selbst bei n und k als ganze Zahl immer ein false kommen, da es sich eben nicht um einen Integer handelt.
Eine while Schleife ist aber nach wie vor effizienter Break und return Befehle in einer Schleife sind auch nicht unbedingt guter Programmierstil.
Gruß DSP
|
|
|
Clemens |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 4
|
 |
|
 |
Anmeldedatum: 01.04.16
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.04.2016, 17:19
Titel:
|
 |
...
das sieht natürlich schon anders aus als mein Haufen "function"
Ich werde mich heute und am Wochenende hinsetzen um Matlab weiter zu durchdringen, das ich nämlich echt keine Lust habe mir das einfach von den Vorsemestlern zu kopieren (wie die Mehrheit es tut)^^
Nochmal vielen Dank. Ich werde in Zukunft bestimmt noch häufiger Fragen haben.Ich lade nochmal die Aufgabenstellung hoch. dann wird vlt mein Gedankengang klarer und andere haben eine Aufgabe mehr mit der sie üben können =)
schönes Wochenende
Gruß Clemens
Beschreibung: |
|
 Download |
Dateiname: |
Matlab_2_Labor_Aufgabe_3.png |
Dateigröße: |
148.24 KB |
Heruntergeladen: |
380 mal |
|
|
|
Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 01.04.2016, 18:32
Titel:
|
 |
|
|
|
|
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.
|
|