Не равно
__________________________
16 бит= 2 байта
2,5 байта= 20 бит
640,7кб=656076,8 байт
512 кб=0,5 мб
2,7Гб=2831155,2кб
Качество звука обычно измеряется в размере информации за единицу времени. В данной задаче размер = 940 Кбайт, время = 10 секунд.
Качество = размер / время = 940 Кбайт / 10 секунд = 94 Кбайт / секунду = 752 Кбит / секунду.
Для сравнения: 320 кбит в секунду это максимальное качество для mp3.
752 Кбит / секунду похоже на аудио которое было сжато без потерь (качество информации не ухудшилось по сравнению с оригиналом).
Имеет смысл воспользоваться методом "дихотомии" (деления пополам).
Если с днем рождения все понятно: в году максимум 366 дней и требуется определить нужный, то непонятно, как быть с загаданным учеником - их условно пронумеровать и спрашивать о номере?
Поэтому принимаем такое решение. Мы делим список учеников на два части (например, написав сведения о каждом на отдельной карточке и разложив эти карточки на две равные кучки по 560/2 = 280 человек в каждой. Затем задаем вопрос: загаданный ученик находится в первой кучке? По результатам ответа кучку, содержащую загаданного ученика, снова делим пополам. Процесс повторяем пока не останется одна карточка. Аналогично поступаем с датами рождения.
Тогда количество вопросов определится, как степень числа 2, дающая число, не меньшее количества учеников (дней рождения).
2⁹ < 560 < 2¹⁰, поэтому ученик будет угадан максимум за 10 вопросов.
2⁸ < 366 < 2⁹, поэтому день рождения будет угадан максимум за 9 вопросов.
В сумме потребуется задать не более 9+10 = 19 вопросов.
Конечно, можно придумать более продвинутую систему, когда на карточках учеников будут указаны одновременно и даты их рождения, тогда количество вопросов можно снизить.
Program prog;
uses crt;
var a: array [1..30] of integer;
i: integer;
begin
clrscr;
for i:=1 to 30 do
begin
write('a[',i,'] = ');
readln(a[i]);
end;
for i:=1 to 30 do
begin
if (abs(a[i]) mod 10)+ (abs(a[i]) div 10) < 10 then
write (a[i], ' ');
end;
end.