Обычный метод деления пополам. 8/2=4, 4/2=2, 2/2=1. Три вопроса.
1) четвертая или меньше? "да" 2)Вторая или меньше? "нет". 3)Третья? "нет".
Значит четвёртая. Можно и другим направлением по такой схеме.
<span>"Логика. Основы алгоритмизации"
1. Рядом со школой растут 6 деревьев: сосна, береза, липа, тополь, ель и клен. Известно, что береза ниже тополя, а липа выше клена, сосна ниже ели, липа ниже березы, сосна выше тополя. Перечислить деревья в порядке возрастания их высоты.
</span>
Если а>=х то хватит.
а если не хватит, то нужно добавить х-а рублей
Этика - наука, изучающая нормы поведения между человека в обществе
//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