# Sn*= sum of integers dividable by 11, write a script program that inputs a large positive integer M, computes the smallest integer n∗such that Sn∗> M, then displays n∗and Sn∗.

1 view (last 30 days)
Jason on 22 Sep 2022
Edited: Torsten on 22 Sep 2022
I am honestly so lost with this question, because 1) the wording is awful and 2) I just don't get while loops. The full question is "Let Sn be the sum of integers that are between 1 and n and are dividable by 11. Write a script program that inputs a large positive integer M, computes the smallest integer nsuch that Sn> M, then displays nand Sn." I have this so far.
%Small integer
M=input('Enter number M:');
n=1;
rem(n,11)=0;
while Sn<=M
if rem(n,11)==0
end
n=n+1;
Sn=n;
end
Sns=Sn;
ns=n;
fprintf('ns=%f\n', ns)
fprintf('Sns=%f\n', Sns)
I just don't know what else to put

Dyuman Joshi on 22 Sep 2022
Edited: Dyuman Joshi on 22 Sep 2022
You have done quite well despite your limited understanding of the question. Your code requires only a few modifications -
%M=input('Enter number M:');
%random large positive integer
M=123456;
%initiating the sum as 0
Sn=0;
n=1;
while Sn<=M
if rem(n,11)==0
Sn=Sn+n;
end
n=n+1;
end
fprintf('n=%d\n', n)
n=1651
fprintf('Sn=%d\n', Sn)
Sn=124575
We can verify this as well
y=11.*(1:n/11);
sum(y)
ans = 124575
Torsten on 22 Sep 2022
Edited: Torsten on 22 Sep 2022
rem is treated as an array in your code, not as a function. Thus somewhere you must have created an array called "rem".
E.g. the line
rem(n,11)=0;
(which makes no sense) would do this.
If you just had copied @Dyuman Joshi 's code, you had no problems.

### Categories

Find more on Programming in Help Center and File Exchange

R2022a

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!