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" - Schleife programmieren
Schleife programmieren < Matlab < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Matlab"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Schleife programmieren: while-Schleife
Status: (Frage) beantwortet Status 
Datum: 02:16 Mo 06.08.2012
Autor: Ichlerndasnie

Aufgabe
Der Computer "merkt" sich eine Zufallszahl zwischen 1 und 100, die der
Spieler erraten soll. Der Spieler hat unendlich viele Versuche. Nach jedem falschen Versuch gibt der Computer an, ob die angegebene Zahl zu klein oder zu groß ist. Der Spieler hat gewonnen, wenn er die gesuchte Zahl errät.

Hallo, ich habe es mit einer while-Schleife versucht, aber da ist irgendwo ein Denkfehler drin.
Erster Ansatz:
Ergebnis = randi(100,1);
Antwort_VP = input('Bitte errate die Zahl zwischen 1 und 100:  ');

while Antwort_VP~=Ergebnis
if  (Antwort_VP>Ergebnis);
disp('Meine Zahl ist kleiner, versuch es noch einmal!');
elseif (Antwort_VP<Ergebnis);
disp('Meine Zahl ist größer, versuch es noch einmal!');
else;
disp('Hatt ja nicht mehr mit gerechnet, bist doch nicht so dusselig, wie Du aussiehst, das war richtig!');
end
Dann hängt Matlab sich nach der ersten Eingabe auf!

Zweiter Ansatz:
Ergebnis = randi(100,1);
Antwort_VP = input('Bitte errate die Zahl zwischen 1 und 100:  ');

while Antwort_VP~=Ergebnis
if  (Antwort_VP>Ergebnis);
disp('Meine Zahl ist kleiner, versuch es noch einmal!');
end
elseif (Antwort_VP<Ergebnis);
disp('Meine Zahl ist größer, versuch es noch einmal!');
end
else;
disp('Hatt ja nicht mehr mit gerechnet, bist doch nicht so dusselig, wie Du aussiehst, das war richtig!');
end
end
Dann habe ich eine Endlosschleife....WO LIEGT MEIN DENKFEHLER??

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

        
Bezug
Schleife programmieren: Antwort
Status: (Antwort) fertig Status 
Datum: 08:48 Mo 06.08.2012
Autor: Al-Chwarizmi


