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

euklidischer Algorithmus: AUfgabe 3
Status: (Frage) beantwortet Status 
Datum: 23:08 Di 07.01.2014
Autor: smirre

Aufgabe
Programmieren sie den euklidischen Algorithmus in Matlab. Die Zahlen sollen unabhängig in jedem einzelnen Durchlauf neu eingegeben werden können.

Hallo :)
In der letzten Übungsstunde sollten wir den euklidischen Algorithmus zur Bestimmung des ggT in Matlab programmieren. Leider bin ich nicht sehr weit gekommen.
Meines Wissen nach müsste man für das Programm eine if-Schleife verwenden. Allerdings weiß ich nicht genau wie ich die einzelnen Gleichungen, die sich ja ständig ändern, in dieser if-Schleife unterbringen soll.
Ein zusätzliches Problem ist auch noch, dass ich die if-Schleife auf eine bestimmte Anzahl an Durchläufen begrenzen müsste, allerdings ist die Anzahl der Durchläufe ja von Zahl zu Zahl unterschiedlich.
Wäre super, wenn mir jemand helfen könnte!
Hoffe meine Frage ist verständlich gestellt :)

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

        
Bezug
euklidischer Algorithmus: Antwort
Status: (Antwort) fertig Status 
Datum: 23:36 Di 07.01.2014
Autor: DieAcht

Hallo,


> Programmieren sie den euklidischen Algorithmus in Matlab.
> Die Zahlen sollen unabhängig in jedem einzelnen Durchlauf
> neu eingegeben werden können.
>  Hallo :)
>  In der letzten Übungsstunde sollten wir den euklidischen
> Algorithmus zur Bestimmung des ggT in Matlab programmieren.
> Leider bin ich nicht sehr weit gekommen.
>  Meines Wissen nach müsste man für das Programm eine
> if-Schleife verwenden. Allerdings weiß ich nicht genau wie
> ich die einzelnen Gleichungen, die sich ja ständig
> ändern, in dieser if-Schleife unterbringen soll.
>  Ein zusätzliches Problem ist auch noch, dass ich die
> if-Schleife auf eine bestimmte Anzahl an Durchläufen
> begrenzen müsste, allerdings ist die Anzahl der
> Durchläufe ja von Zahl zu Zahl unterschiedlich.
> Wäre super, wenn mir jemand helfen könnte!
>  Hoffe meine Frage ist verständlich gestellt :)
>  
> •Ich habe diese Frage in keinem Forum auf anderen
> Internetseiten gestellt.

Ich verstehe nicht wo dein Problem liegt.

Habt ihr den Algorithmus als Pseudocode aufgeschrieben?
Wenn ja, dann poste ihn doch bitte.

Damit die Übersichtlichkeit nicht leidet, benutze:

[code][/code]

Mir ist nicht klar ob du nun den Algorithmus verstanden hast oder Hilfe bei der Implementation brauchst.

Probleme bei der Implementation kann ich mir, wenn du den Pseudocode dazu hast, mit Matlab nicht vorstellen.


Gruß
DieAcht

Bezug
                
Bezug
euklidischer Algorithmus: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 00:38 Mi 08.01.2014
Autor: smirre

ich habe den Algorithmus verstanden, weiß allerdings nicht genau wie ich den in der if-Schleife darstellen soll. Wir haben leider gar keine Hinweise für die Aufgabe bekommen. Kann sein, dass es nur an einer Kleinigkeit bei mir hängt und ich deswegen nicht weiter komme.

Bezug
                        
Bezug
euklidischer Algorithmus: Antwort
Status: (Antwort) fertig Status 
Datum: 00:58 Mi 08.01.2014
Autor: Marcel

Hallo,

> ich habe den Algorithmus verstanden, weiß allerdings nicht
> genau wie ich den in der if-Schleife darstellen soll. Wir
> haben leider gar keine Hinweise für die Aufgabe bekommen.

