2 байта = 16 бит => всего значений - 2^16=65536
-1 для нуля
65535
и получается диапазон -32768...32767
min - -32768
Program gt;
var n,q,a1,a2,a3,a4,a5,a6,a7,a8,a9,a0:integer;
begin
read(n);
a0:=0;a1:=0;
a2:=0;a3:=0;
a4:=0;a5:=0;
a6:=0;a7:=0;
a8:=0;a9:=0;
while n>0 do
begin
q:=n mod 10;
n:=n div 10;
if(q=0)then a0:=a0+1;
if(q=1)then a1:=a1+1;
***********************
***********************
if(q=9)then a9:=a9+1;
end;
if(a0>1)or(a1>1)or....(a9>1)then writeln('yes')else writeln('no');
end.
буз массива как-то так получиться
//Pascal ABC.NET v3.1 сборка 1172
var
ma: array of array of integer;
n, m, i, j, max, maxi, maxj: integer;
f: text;
s, st: string;
begin
randomize;
readln(n);
readln(m);
max := -1;
setlength(ma, n);
for i := 0 to n - 1 do
setlength(ma[i], m);
writeln('Matrix:');
for i := 0 to n - 1 do
begin
writeln;
for j := 0 to m - 1 do
begin
ma[i, j] := random(101);
write(ma[i, j]:4);
if max < ma[i, j] then
begin
max := ma[i, j];
maxi := i;
maxj := j;
end;
end;
end;
assign(f, 'text.txt');
rewrite(f);
for i := 0 to m - 1 do
write(f, ma[maxi, i]:4);
writeln(f, ' ');
for i := 0 to n - 1 do
write(f, ma[i, maxj]:4);
close(f);
writeln;
writeln('File:');
assign(f, 'text.txt');
reset(f);
while not Eof(f) do
begin;
readln(f, st);
s := s + st + chr(10) + chr(13);
end;
close(f);
write(s);
end.
Пример ввода:
3
4
Пример вывода:
Matrix:
30 29 3 61
64 4 99 36
45 9 85 19
File:
64 4 99 36
3 99 85
For всегда равен нулю, если делимое меньше делителя. Взятие остатка mod вычисляется остатка полученный при выполнении целичесленного делителя