% Angewandte Numerik 1, SoSe 2014
% Uebungsblatt 01, Aufgabe 2: Zahlensysteme
%
% Testprogramm fuer Funktion a = convert2basis(b, n)

clear all;
close all;
clc;


%% Testfall 1: b = 2, n = 31

n = 31;
a = [1 1 1 1 1];
if (max(abs(a-convert2basis(2, n)))==0)
    fprintf('Testfall 1 (b=%d,n=%d): Bestanden.\n', 2, n)
else
    fprintf(2,'Testfall 1 (b=%d,n=%d): Fehlgeschlagen.\n', 2, n)
end


%% Testfall 2: b = 2, n = 42

n = 42;
a = [1 0 1 0 1 0];
if (max(abs(a-convert2basis(2,n)))==0)
    fprintf('Testfall 2 (b=%d,n=%d): Bestanden.\n', 2, n)
else
    fprintf(2,'Testfall 2 (b=%d,n=%d): Fehlgeschlagen.\n', 2, n)
end    

%% Testfall 3: b = 2, n = 134110

n = 134110;
a = [1 0 0 0 0 0 1 0 1 1 1 1 0 1 1 1 1 0];
if (max(abs(a-convert2basis(2,n)))==0)
    fprintf('Testfall 3 (b=%d,n=%d): Bestanden.\n', 2, n)
else
    fprintf(2,'Testfall 3 (b=%d,n=%d): Fehlgeschlagen.\n', 2, n)
end    


%% Testfall 4: b = 8, n = 27

n = 27;
a = [3 3];
if (max(abs(a-convert2basis(8,n)))==0)
    fprintf('Testfall 4 (b=%d,n=%d): Bestanden.\n', 8, n)
else
    fprintf(2,'Testfall 4 (b=%d,n=%d): Fehlgeschlagen.\n', 8, n)
end


%% Testfall 5: b = 8, n = 3652

n = 3652;
a = [7 1 0 4];
if (max(abs(a-convert2basis(8,n)))==0)
    fprintf('Testfall 5 (b=%d,n=%d): Bestanden.\n', 8, n)
else
    fprintf(2,'Testfall 5 (b=%d,n=%d): Fehlgeschlagen.\n', 8, n)
end


%% Testfall 6: b = 8, n = 46807

n = 46807;
a = [1 3 3 3 2 7];
if (max(abs(a-convert2basis(8,n)))==0)
    fprintf('Testfall 6 (b=%d,n=%d): Bestanden.\n', 8, n)
else
    fprintf(2,'Testfall 6 (b=%d,n=%d): Fehlgeschlagen.\n', 8, n)
end


%% Testfall 7: b = 10, n = 3121

n = 3121;
a = [3 1 2 1];
if (max(abs(a-convert2basis(10,n)))==0)
    fprintf('Testfall 7 (b=%d,n=%d): Bestanden.\n', 10, n)
else
    fprintf(2,'Testfall 7 (b=%d,n=%d): Fehlgeschlagen.\n', 10, n)
end


%% Testfall 8: b = 10, n = 192310030133

n = 192310030133;
a = [1 9 2 3 1 0 0 3 0 1 3 3];
if (max(abs(a-convert2basis(10,n)))==0)
    fprintf('Testfall 8 (b=%d,n=%d): Bestanden.\n', 10, n)
else
    fprintf(2,'Testfall 8 (b=%d,n=%d): Fehlgeschlagen.\n', 10, n)
end

