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

Упр.83 ГДЗ Рабочая тетрадь Босова 9 класс (Информатика)

Задача

Рассмотрим вариант решения задания из учебника Босова 9 класс, Просвещение: 83. 0т острова Буяна до царства славного Салтана месяц (30 дней) пути. Капитан корабля записывает в вахтенный журнал количество миль, пройденных за день. Составьте блок-схему алгоритма для определения, в какую из трех десятидневок пройден больший путь. Напишите соответствующую программу на языке Паскаль. Решение: Задачу можно решить с формированием масса и последующей его обработкой, или без массива. В нижеприведенном решении массив не используется. Условные обозначения: i – текущий день; p1 – путь, пройденный за текущий день; pd1 – путь, пройденный за 1-ю десятидневку; pd2 – путь, пройденный за 2-ю десятидневку; pd3 – путь, пройденный за 3-ю десятидневку; max – максимальный путь, пройденный за десятидневку. n – номер десятидневки. program Z_83; var p1, max, n: integer; i, pd1, pd2, pd3: integer; begin pd1 := 0; pd2 := 0; pd3 := 0; for i := 1 to 30 do begin write(‘Введи путь, пройденный за ‘,i,’ день > ‘); readln(p1); if i < 11 then pd1 := pd1 + p1; if (i > 10) and (i < 21) then pd2 := pd2 + p1; if i > 20 then pd3 := pd3 + p1 end; max := pd1; n := 1; if pd2 > max then begin max := pd2; n := 2 end; if pd3 > max then begin max := pd3; n := 3 end; writeln(‘Больший путь пройдет в ‘, n, ‘ десятидневку ‘); end.

Подробный ответ

Суммируем путь, пройденный за каждый день, отдельно для трёх десятидневок:

  • первая десятидневка — дни с 1-го по 10-й;
  • вторая десятидневка — дни с 11-го по 20-й;
  • третья десятидневка — дни с 21-го по 30-й.

После этого сравниваем три суммы и определяем, в какой десятидневке путь наибольший.

Обозначим:

  • $$p1$$ — путь за текущий день;
  • $$pd1$$ — путь за 1-ю десятидневку;
  • $$pd2$$ — путь за 2-ю десятидневку;
  • $$pd3$$ — путь за 3-ю десятидневку;
  • $$max$$ — максимальный путь;
  • $$n$$ — номер десятидневки.

Алгоритм блок-схемы:

  1. Обнулить $$pd1$$, $$pd2$$, $$pd3$$.
  2. Для $$i$$ от 1 до 30 ввести $$p1$$.
  3. Если $$i \le 10$$, прибавить $$p1$$ к $$pd1$$.
  4. Если $$11 \le i \le 20$$, прибавить $$p1$$ к $$pd2$$.
  5. Если $$21 \le i \le 30$$, прибавить $$p1$$ к $$pd3$$.
  6. Сравнить $$pd1$$, $$pd2$$ и $$pd3$$, запомнить наибольшую сумму и номер десятидневки.

Программа на языке Pascal:

program Z_83;
var
  p1, max, n: integer;
  i, pd1, pd2, pd3: integer;
begin
  pd1 := 0; pd2 := 0; pd3 := 0;
  for i := 1 to 30 do
  begin
    write(‘Введи путь, пройденный за ‘, i, ‘ день > ‘);
    readln(p1);
    if i < 11 then pd1 := pd1 + p1;
    if (i > 10) and (i < 21) then pd2 := pd2 + p1;
    if i > 20 then pd3 := pd3 + p1;
  end;
  max := pd1; n := 1;
  if pd2 > max then begin max := pd2; n := 2 end;
  if pd3 > max then begin max := pd3; n := 3 end;
  writeln(‘Больший путь пройден в ‘, n, ‘ десятидневку’);
end.

Ответ

Нужно сложить путь за 1–10, 11–20 и 21–30 дни, затем сравнить три суммы и вывести номер десятидневки с наибольшим путём.



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