> Der Computer "merkt" sich eine Zufallszahl zwischen 1 und
> 100, die der
>  Spieler erraten soll. Der Spieler hat unendlich viele
> Versuche. Nach jedem falschen Versuch gibt der Computer an,
> ob die angegebene Zahl zu klein oder zu groß ist. Der
> Spieler hat gewonnen, wenn er die gesuchte Zahl errät.
>  Hallo, ich habe es mit einer while-Schleife versucht, aber
> da ist irgendwo ein Denkfehler drin.
> Erster Ansatz:
> Ergebnis = randi(100,1);
>  Antwort_VP = input('Bitte errate die Zahl zwischen 1 und
> 100:  ');
>  
> while Antwort_VP~=Ergebnis
>  if  (Antwort_VP>Ergebnis);
>  disp('Meine Zahl ist kleiner, versuch es noch einmal!');
>  elseif (Antwort_VP<Ergebnis);
>  disp('Meine Zahl ist größer, versuch es noch einmal!');
>  else;
>  disp('Hatt ja nicht mehr mit gerechnet, bist doch nicht so
> dusselig, wie Du aussiehst, das war richtig!');
>  end
>  Dann hängt Matlab sich nach der ersten Eingabe auf!
>  
> Zweiter Ansatz:
>  Ergebnis = randi(100,1);
>  Antwort_VP = input('Bitte errate die Zahl zwischen 1 und
> 100:  ');
>  
> while Antwort_VP~=Ergebnis
>  if  (Antwort_VP>Ergebnis);
>  disp('Meine Zahl ist kleiner, versuch es noch einmal!');
>  end
>  elseif (Antwort_VP<Ergebnis);
>  disp('Meine Zahl ist größer, versuch es noch einmal!');
>  end
>  else;
>  disp('Hatt ja nicht mehr mit gerechnet, bist doch nicht so
> dusselig, wie Du aussiehst, das war richtig!');
>  end
>  end
>  Dann habe ich eine Endlosschleife....WO LIEGT MEIN
> DENKFEHLER??


Hallo Ichlerndasnie  [haee]

( ... mittels MR vielleicht ja doch noch ...  ;-) )

            [willkommenmr]

Ohne mich in Matlab wirklich auszukennen:

stecken in deinem Programmtext nicht viel zu viele
Strichpunkte ??

(ein Strichpunkt unmittelbar nach einem "else" macht
z.B. wirklich keinen Sinn !)

LG   Al-Chwarizmi

Bezug
                
Bezug
Schleife programmieren: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 10:59 Mo 06.08.2012
Autor: Ichlerndasnie

Hallo,
danke dass mir hier geholfen wird, hab ich schon festgestellt.... Habe inzwischen den Fehler selbst gefunden, Dein Tipp mit dem Zuviel an Strich-Punkten war dabei recht hilfreich. Hier meine richtge Lösung:

Ergebnis = randi(100,1);
Antwort_VP=input('Bitte errate die Zahl zwischen 1 und 100:  ');
     while Antwort_VP~=Ergebnis
Antwort_VP=input('Bitte errate die Zahl zwischen 1 und 100:  ');
if  (Antwort_VP>Ergebnis)
disp('Meine Zahl ist kleiner, versuch es noch einmal!');
elseif (Antwort_VP<Ergebnis)
disp('Meine Zahl ist größer, versuch es noch einmal!');
else
disp('Hatt ja nicht mehr mit gerechnet, bist doch nicht so dusselig, wie Du aussiehst, das war richtig!');
end
end

Trotzdem Danke!! ;-)


Bezug
        
Bezug
Schleife programmieren: Antwort
Status: (Antwort) fertig Status 
Datum: 10:59 Mo 06.08.2012
Autor: franzzink

Hallo,

die Zeile

Antwort_VP = input('Bitte errate die Zahl zwischen 1 und 100:  ')

gehört in die while-Schleife. Andernfalls macht man eine Eingabe und hat keine Chance mehr sie zu verändern. War die Eingabe dann falsch, läuft die Schleife endlos weiter, weil man ja keine Chance mehr hat, die Zahl zu verändern.


Und noch ein kleiner Hinweis:
Nach "if", "else" und "disp" muss man nicht unbedingt ein ";" setzen, weil dies keinen Effekt hat. Also spart man sich das in der Regel.

Bezug
                
Bezug
Schleife programmieren: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 11:04 Mo 06.08.2012
Autor: Ichlerndasnie

Ist schon nett, dass ich meine LÖsung zur gleichen Zeit gepostet habe, wie Du. Danke für die Mühe :-)

Bezug
        
Bezug
Schleife programmieren: völlig OT
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 11:14 Mo 06.08.2012
Autor: angela.h.b.

Hallo,

programmieren kann ich gar nichts,
aber mal ein Hinweis völlig OT:

Dein Nickname ist nicht gut für Dich...
"Ichkannganzbestimmtalleslernen" wäre echt besser - und auch treffender, nicht wahr?

Viel Erfolg!
LG Angela



Bezug
                
Bezug
Schleife programmieren: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 11:21 Mo 06.08.2012
Autor: Ichlerndasnie

Ist lediglich der Ausdruck von totalem Frust und von meiner Verweigerungshaltung in Sachen Programmieren. Würde mich damit nicht mehr beschäftigen, wenn ich nicht dieses Seminar an der Uni abschliessen wollte.

Bezug
                        
Bezug
Schleife programmieren: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 11:28 Mo 06.08.2012
Autor: fred97

"Lernen und Genießen sind das Geheimnis eines erfüllten Lebens. Lernen ohne Genießen verhärmt, Genießen ohne Lernen verblödet."

Richard David Precht:  Wer bin ich – und wenn ja, wie viele? Eine philosophische Reise (Goldmannverlag)

Gruß FRED

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


^ Seitenanfang ^
www.vorhilfe.de