1-11 класс
  • 1-11 класс
  • 1 класс
  • 2 класс
  • 3 класс
  • 4 класс
  • 5 класс
  • 6 класс
  • 7 класс
  • 8 класс
  • 9 класс
  • 10 класс
  • 11 класс
Выберите класс
Предметы
(Сам и контр)
Задание 1 Вариант 2 Самостоятельная работа 5 ГДЗ Рабочая тетрадь Босова 11 класс (Информатика)
Босова, Босова, Аквилянов
11 класс
Класс
11
Предмет
Информатика
Автор
Босова, Босова, Аквилянов

Задание 1 Вариант 2 Самостоятельная работа 5 ГДЗ Рабочая тетрадь Босова 11 класс (Информатика)

Задача
  1. Напишите программу. На числовой прямой отмечены точки $$A_1, A_2, A_3, \ldots, A_n$$. Выясните, какому из отрезков $$[A_i; A_{i+1}]$$ принадлежит заданная точка $$X$$. Запишите текст программы.
Подробный ответ

Сначала введём координаты точек $$A_1, A_2, \dots, A_n$$ и отсортируем их по возрастанию, чтобы точки на числовой прямой шли слева направо. Затем введём координату точки $$x$$ и проверим, между какими соседними точками она находится.

Если $$x$$ лежит между $$a[i]$$ и $$a[i+1]$$, то точка принадлежит отрезку $$[A_i; A_{i+1}]$$. Если $$x$$ меньше первой точки или больше последней, то она не принадлежит ни одному из отрезков.

program s5_v2_1;
const
  n = 5;
var
  a: array[1..n] of integer;
  i, x, c, j: integer;
begin
  writeln(‘Ввод координат точек’);
  for i := 1 to n do
    readln(a[i]);
  
  // сортировка «пузырьком» по возрастанию
  for i := 1 to n — 1 do
    for j := 1 to n — i do
      if a[j] > a[j + 1] then
      begin
        c := a[j];
        a[j] := a[j + 1];
        a[j + 1] := c;
      end;
  
  writeln;
  write(‘x=’);
  readln(x);
  
  if (x >= a[1]) and (x <= a[n]) then
  begin
    for i := 1 to n — 1 do
      if (x >= a[i]) and (x <= a[i + 1]) then
        write(‘x принадлежит отрезку ‘, a[i], ‘:’, a[i + 1]);
  end
  else
    writeln(‘x не принадлежит ни одному отрезку’);
end.

Ответ: программа на Pascal, приведённая выше.



Общая оценка
3.7 / 5
Другие учебники
Другие предметы