den euklidischen Algorithmus findest Du "in Worten" etwa im Buch "Elementare
und algebraische Zahlentheorie", Müller Stach und Piontkowski - 2. Auflage,
Satz 3.7 (dort findest Du auch den erweiterten, einfach das Buch weiter
durchstöbern, knapp dahinter).

Jetzt stell Dir vor, Du bist ein Computer. Ich gebe Dir zwei Zahlen, die eine
heiße [mm] $a\,,$ [/mm] die andere [mm] $b\,.$ [/mm] Erzähl mal - rein mit Worten - wie Du algorithmisch
nun loslegst, um [mm] $\text{ggt}(a,b)$ [/mm] zu berechnen.

> Kann sein, dass es nur an einer Kleinigkeit bei mir hängt
> und ich deswegen nicht weiter komme.

Das können wir nicht sagen, wenn Du noch nicht mal den Anfang machst,
wo wir sehen könnten, dass Du überhaupt was tust...

Ein Anfang könnte ja so aussehen (erstmal einfach, ohne Fehlerabfang), bspw.:
1:
2: disp('Geben Sie die Zahlen a und b ein, von denen der ggT ermittelt werden soll!');
3: a=input('Ihre Eingabe für a: ');
4: b=input('Ihre Eingabe für b: ')


etc.
(Du weißt aber schon, wie man while-Schleifen in Matlab verwendet, oder?
Ich meine: []GidF (klick!)!)

Oder Du schreibst direkt sowas wie eine Funktion...

P.S. Im Anhang findest Du mal einen (nicht auf absolute Fehlerfreiheit)
getesteten C++-Code von mir bzgl. der Aufgabenstellung (jedenfalls zur
reinen Berechnung des ggT's zweier einmal fest vorgegebenen Zahlen mit
Hilfe des eukl. Algorithmusses)!
[a]Datei-Anhang

P.P.S. Ich sehe gerade, dass ich nicht den modernen eukl. Algorithmus (aus
dem Buch), sondern die klassische Variante (von hier: []Wiki, klick!)
programmiert hatte. Welche Version sollt ihr denn programmieren?

Gruß,
  Marcel

Dateianhänge:
Anhang Nr. 1 (Typ: cpp) [nicht öffentlich]
Bezug
                                
Bezug
euklidischer Algorithmus: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 13:01 Mi 08.01.2014
Autor: smirre

Vielen Dank Marcel! Der Tipp mit der while-Schleife hatte mir gefehlt.
ich habe den Anfang mit dem Input schon gemacht und haben den nicht rein gestellt, weil ich dachte, dass das ja mit dem euklidischen Algorithmus an sich ja nichts zu tun hat, weil Input ja immer gleich gemacht wird. Ich hab es jetzt mal mit der while schleife versucht:

a= input('Zahl 1: ');
b= input('Zahl 2: ');

while a > 0 & b > 0

    a=mod(a,b);
    b=mod(b,a);

end

so funktioniert es jetzt auch. Es muss nur drauf geachtet werden, dass a dabei die größere der beiden Zahlen ist.

Bezug
                                        
Bezug
euklidischer Algorithmus: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 13:59 Mi 08.01.2014
Autor: DieAcht

Hallo,


>  
> a= input('Zahl 1: ');
> b= input('Zahl 2: ');
>  
> while a > 0 & b > 0
>  
> a=mod(a,b);
> b=mod(b,a);
>  
> end
>  
> so funktioniert es jetzt auch. Es muss nur drauf geachtet
> werden, dass a dabei die größere der beiden Zahlen ist.

Dann setz vor der while-Schleife noch [mm] a=\max(a,b) [/mm] und [mm] b=\min(a,b). [/mm]
Du musst natürlich aufpassen bei der Implementierung bei den Variablen ;-)


Gruß
DieAcht

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


^ Seitenanfang ^
www.vorhilfe.de