www.vorhilfe.de
Vorhilfe

Kostenlose Kommunikationsplattform für gegenseitige Hilfestellungen.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Vorhilfe
  Status Geisteswiss.
    Status Erdkunde
    Status Geschichte
    Status Jura
    Status Musik/Kunst
    Status Pädagogik
    Status Philosophie
    Status Politik/Wirtschaft
    Status Psychologie
    Status Religion
    Status Sozialwissenschaften
  Status Informatik
    Status Schule
    Status Hochschule
    Status Info-Training
    Status Wettbewerbe
    Status Praxis
    Status Internes IR
  Status Ingenieurwiss.
    Status Bauingenieurwesen
    Status Elektrotechnik
    Status Maschinenbau
    Status Materialwissenschaft
    Status Regelungstechnik
    Status Signaltheorie
    Status Sonstiges
    Status Technik
  Status Mathe
    Status Schulmathe
    Status Hochschulmathe
    Status Mathe-Vorkurse
    Status Mathe-Software
  Status Naturwiss.
    Status Astronomie
    Status Biologie
    Status Chemie
    Status Geowissenschaften
    Status Medizin
    Status Physik
    Status Sport
  Status Sonstiges / Diverses
  Status Sprachen
    Status Deutsch
    Status Englisch
    Status Französisch
    Status Griechisch
    Status Latein
    Status Russisch
    Status Spanisch
    Status Vorkurse
    Status Sonstiges (Sprachen)
  Status Neuerdings
  Status Internes VH
    Status Café VH
    Status Verbesserungen
    Status Benutzerbetreuung
    Status Plenum
    Status Datenbank-Forum
    Status Test-Forum
    Status Fragwürdige Inhalte
    Status VH e.V.

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Dt. Schulen im Ausland: Mathe-Seiten:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Matlab" - Verspeichern von if-Schleifen
Verspeichern von if-Schleifen < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Verspeichern von if-Schleifen: Ergebnisspeicherung
Status: (Frage) beantwortet Status 
Datum: 22:52 So 23.12.2007
Autor: messenmann

Aufgabe
Problem: muss folgendes überprüfen:
a<b<c
falls bedingung erfüllt ist soll in einen vektor Ergebnis an erster stelle 'erfüllt' gesetzt werden, falls bedingung nicht erfüllt ist soll 'unerfüllt' gesetzt werden.

wie würdet ihr das programmieren?

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

ich habe es so programmiert-funktioniert jedoch nicht:
a,b und c sind vektoren mit 10 elementen

k=1:10
if a(k)<b(k)
   if b(k)<c(k)
      Ergebnis(k)={'erfüllt'}
      else
      Ergebnis(k)={'unerfüllt'}
    end
end

in Ergebnis sollten nun 10 Werte stehen die entweder 'erfüllt' oder 'unerfüllt' lauten.

Könnt ihr mir dabei helfen!
danke messenmann

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.

        
Bezug
Verspeichern von if-Schleifen: Antwort
Status: (Antwort) fertig Status 
Datum: 22:59 So 23.12.2007
Autor: Martin243

Hallo,

du hast die for-Schleife vergessen. Es muss heißen:
for k=1:10,
  ....
end;

Allerdings wirst du einige leere Einträge haben im Falle [mm] a(k)$\geq$b(k). [/mm] Vielleicht solltest du den Fall auch behandeln.

Gruß
Martin

Bezug
                
Bezug
Verspeichern von if-Schleifen: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 11:27 Mo 24.12.2007
Autor: messenmann

Hallo Martin, danke für die antwort1
For schleife für das k läuft durch, habe ich vergessen zu schreiben, das ist nicht das problem.

ich will nur wissen ob die bedingung a(k)<=b(k)<=c(k) erfüllt ist. ist diese bedingung erfüllt soll in einem vektor Ergebnis(k) 'erfüllt' gesetzt werden andernfalls 'unerfüllt'.

wie würdest du das programmiern?
danke lukas

Bezug
                        
Bezug
Verspeichern von if-Schleifen: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 14:04 Mo 24.12.2007
Autor: Martin243

Hallo,

soetwas habe ich mir gedacht, war mir aber nicht ganz sicher, ob das deine Absicht ist. In Matlab kann man Bedingungen logisch verknüpfen. In deinem Fall bei UND:
1: for k=1:10,
2:   if (a(k)<b(k)) && (b(k)<c(k)), 
3:     Ergebnis(k)={'erfüllt'};
4:   else 
5:     Ergebnis(k)={'unerfüllt'};
6:   end
7: end 



Gruß
Martin

Bezug
                                
Bezug
Verspeichern von if-Schleifen: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 16:18 Mo 24.12.2007
Autor: messenmann

hallo nochmal!
hab es jetzt so programmiert, funktioniert soweit, nur wenn man sich den ergebnisvektor anschaut stehen da nicht diese 'erfüllt' oder 'unerfüllt' drinnen. Z.B. sieht der so aus: Ergebnis= [] [] 'erfüllt'

klickt man 2 mal im workspace auf den Ergebnis vektor steht überhaupt: unsupported variable class or newline in string.

was hab ich falsch gemacht?

vielen dank für deine hilfe und frohe weihnachten.
Lg lukas

Bezug
                                        
Bezug
Verspeichern von if-Schleifen: Antwort
Status: (Antwort) fertig Status 
Datum: 21:50 Mo 24.12.2007
Autor: Blech


> was hab ich falsch gemacht?

Ich denke (hab kein Matlab zur Hand) es müßte Ergebnis{k} statt Ergebnis(k) lauten.
Nur in cell-arrays können die einzelnen Einträge unterschiedliche Länge haben.

Wenn Du nicht unbedingt die "erfüllt" und "unerfüllt" in einem Vektor haben mußt, sondern es 0en und 1en auch tun, ginge das ganze leichter. (evtl. könntest Du dann bei der Ausgabe formatieren oder so)

Ergebnis=a<b&b<c

gibt Dir einen Vektor mit Ergebnis(k)=1, falls a(k)<b(k)<c(k) und 0 sonst.

Leider gibt es keine so elegante Methode, das in strings umzuwandeln (denk ich, in R ginge es =), also bräuchtest Du die for-Schleife:

1: Ergebnis=a<b&b<c;
2: Erg=cell(length(Ergebnis),1);
3: for i=1:length(Ergebnis)
4:   if Ergebnis(i)==1
5:      Erg{i}='erfuellt';
6:   else
7:      Erg{i}='nicht erfuellt';
8:   end
9: end


(ich denke die Syntax sollte stimmen)



Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorhilfe.de