a)
function personProgram ()
choice = -1;
P = [];
printHeader();
while choice ~= 0
printMenu();
choice = input ('Velg et tall: ');
clc
if choice == 0
continue
end
P = process(P, choice);
end
printFooter();
end
b)
function printHeader()
fprintf('Velkommen til persondatabasen \n');
end
c)
function printMenu ()
fprintf('%s\n', '1. Hent database fra fil');
fprintf('%s\n', '2. Lagre database til fil');
fprintf('%s\n', '3. List alle personer');
fprintf('%s\n', '4. Legg inn ny person');
fprintf('%s\n', '5. Endre person');
fprintf('%s\n', '0. Avslutt programmet');
end
d)
function printFooter ()
fprintf('Programmet avsluttes .\n');
end
e)
function P = processLoad ()
fprintf ('Skal laste en fil \n');
end
function processStore(P)
fprintf('Skal lagre en fil \n');
end
function processListPersons(P)
fprintf('Skal skrive ut personene \n');
end
function P = processNewPerson(P)
fprintf('Skal legge til en ny person \n');
end
function P = processChangePerson(P)
fprintf('Skal endre en person \n');
end
f)
function P = process (P, choice )
fprintf ('\n');
switch choice
case 1
P = processLoad();
case 2
processStore(P);
case 3
processListPersons(P);
case 4
P = processNewPerson(P);
case 5
P = processChangePerson(P);
otherwise
fprintf ('%s\n', 'Ugyldig valg ');
end
fprintf ('\n');
end
g)
function P = processLoad()
filename = input('Hvilken fil vil du laste ? ', 's');
P = loadfile(filename);
end
h)
function processStore(P)
filename = input ('Hvilken fil vil du lagre til ? ', 's');
store(filename, P);
end
i)
function processListPersons(P) listPersons(P); end
j)
function [newListOfPersons] = processNewPerson(listOfPersons)
newData = promptPerson();
newListOfPersons = [listOfPersons,newData];
end
k)
function P = processChangePerson (P)
for i = 1:length(P)
fprintf('%i. ', i);
printPerson(P(i));
end
index = input ('Hvilken person vil du endre ? ');
P(index) = promptPerson();
end
i)
function personProgram ()
choice = -1;
P = [];
printHeader();
while choice ~= 0
printMenu();
choice = input ('Velg et tall: ');
clc
if choice == 0
continue
end
P = process(P, choice);
end
willSave = input('Vil du lagre ulagrede endringer? [Y/N]', 's');
if strcmp(willSave, 'Y')
process(P, 2);
end
printFooter();
end
m)
i process(P, choice)
...
case 6
processSearchPerson(P);
...
i printFooter()
...
fprintf('%s\n', '6. Søk etter person');
...
function processSearchPerson(P)
key = input('Hva heter personen?', 's');
for i = 1:length(P)
if strcmp(key, P(i).name)
printPerson(P(i));
pause(1);
return
end
end
fprintf('Kunne ikke finne %s\n', key);
end