Отправляет email-рассылки с помощью сервиса Sendsay

Дистанционное обучение

  Все выпуски  

Уроки и методика преподавания информатики для учителей решаем олимпиадную задачу www.thl.narod.ru


здравствуйте уважаемые подписчики. Особенно приятно видеть вновь прибывших. надеюсь здесь им будет интересно и они найдут ответы на многие интересующие их вопросы. сегодня я решил немного изменить правилам и по Вашим просьбам разберу решение олимпиадной задачи. В таблице имеются тетовые значения. Предлагаю ее обсудить если у кого есть другое мнение. на всякий случай к письму прикрепляю файл в WORD-овском формате. если будут вопросы - пишите на адрес 1ptt@mail.ru Вот она: Задача: два поезда находящиеся на расстоянии S друг от друга движутся навстречу друг другу со скоростями V1 и V2. Между ними летает очень быстрая муха со скоростью V3. Сколько перелетов совершит муха до встречи поездов. Данные для ввода: Скорость первого поезда 1000 1000 1000 60 60 Скорость второго поезда 1000 1000 1000 90 60 Скорость мухи 1000,0001 1000,001 1000,01 10000 100 Расстояние между поездами 0,0001 0,001 0,001 10 100 Ответ 5 6 7 6078 68 Решение задачи: Рассмотрим случай когда муха летит от первого поезда ко второму. Расстояние, пройденное поездом и мухой представим: (1) где : V3-скорость мухи; V2-скорость второго поезда; t-время в пути; из формулы (1) получим время потраченное на встречу между мухой и вторым поездом: (2) второй поезд прошел расстояние: (3) общее расстояние между поездами сократилось и составляет: (4) достигнув второго поезда муха летит обратно (причем нам известно время на преодоление расстояния между поездами, расстояние которое уменьшилось), так будет происходить до тех пор пока расстояние между поездами не составит 0. program muha; v1-скорость перввого поезда v2-скорость второго поезда v3-скорость мухи s-растояние между поездами var v1,v2,v3,s,k:real; t:extended; begin writeln('введите скорость первого поезда'); read(v1); writeln('введите скорость второго поезда'); read(v2); writeln('введите скорость мухи');read(v3); writeln('введите расстояние между поездами'); read(s); while s>0 do begin t:=s/(v3+v2); s:=s-(v2*t+v1*t); k:=k+1; end; writeln('количество перемещений мухи',k); end.

В избранное