Перейти к содержанию

1.Быстрый Фил 2. Диаграмма направлености


Рекомендуемые сообщения

Кто учился или учится на ПОВТАСе в ВСГТУ , может у кого завалялась программа или сама курсовая :) прошу помочь .

Быстрый Фил. Фил работает работает в последнюю смену.После работы ровно в 2-00 утра Фил уезжает домой с автомобильной

стоянки.Его маршрут пролегает по дороге,на которой установлены один или несколько светофоров.Фил всегда удивлялся,что,выбирая определенную

скорость движения по маршруту и не изменяя ее ,он мог иногда доехать к дому без задержки на светофорах,т.е. все светафоры он проезжает

на зеленый свет.Скорость движения в городской черте не должна превосходить 60 миль/час.Однако Фил не любил и тихо ездить.

Минимальная скорость его движения 30 миль/час.Составьте алгоритм-программу,которая находит все целочимленные скорости(в милях/час),с которыми

Фил может двигаться домой без остановки на светофорах,начало движения с автомобильной стоянки ровно в 2-00 утра.В этот момент времени все светофоры сбрасываются в

зеленый свет.

Исходные данные задаются в текст. файле,в котором приводится набор данных для описания режимов работы светофоров.Последнее

число в файле(-1),является признаком конца данных в файле.Первое число n каждого набора чисел : Length-GreenYellowRed (LGYR)

для каждого светофора, где L-положительное действительное число,указывающее место расположения светофора от начала маршрута Фила;

G,Y,R - интервал продолжительности времени в секундах непрерывного цвета светофора зеленого,желтого,красного.Результаты

расчетов допустимых целочисленных скоростей движения Фила сохранить в выходном файле:

Файл исходных данных:

1

5.5 40 8 25

Файл выходных данных : 30,32,33,36,37,38,41,42,43,44,45,48,49,5051,52,53,54,59,60

Файл исходных данных:

3

10.7 10 2 75

12.5 12 5 57

17.93 15 4 67

-1

Файл выходных данных : Должно получится 0 - признак отсутствия такой скорости

Ссылка на комментарий

Собственно вот решение этой задачи , мало ли кому пригодится :)


const
m=100;

var
f: text;
i,n,v: integer;
y,r,t: real;
l,g,c: array [1..m] of real;
Yes: boolean;
Comma: string[1];

begin
Assign(f,'in.txt');
ReSet(f);
ReadLn(f,n);
for i:=1 to n do begin
ReadLn(f,l[i],g[i],y,r);
c[i]:=g[i]+y+r
end;
Close(f);
Comma:='';
Assign(f,'out.txt');
ReWrite(f);
for v:=30 to 60 do begin
Yes:=true;
i:=0;
while Yes and (i Inc(i);
t:=l[i]/v*3600;
Yes:=Yes and (t-Trunc(t/c[i])*c[i]<=g[i])
end;
if Yes then begin
Write(f,Comma,v);
Comma:=','
end
end;
if Length(Comma)=0 then Write(f,0);
Close(f)
end.

вроде как работает.

Добавлено спустя 10 минут 12 секунд:

Так же обращаюсь к студентам ВСГТУ :) может у кого была такая тема по программированию

"Диаграмма направленности" (полярная система координат )

%E4%E8%E0%E3%F0%E0%EC%EC%E0%20%ED%E0%EF%F0%E0%E2%EB%E5%ED%EE%F1%F2%E8.jpg

Ссылка на комментарий
  • 6 месяцев спустя...

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...