Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Просьба проверить и помочь,если есть ошибки.

Автор: GFs 14.12.2006 0:07

Задание:

На сортировочную станцию прибыли К поездов.Каждый характеризуется временем прибытия и номером.Время прибытия записано в массиве Тп[К],а номер-в массиве Тн[K].
1)Организовать заполнение массивов в диалоговом режиме.
2)Определить самое раннее время прибытия и номер соответствующего поезда.
Результат вывести на экран.




Program gf;
uses crt;
const k=15;
var Tv:array [1..k] of integer;
TN:array [1..k] of integer;
i,min,nmin:integer;
Begin
clrscr;
for i:=1 to k do
Begin
writeln (' vvedite vrem9 pribiti9 poezda ');
readln (TV [i]);
End;
for i:=1 to k do
begin
writeln ('vvedite nomer marwryta poezda');
readln (TN [i]);
end;
min:=tv[1];
nmin:=tn[1];
for i:=1 to k do
if TV[1] < min then
begin
min:=TV[i];
nmin:=tn[1];
writeln ('ranbwe vcex priwel poezd N ', i );
writeln ('nomer ego marwruta' , nmin);
writeln ('on priwel v ',min,'4acov');
end;
end.

Автор: мисс_граффити 14.12.2006 0:48

Гость, правила действительны для всех.
GFs, ТЭГИ!!!
по коду...
во-первых, формат ввода времени... хоть бы предупреждал пользователей, что надо вводить "1256", а не "12:56". и проверочку бы неплохо... время типа "3498" программку нисколько не смущает.
во-вторых, организация диалога. пользователь должен помнить, в каком порядке он вводил поезда?
лучше спрашивать попарно номер маршрута и время.
в-третьих, программа ничего не выводит. а почему?
потому что условие

if TV[1] < min then
никогда не будет выполняться! ты же сам пишешь:
min:=tv[1];

видимо, имелось в виду
if TV[i] < min then

ну и здесь того же типа ошибка:
nmin:=tn[1];

Автор: GFs 14.12.2006 4:24

с программой мне помогли.
Просьба,если не тяжело,сделать блок-схему.

Автор: мисс_граффити 14.12.2006 14:11

ну пусть они же и помогут!
или поищи по форуму, были ссылки на программки-построители блок-схем.