Смотри, выписываешь все числа на бумагу. 1.Смотришь первый шаг: максимальная сумма 2-значных чисел это 18 (9+9), минимальная 1 (1+0), то есть больше 18 . 2-ой шаг - максимальное произведение это 27 (9*3), а минимальное 0 (0*3) или 3 (1*3). 3.Каждое число делишь (чертой) на 2 числа. (2 |1, 7|3, 9|4, 72|9, 12|9, 15|14, 27|18, 29|12 4.смотришь чтобы ни одно число не было больше 27, а если такое есть, то другое число должно быть меньше либо равно 18. 7|29 и 29|12 сразу зачеркиваем, так как они не подходят. Далее смотришь, числа по невозрастанию должны быть, так что 4.Дальше надо считать: 1-е число:2 и 1. Неподходит, так как ни одно число не подходит в диапазон умножения (оно не равно 3-м или нулю). Зачеркиваем. 2-е число 7 и 3. число 7 не делится нацело на 3, возможно, что оно произошло при сложения (4 и 3 например). 3 тоже подходит (3*1) Оставляем. 3-е число 9 и 4 Подходит (3*3 и 2+2) 4-е число 72 и 9 мы его зачеркнули 5-е число 12 и 9 Подходит (4*3 и 6+3) 6-е число 15 и 14 Подходит (5*3 и 7+7) 7-е число 27 и 18 Подходит прям впритык (9*3 и 9+9) 8-е число 29 и 12 Мы его зачеркнули ответ: 5 чисел.
Возможно, тебе мой метод непонятен, так что обратись к другим источникам, или налегай на другие задания. Удачи)))
Const n=8; var aNam, aFam, aDat: array[1..n] of string; i: integer;
begin aNam[1]:='Олег'; aFam[1]:='Бубенков'; aDat[1]:='1993'; aNam[2]:='Игорь'; aFam[2]:='Бросов'; aDat[2]:='1991'; aNam[3]:='Тимур'; aFam[3]:='Наружный'; aDat[3]:='1961'; aNam[4]:='Анастасия'; aFam[4]:='Боброва'; aDat[4]:='1985'; aNam[5]:='Михаил'; aFam[5]:='Тапаров'; aDat[5]:='1957'; aNam[6]:='Евгений'; aFam[6]:='Костарева'; aDat[6]:='1992'; aNam[7]:='Мария'; aFam[7]:='Никитин'; aDat[7]:='1977'; aNam[8]:='Ксения'; aFam[8]:='Бабенкова'; aDat[8]:='1978'; writeln('Лица, чьи фамилии начинаются на букву "Б"'); for i := 1 to n do if aFam[i][1] = 'Б' then writeln(aNam[i],' ',aFam[i], ' (', aDat[i], ')') end.
тестовый прогон:
Лица, чьи фамилии начинаются на букву "Б" Олег Бубенков (1993) Игорь Бросов (1991) Анастасия Боброва (1985) Ксения Бабенкова (1978)
Возможна также более "современная" запись программы
const n = 8;
type tP = record Nam: string; Fam: string; Dat: string end;
var M: array[1..n] of tP; i: integer;
begin with M[1] do begin Nam := 'Олег'; Fam := 'Бубенков'; Dat := '1993' end; with M[2] do begin Nam := 'Игорь'; Fam := 'Бросов'; Dat := '1991' end; with M[3] do begin Nam := 'Тимур'; Fam := 'Наружный'; Dat := '1961' end; with M[4] do begin Nam := 'Анастасия'; Fam := 'Боброва'; Dat := '1985' end; with M[5] do begin Nam := 'Михаил'; Fam := 'Тапаров'; Dat := '1957' end; with M[6] do begin Nam := 'Евгений'; Fam := 'Костарева'; Dat := '1992' end; with M[7] do begin Nam := 'Мария'; Fam := 'Никитин'; Dat := '1977' end; with M[8] do begin Nam := 'Ксения'; Fam := 'Бабенкова'; Dat := '1978' end; writeln('Лица, чьи фамилии начинаются на букву "Б"'); for i := 1 to n do With M[i] do begin if Fam[1] = 'Б' then writeln(Nam, ' ', Fam, ' (', Dat, ')') end end.
1.Смотришь первый шаг: максимальная сумма 2-значных чисел это 18 (9+9), минимальная 1 (1+0), то есть больше 18 .
2-ой шаг - максимальное произведение это 27 (9*3), а минимальное 0 (0*3) или 3 (1*3).
3.Каждое число делишь (чертой) на 2 числа. (2 |1, 7|3, 9|4, 72|9, 12|9, 15|14, 27|18, 29|12
4.смотришь чтобы ни одно число не было больше 27, а если такое есть, то другое число должно быть меньше либо равно 18. 7|29 и 29|12 сразу зачеркиваем, так как они не подходят.
Далее смотришь, числа по невозрастанию должны быть, так что
4.Дальше надо считать:
1-е число:2 и 1. Неподходит, так как ни одно число не подходит в диапазон умножения (оно не равно 3-м или нулю). Зачеркиваем.
2-е число 7 и 3. число 7 не делится нацело на 3, возможно, что оно произошло при сложения (4 и 3 например). 3 тоже подходит (3*1)
Оставляем.
3-е число 9 и 4 Подходит (3*3 и 2+2)
4-е число 72 и 9 мы его зачеркнули
5-е число 12 и 9 Подходит (4*3 и 6+3)
6-е число 15 и 14 Подходит (5*3 и 7+7)
7-е число 27 и 18 Подходит прям впритык (9*3 и 9+9)
8-е число 29 и 12 Мы его зачеркнули
ответ: 5 чисел.
Возможно, тебе мой метод непонятен, так что обратись к другим источникам, или налегай на другие задания.
Удачи)))
n=8;
var
aNam, aFam, aDat: array[1..n] of string;
i: integer;
begin
aNam[1]:='Олег'; aFam[1]:='Бубенков'; aDat[1]:='1993';
aNam[2]:='Игорь'; aFam[2]:='Бросов'; aDat[2]:='1991';
aNam[3]:='Тимур'; aFam[3]:='Наружный'; aDat[3]:='1961';
aNam[4]:='Анастасия'; aFam[4]:='Боброва'; aDat[4]:='1985';
aNam[5]:='Михаил'; aFam[5]:='Тапаров'; aDat[5]:='1957';
aNam[6]:='Евгений'; aFam[6]:='Костарева'; aDat[6]:='1992';
aNam[7]:='Мария'; aFam[7]:='Никитин'; aDat[7]:='1977';
aNam[8]:='Ксения'; aFam[8]:='Бабенкова'; aDat[8]:='1978';
writeln('Лица, чьи фамилии начинаются на букву "Б"');
for i := 1 to n do
if aFam[i][1] = 'Б' then
writeln(aNam[i],' ',aFam[i], ' (', aDat[i], ')')
end.
тестовый прогон:
Лица, чьи фамилии начинаются на букву "Б"
Олег Бубенков (1993)
Игорь Бросов (1991)
Анастасия Боброва (1985)
Ксения Бабенкова (1978)
Возможна также более "современная" запись программы
const
n = 8;
type
tP = record
Nam: string;
Fam: string;
Dat: string
end;
var
M: array[1..n] of tP;
i: integer;
begin
with M[1] do begin Nam := 'Олег'; Fam := 'Бубенков'; Dat := '1993' end;
with M[2] do begin Nam := 'Игорь'; Fam := 'Бросов'; Dat := '1991' end;
with M[3] do begin Nam := 'Тимур'; Fam := 'Наружный'; Dat := '1961' end;
with M[4] do begin Nam := 'Анастасия'; Fam := 'Боброва'; Dat := '1985' end;
with M[5] do begin Nam := 'Михаил'; Fam := 'Тапаров'; Dat := '1957' end;
with M[6] do begin Nam := 'Евгений'; Fam := 'Костарева'; Dat := '1992' end;
with M[7] do begin Nam := 'Мария'; Fam := 'Никитин'; Dat := '1977' end;
with M[8] do begin Nam := 'Ксения'; Fam := 'Бабенкова'; Dat := '1978' end;
writeln('Лица, чьи фамилии начинаются на букву "Б"');
for i := 1 to n do
With M[i] do begin
if Fam[1] = 'Б' then
writeln(Nam, ' ', Fam, ' (', Dat, ')')
end
end.