Натуральные числа в математике определяются как целые положительные, получающиеся при счете. Т.е. это числа 1, 2, 3, ...
В языке Паскаль (собственно, как и в большинстве других языков программирования) нет специального типа данных для натуральных чисел. Поэтому натуральные числа отображаются на целочисленные типы. Указание на то, что Вы имеете дело с натуральным числом, дается с тем, чтобы учесть это при разработке алгоритма. Например, если сказано что n - натуральное число, можно не беспокоиться, что при делении на него будет ошибка деления на ноль. Можно не озабочиваться тем, что оно попадет под квадратный корень и даст ошибку из-за появления код корнем отрицательного числа. И так далее.
Подходящим типом данных в Паскале может быть тот целочисленный, в котором разместятся любые натуральные числа, которые заданы или могут образоваться в процессе вычислений, даже как промежуточные данные. Например, если Вы возьмете тип integer, современные версии Паскаль позволят разместить в нем значение, не превышающее 2 147 483 647, т.е. примерно 2.1 миллиарда. Пусть дано n = 2 000 000 000 и надо найти остаток от деления n² на 97.
Если написать Sqr(n) mod 97, получим забавный результат -41, хотя ответ тут 65. Это потому, что 2 миллиарда в квадрате нельзя разместить в переменной типа integer (но можно в int64) и часть разрядов числа будет <u>молча</u> утеряна. Это одна из неприятностей неграмотной работы с целыми числами. Одна - потому что есть и другие)).
Сначала считаем сколько символов, 20 символов логина + 10 символов пароля + М и Ж, то есть 20+10+2=32.
Для хранения каждого символа требуется 5 бит, так как 2^5=32.
Теперь считаем одного пользователя 15 символов логина + 10 символов пароля + 1 символ пола (М или Ж), получаем 26.
26*5=130 бит. Переводим в байты. Ближнее большее число делящееся на 8 это 17. Так как 17*8=136, а 16*8=128, не хватает до 130. Получаем на пользователя 17 байт, всего у нас 20 пользователей, 20*17=340, итого 340 байт.
Var a, n, i, s : integer;
begin
read (n);
for i:=1 to n do
begin
read (a);
s:=s+a;
end;
write (s);
end.
В последовательном соединении
<em><u>P.S. Надеюсь на благодарность и лучший ответ.</u></em>
Var
a, b, x, y, z: real;
begin
readln(a, b, x, y, z);
if ((a < x) and (b < y)) or
((a < x) and (b < z)) or
((a < z) and (b < y)) then
writeln(true)
else writeln(false);
end.