Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
11 / 12 / 8
Регистрация: 16.11.2016
Сообщений: 892

Ошибка в готовой программе

17.04.2017, 17:37. Показов 629. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Написал программу, пользователь должен ввести информацию о 8 поездах, после пользователь вводит что хотел бы сделать, 1=вывести информацию о поездах после определённого времени, 2-все поезда, 3 -выход из цикла. Но ошибка в строке 40, поптыка вызвать процедуру как функцию. В чём ошибка?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
type TRAIN=record
City:string[30];
number:integer;
TimeH:integer;
TimeM:integer;
end;
Var A:TRAIN;
    B:array[0..7] of TRAIN;
    i,j,ch, TH, TM:integer;
    m:string;
begin
for i:=0 to 7 do
begin
writeln ('Input City');
readln (B[i].City);
writeln ('Input number train');
readln (B[i].number);
writeln ('Input time');
readln (B[i].TimeH);
readln (B[i].TimeM);
end;
 
 
for j:=0 to 7 do
for i:=0 to 6 do
if B[i+1].City<B[i].City then
begin
A := B[i+1];
B[i] := B[i];
B[i] := A;
end;
 
writeln('Enter Choose, please');
writeln('1-Train After you Time, 2-All Train in day, 3-exit');
readln(ch);
while ch<3 do
begin
case(ch) of
1: writeln ('Enter time');
   readln(TH);
   readln(TM);
   for i:=0 to 7 do
   begin
   if (TH>B[i].TimeH) then
   begin
   readln (B[i].City);
   readln (B[i].number);
   readln (B[i].TimeH);
   readln (B[i].TimeM);
   end
   end
   else if (TH=B[i].TimeH) AND (TM>B[i].TimeM) then
   begin
   readln (B[i].City);
   readln (B[i].number);
   readln (B[i].TimeH);
   readln (B[i].TimeM);
2: for i:=0 to 7 do
   begin
   readln(B[i].City);
   readln(B[i].number);
   readln(B[i].TimeH);
   readln(B[i].TimeM);
end
end.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
17.04.2017, 17:37
Ответы с готовыми решениями:

