// PascalABC.NET 3.1, сборка 1198 от 11.03.2016
function Sod(n:integer):integer:=
n.ToString.Select(c->StrToInt(c)).Sum;
begin
var n:=ReadInteger('n=');
var max:=0;
var m,mmax:integer;
for var i:=1 to n do begin
m:=ReadInteger('Число '+IntToStr(i)+': ');
var s:=Sod(m);
if s>max then begin max:=s; mmax:=m end
end;
Writeln('Максимальная сумма ',max,' в числе ',mmax)
end.
<u><em>Тестовое решение:</em></u>
n= 5
Число 1: 3243
Число 2: 10000004
Число 3: 23536
Число 4: 9942
Число 5: 43354
Максимальная сумма 24 в числе 9942
Sub My_VBA()
s = 0
Do
n = InputBox("введите число, 0 - конец ввода")
If n > 0 Then s = s + n
Loop Until n = 0
MsgBox "Сумма положительных чисел равна " + Str(s)
End Sub
Блок-схема во вложении
Смотря какая целочисленная переменная предпологается, их много разновидностей и и у каждой свой размер. (Пример для переменных из PascalABC в приложении)
Например целочисленная переменная типа word идеально подходит, займет 2 байта
Но более обычно для хранения целочисленных используется integer (Int32) которая занимает 4 байта
Переменные вещественых чисел обычно занимают больше места чем переменные целых, так что этот вариант рассматривать не будем
Строковая. В данном случае 500 занимает 3 символа. Чтобы узнать размер данных нужно знать в какой кодировке предпологается хранение. Стандартно сейчас используются 8битные и 16 битные кодировки, но существуют и другие.
3 * 8 бит = 3 * 1 байт = 3 байта
Вообще целые числа лучше хранить в целочисленных переменных, они под них оптимизированны, потому я за вариант 2