a)
b)
Code Block |
---|
myGuess = [2,3,5,7,11,13,17]; |
c)
|
function ticket |
Code Block |
---|
function li = drawNumbersgetTicket(pool,n N)
for i = 1:length(pool)N
temp = pool(i);
indexk = randi([1,length(pool)],1);
poolticket(i) = pool(indexk);
pool(indexk) = temp[];
end
li = pool(1:n);
end |
dc)
Code Block |
---|
|
function antequals = compListcompareLists(li1list1,li2 list2)
antequals = 0;
for element1i = li11:length(list1)
for element2 = li2if ismember(list1(i), list2)
ifequals element1 == element2
ant = ant+1;
endequals + 1;
end
end
end |
ed)
Code Block |
---|
|
function premieprize = prizeSize(isEqualcorrectNumbers, isExtracorrectAdditionalNumbers)
if isEqualcorrectNumbers==7
premieprize = 2749455;
elseif isEqualcorrectNumbers == 6 && isExtracorrectAdditionalNumbers >=1
premieprize = 102110;
elseif isEqualcorrectNumbers == 6
premieprize = 3385;
elseif isEqualcorrectNumbers == 5
premieprize = 95;
elseif isEqualcorrectNumbers == 4 && isExtracorrectAdditionalNumbers >=1
premieprize = 45;
else
premieprize = 0;
end
end
|
fe)
Code Block |
---|
|
function lottoSimulator()
pool = 1:34;
myTicket = zeros(10,7);
fprintf('Dine myGuess = [2,3,5,7,11,13,17];
pool = 1:1:34;
lottoNumbers = drawNumbers(pool,10);
isEqual = compList(lottoNumbers(1:7),myGuesstall:\n')
for i = 1:10
fprintf('\nRekke %d: ', i);
myTicket(i,:) = sort(getTicket(pool, 7));
fprintf('%3d ', myTicket(i,:));
end
pause(3);
drawnNumbers = getTicket(pool, 10);
fprintf('\nTrukne tall:\n');
for j = 1:7
pause(0.5);
fprintf('%5d ',drawnNumbers(j));
end
fprintf('\nTilleggstall:\n');
for k = 1:3
pause(0.5);
fprintf('%5d ',drawnNumbers(7 + k));
end
prize = 0;
for h = 1:10
correctNumbers = compareLists(myTicket(h,:), drawnNumbers(1:7));
isExtracorrectAdditionalNumbers = compList(lottoNumberscompareLists(myTicket(h,:), drawnNumbers(8:10),myGuess);
premieprize = prizeSize(isEqual, isExtra) |
g)
prize + priseSize(correctNumbers, correctAdditionalNumbers);
end
fprintf('\nDu har vunnet: %d kroner\n', prize);
end |
f)
Code Block |
---|
|
function bool = smartInvestment()
totalWinnings |
Code Block |
---|
premie = 0;
fornumberOfCoupons i = 1:1:1000
myGuess7400/5;
pool = [2,3,5,7,11,13,171:34];
drawnNumbers = getTicket(pool, 10);
for pooli = 1:1:34;numberOfCoupons
lottoNumbersmyCoupon = drawNumbersgetTicket(pool,10 7);
isEqualcorrectNumbers = compList(lottoNumberscompareLists(myCoupon, drawnNumbers(1:7),myGuess);
isExtracorrectAdditionalNumbers = compList(lottoNumberscompareLists(myCoupon, drawnNumbers(8:10),myGuess);
premietotalWinnings = premietotalWinnings + prizeSize(isEqualcorrectNumbers, isExtracorrectAdditionalNumbers)-5;
end
premie
fprintf('Total gevinst: %d', totalWinnings);
bool = totalWinnings > 7400;
end |
Etter å ha kjørt koden 20 ganger, har det ennå ikke lønnet seg å spille lotto. For hver lottorekke man spiller taper man omtrent 4,5 kroner (vinner gjenomsnitt en halv krone per rekke).