Root /ArchiveAbout
()

Движение лодки по озеру и по реке. Движение автомобилей

Движение лодки по озеру и по реке. Движение автомобилей

На этой странице дано решение примеров Begin35 - Begin37 из задачника Абрамяна, в которых рассматриваются простейшие школьные задачи связанные с движением.

Begin35. Скорость лодки в стоячей воде V км/ч, скорость течения реки U км/ч (U < V). Время движения лодки по озеру T1 ч, а по реке (против течения) — T2 ч. Определить путь S, пройденный лодкой (путь = время · скорость). Учесть, что при движении против течения скорость лодки уменьшается на величину скорости течения.

var
  V, U, T1, T2, S: real;

begin
  write('Скорость лодки в стоячей воде V = ');
  readln(V); { <-- вводим скорость лодки в стоячей воде }
  write('Скорость течения реки U = ');
  readln(U); { <-- вводим скорость реки }
  write('Время движения лодки по озеру T1 = ');
  readln(T1); { <-- вводим время движения лодки по озеру }
  write('Время движения лодки по реке (против течения) T2 = ');
  readln(T2); { <-- вводим время движения лодки против течения }
  S := V * T1; { <== расстояние, пройденное лодкой по озеру }
  V := V - U;  { <== скорость лодки против течения }
  S := S + V * T2; { <== общее расстояние, пройденное лодкой }
  writeln;
  writeln('Расстояние пройденное лодкой: S = ', S:0:3, ' км');
  readln
end.

**type** real;: Представляет число двойной точности с плавающей запятой.Размер: 8 байт Количество значащих цифр: 15 - 16 Диапазон значений: -1.8∙10308 .. 1.8∙10308 Begin36. Скорость первого автомобиля V1 км/ч, второго — V2 км/ч, расстояние между ними S км. Определить расстояние между ними через T часов, если автомобили удаляются друг от друга, двигаясь в противоположных направлениях. Данное расстояние равно сумме начального расстояния и общего пути, проделанного автомобилями; общий путь = время · суммарная скорость.

var
  V1, V2, T, S: real;

begin
  writeln('Введите скорости автомобилей (в км/ч):');
  write(' V1 = ');
  readln(V1); { <-- вводим скорость первого автомобиля }
  write(' V2 = ');
  readln(V2); { <-- вводим скорость второго автомобиля }
  writeln('Введите расстояние между автомобилями (в км):');
  write(' S = ');
  readln(S); { <-- вводим начальное расстояние }
  writeln('Введите время удаления автомобилей (в часах):');
  write(' T = ');
  readln(T); { <-- вводим время T удаления автомобилей }
  V1 := V1 + V2; { <== скорость удаления автомобилей }
  S := S + V1 * T; { <== расстояние через T часов удаления }
  writeln;
  writeln('Расстояние между автомобилями через ', T, ' часов:');
  writeln(' S = ', S:0:3, ' км');
  readln
end.

**type** real;: Представляет число двойной точности с плавающей запятой.Размер: 8 байт Количество значащих цифр: 15 - 16 Диапазон значений: -1.8∙10308 .. 1.8∙10308 Begin37. Скорость первого автомобиля V1 км/ч, второго — V2 км/ч, расстояние между ними S км. Определить расстояние между ними через T часов, если автомобили первоначально движутся навстречу друг другу. Данное расстояние равно модулю разности начального расстояния и общего пути, проделанного автомобилями; общий путь = время · суммарная скорость.

Как видно из условия задачи, в этом примере автомобили движутся уже по направлению друг к другу, а это означает, что их скорости нужно суммировать. Так, допустим, едет грузовой автомобиль со скоростью 60 км/ч, имеет скорость 120 км/ч, а первоначальное расстояние между автомобилями равно 400 км. Каково расстояние между автомобилями через 2 часа?

Вот это и напишем в программе ниже:

var
  V1, V2, T, S: real;

begin
  write('V1 = ');
  readln(V1); { <-- вводим скорость 1 автомобиля }    
  write('V2 = ');
  readln(V2); { <-- вводим скорость 2 автомобиля }
  write('S = ');
  readln(S); { <-- вводим начальное расстояние между автомобилями }
  write('T = ');
  readln(T); { <-- вводим время сближения автомобилей }
  S := abs(S - (V1 + V2) * T); { <== расстояние через T часов сближения }
  writeln;
  writeln(' S = ', S:0:3, ' км');
  readln
end.

**type** real;: Представляет число двойной точности с плавающей запятой.Размер: 8 байт Количество значащих цифр: 15 - 16 Диапазон значений: -1.8∙10308 .. 1.8∙10308 **function** Abs(x: real): real;: Возвращает модуль числа x.