Ошибка в готовой программе
Var n,k,s,x:integer; a,b,c:real; begin Write ('vvedite nachalnoe i konechnoe znachenie, shag); readln(n); readln(k); ...

Ошибки в готовой программе
Var s,i,j,b:integer; const N=5; Var A:array of array of integer; begin b:=(div(n/2))+1; for j=1 to b do begin for i=1 to b...

Написать комментарии к готовой программе
Сам сделать не могу,зато нашел сделанную. Но без комментариев не сдать.. Даны действительные числа а1...а30. Оставить без изменений...

2
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
17.04.2017, 18:35
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
type TRAIN=record
           City:string[30];
           number:integer;
           TimeH:integer;
           TimeM:integer;
           end;
Var A:TRAIN;
    B:array[0..7] of TRAIN;
    i,j,ch, TH, TM:integer;
    m:string;
begin
for i:=0 to 7 do
 begin
  writeln ('Input City');
  readln (B[i].City);
  writeln ('Input number train');
  readln (B[i].number);
  writeln ('Input time');
  readln (B[i].TimeH);
  readln (B[i].TimeM);
 end;
for j:=0 to 7 do
for i:=0 to 6 do
if B[i+1].City<B[i].City then
 begin
  A := B[i+1];
  B[i] := B[i];
  B[i] := A;
 end;
writeln('Enter Choose, please');
writeln('1-Train After you Time, 2-All Train in day, 3-exit');
readln(ch);
while ch<3 do
 begin
  case(ch) of
  1: begin
     writeln ('Enter time');
     readln(TH);
     readln(TM);
     for i:=0 to 7 do
      begin
       if (TH>B[i].TimeH) then
        begin
         readln (B[i].City);
         readln (B[i].number);
         readln (B[i].TimeH);
         readln (B[i].TimeM);
        end
       else if (TH=B[i].TimeH) AND (TM>B[i].TimeM) then
        begin
         readln (B[i].City);
         readln (B[i].number);
         readln (B[i].TimeH);
         readln (B[i].TimeM);
        end
      end
    end;
 2:for i:=0 to 7 do
    begin
     readln(B[i].City);
     readln(B[i].number);
     readln(B[i].TimeH);
     readln(B[i].TimeM);
   end
  end
 end
end.
1
11 / 12 / 8
Регистрация: 16.11.2016
Сообщений: 892
18.04.2017, 08:54  [ТС]
Программа не совсем рабочая, т.к. после ввода информации я ввожу 1 вариант(тоесть вывод поездов после определённого времени) происходит зацикливание, тоесть постоянно ввожу время, после которого хочу видеть поезда, но опять повторяется. А при вводе второго варианта происходит простое зацикливание, ввожу 2 постоянно и ничего не выводит. Но огромное спасибо.

Добавлено через 12 часов 2 минуты
Чуть доделал её, но тем не менее неправильно работает, т.к. выводит лишь 2 последних поезда, как исправить это?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
type TRAIN=record
           City:string[30];
           number:integer;
           TimeH:integer;
           TimeM:integer;
           end;
Var A:TRAIN;
    B:array[0..7] of TRAIN;
    i,j,ch, TH, TM:integer;
    m:string;
begin
for i:=0 to 7 do
 begin
  writeln ('Input City');
  readln (B[i].City);
  writeln ('Input number train');
  readln (B[i].number);
  writeln ('Input time');
  readln (B[i].TimeH);
  readln (B[i].TimeM);
 end;
for j:=0 to 7 do
for i:=0 to 6 do
if B[i+1].City<B[i].City then
 begin
  A := B[i+1];
  B[i] := B[i];
  B[i] := A;
 end;
while ch<3 do
 begin
    writeln('Enter Choose, please');
    writeln('1-Train After you Time');
    writeln('2-All Train in day');
    writeln('3-exit');
    readln(ch);
    case(ch) of
  1: begin
     writeln ('Enter time');
     readln(TH);
     readln(TM);
     for i:=0 to 7 do
      begin
       if (TH<B[i].TimeH) then
        begin
         writeln (B[i].City);
         writeln (B[i].number);
         writeln (B[i].TimeH);
         writeln (B[i].TimeM);
        end
       else if (TH=B[i].TimeH) AND (TM<B[i].TimeM) then
        begin
         writeln (B[i].City);
         writeln (B[i].number);
         writeln (B[i].TimeH);
         writeln (B[i].TimeM);
        end
      end
    end;
 2:for i:=0 to 7 do
    begin
     writeln(B[i].City);
     writeln(B[i].number);
     writeln(B[i].TimeH);
     writeln(B[i].TimeM);
   end
  end
 end
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.04.2017, 08:54
Помогаю со студенческими работами здесь

Блок схема к готовой программе
Привет! помогите построить блок схему к следующей программе. Задача: Текстовый файл содержит несколько целых чисел, выбросить из записи...

Найдите ошибку в готовой программе
Даны 2 целочисленных массива разной размерности А и В. определить какой процент составляет количество четных элементов массива А от общего...

Блок-схема к готовой программе
uses crt; var sq1,sq2: real; function Exist (a,b,c: real): boolean; begin Exist:=((b+c-a)&gt;0) and ((a+c-b)&gt;0) and ((a+b-c)&gt;0); ...

Составьте блок-схему по готовой программе
Составьте блок-схему по готовой программе. PROGRAM summa; VAR A,S:REAL; BEGIN S:=0; A:=0.2; WHILE A&lt;=2 DO BEGIN ...

Составить блок-схемы по готовой программе
program zad; uses crt; type m=array of integer; procedure vvod; var mas:array of integer; j,max,kol:integer; begin


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru