М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
MN1k1ta
MN1k1ta
07.06.2020 12:10 •  Информатика

30 ! выведите на экран значения функции у=х^2 в интервале [а, b], с шагом h, где a, b-целые числа, h-вещественное

👇
Ответ:
den751
den751
07.06.2020
// PascalABC.NET 3.2, сборка 1359 от 11.12.2016
// Внимание! Если программа не работает, обновите версию!

begin
  var a,b:integer;
  var h:real;
  Write('Введите a,b,h: '); Read(a,b,h);
  var x:=real(a);
  while x<=b do begin
    Writeln(x,'  ',x*x);
    x:=x+h
    end;
end.

Пример
Введите a,b,h: 10 20 0.5
10  100
10.5  110.25
11  121
11.5  132.25
12  144
12.5  156.25
13  169
13.5  182.25
14  196
14.5  210.25
15  225
15.5  240.25
16  256
16.5  272.25
17  289
17.5  306.25
18  324
18.5  342.25
19  361
19.5  380.25
20  400
4,5(28 оценок)
Открыть все ответы
Ответ:
ученик22826
ученик22826
07.06.2020

var

  a : array [1..100] of real;

  n, i : integer;

begin

  read (n);

  for i := 1 to n do read (a[i]);

  for i := 1 to n do

    if a[i] <= 0 then

    begin

      writeln ('NO');

      readln;

      Halt;

    end;

  writeln ('YES');

  readln;

end. 

  

var

  a : array [1..100] of real;

  n, i : integer;

  o : real;

begin

  read (n);

  for i := 1 to n do read (a[i]);

  o := a[1];

  for i := 2 to n do

    if a[i] <> o then

    begin

      writeln ('NO');

      readln;

      Halt;

    end;

  writeln ('YES');

  readln;

end. 

  

var

  a : array [1..100] of real;

  n, i : integer;

  x : real;

begin

  read (n);

  for i := 1 to n do read (a[i]);

  read (x);

  for i := 1 to n do

    if a[i] = x then

    begin

      writeln ('YES');

      readln;

      Halt;

    end;

  writeln ('NO');

  readln;

end. 

  

  

4,8(21 оценок)
Ответ:
marypawgamesyt
marypawgamesyt
07.06.2020

Самая оптимальная стратегия угадывания - дихотомия, то есть деление отрезка пополам и задавание вопроса больше? (или меньше?)

Например, загадано 50

Последовательность

32   64/2            больше

48   (32+64)/2   больше

56   (48+64)/2   меньше

52   (48+56)/2   меньше

50   (48+52)/2   попал

 

Теперь о задаче. Вопрос очень некорректный, если бы он звучал, как сколько попыток нужно сделать, чтобы угадать? , то решение простое

64 = 2^6, поэтому нужно 6 попыток 6 = 110b, значит 3 бит достаточно, чтобы в них разместить это количество попыток.

НО в задаче вопрос-то другой! Потому что в процессе отгадывания на каждом шаге нужно знать 1. Концы отрезка, 2. ответ

Концы это 6 бит и 6 бит +ответ 1 бит, итого 13 бит на шаг *6 = 78 бит. Можно ещё сократить немного, так как в последующем вопросе используется информация из предыдущего(один из концов интервала).

Уточни, что имеется в виду под фразой "какое количество информации", иначе задача неопределена и допускает многочисленные толкования.

 

 

4,7(24 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