    % % % % % % % % % % % % % % % % % % % % % % % % % % % %
    % Division_mit_Rest.m berechnet fuer gegebene x, y aus
    % N die Zahlen q,r aus N, derart dass
    % x = qy + r gilt!i
    % % % % % % % % % % % % % % % % % % % % % % % % % % % %

    clear all
    disp('Division_mit_Rest.m berechnet fuer gegebene x, y aus ')
    disp('N die Zahlen q,r aus N, derart dass x = qy + r mit r<y gilt!')

    disp(' ')
    x = input('Bitte eine Zahl x eingeben, die groesser als 0 ist: ');
    disp(' ')
    y = input('Bitte eine Zahl y eingeben, die groesser als 0 und kleiner als x ist: ');
    disp(' ')
    % Initialisierungen: 
    q = 0; 

    % Abbruchbedingungen:
    if x<0 | y<0
        error('x oder y kleiner 0!')
    end
    if x<y
        error('y ist nicht kleiner als x!')
    end

    % fuer spaeter speichern:
    x_old=x;

    if x == 0
        q = 0;
        r = x;
    end

    if y == 0
        error('Division durch 0!')
    end

    % Ziehe so oft y von x ab, bis ein Rest bleibt, der kleiner als y ist:
    while x>=y
        x = x - y;
        q = q+1;
    end

    % Rest
    r = x;

    disp(['q = ',num2str(q), ' und r = ',num2str(r)])
    disp([num2str(x_old),' = ',num2str(q),' * ',num2str(y),' + ',num2str(r)])