vasenkova1981
?>

Разработайте универсальную подпрограмму, удаляющую из массива элемент, номер которого передается в списке параметров. Поместите подпрограмму в модуль. Разработайте тестирующую программу. Массив можно задать, используя генератор случайной величины.

Информатика

Ответы

Aleksandr_Vasilev

Месяц находим методом половинного деления.

Двоичная запись числа 366 размещается в 9 битах (в 8 битах размещается только 256 чисел , а в 9 битах - уже 512).

То есть , понадобится задать 8 вопросов и девятой фразой будет ответ.

В году 365 (366) дней. Пусть 366, для 365 рассуждение то же.

Рассмотрим самый худший вариант

Середина года - день номер 366/2=183. Это 1 июля.

Первый вопрос: День рождения в первой половине года?

Допустим, да.

Второй вопрос: День рождения в первом квартале?

Допустим, нет. Следовательно во втором.

Второй квартал - это дни с номерами от 92 до 182. Середина - среднее арифметическое. (92+182)/2=137. Это дата 17 мая.

Третий вопрос: День рождения позднее 17 мая?

Допустим, нет.

Следовательно, интервал дат 1 апреля - 17 мая, 91 день. Опять делим на 2, сужая интервал до 22 дней. Это дата 22 апреля.

Четвертый вопрос: День рождения позднее 22 апреля?

Допустим, нет.

Новый диапазон поиска - 23 апреля - 17 мая. Половиним его.

Пятый вопрос: День рождения позднее 29 апреля?

Допустим, нет.

Поиск сузился до 23 - 29 апреля. Снова берем половину.

Шестой вопрос: День рождения позднее 26 апреля?

Допустим, нет.

Интервал дат 23-26 апреля. Половиним.

Седьмой вопрос: День рождения позднее 24 апреля?

Допустим, да.

Интервал дат 25-26 апреля.

Восьмой вопрос: День рождения 25 апреля?

Допустим, нет

Девятая фраза: Ваш день рождения 26 апреля.

zapros
Var
A,B,C:integer;
Begin

WriteLn('Введите три числа');
ReadLn(A,B,C);
if (A<=B)and(B<=C) then Write(A,' ',B,' ',C)
else if (A<=C)and(C<=B) then Write(A,' ',C,' ',B)
else if (B<=A)and(A<=C) then Write(B,' ',A,' ',C)
else if (B<=C)and(C<=A) then Write(B,' ',C,' ',A)
else if (C<=A)and(A<=B) then Write(C,' ',A,' ',B)
else if (C<=B)and(B<=A) then Write(C,' ',B,' ',A)
End.

Var a,b,c,D:real;
Begin
Write('a = ');ReadLn(a);
Write('b = ');ReadLn(b);
Write('c = ');ReadLn(c);
D:=b*b-4*a*c;
if D>=0 then
   Begin
   WriteLn('x = ',(-b-sqrt(D))/(2*a));
   WriteLn('x = ',(-b+sqrt(D))/(2*a));
   End
else WriteLn('Действительных корней нет')
End.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Разработайте универсальную подпрограмму, удаляющую из массива элемент, номер которого передается в списке параметров. Поместите подпрограмму в модуль. Разработайте тестирующую программу. Массив можно задать, используя генератор случайной величины.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

ALLA1868
margo55577869
maxborod
keti0290103
RozaAsadullina
ievlevasnezhana7
info8
papushinrv4985
yuraotradnov
zharovaleks
nordwokintos4
in-1973
Aleksandrovich-Yurevna1421
Алиференко_Елена342
1. Заполните диаграмму Венна. if switch
Tsibrova