пишет Tуpe identifier expected там, где первая процедура Merge. (Процедуры с открытыми параметрами)
program SortArrays; uses wincrt; var a1, a2, a3: array [0..99] of integer; { a1, a2, a3 arrays } i, len3, tempRes: integer; { counters, temp result vars etc. }
procedure Merge(a1, a2: array of integer; var a3: array of integer; var len3: integer); { merge array procedure } var j, k, m: integer; begin len3 := 0;
j := 0; { initialize the counter } while (a1[j] <> -1) do { if number >= 0 } begin a3[len3] := a1[j]; { append every element of a1 to a3 array } j := j + 1; { increase counter } len3 := len3 + 1; { increase counter } end;
j := 0; { reset counter } while (a2[j] <> -1) do { if number >= 0 } begin a3[len3] := a2[j]; { append every element of a2 to a3 array } j := j + 1; { increase counter } len3 := len3 + 1; { increase counter } end;
{ Bubble sorting } for k := len3 - 1 downto 0 do for m := 0 to k do if ((a3[m] > a3[m + 1]) and (a3[m + 1] <> -1)) then begin tempRes := a3[m]; a3[m] := a3[m + 1]; a3[m + 1] := tempRes; end; end;
begin len3 := 0; { init variable }
for i := 0 to high(a1) - 1 do a1[i] := -1; { initialize array }
Write('Fill elements of array (a1): '); { show message } for i := 0 to high(a1) - 1 do { each element of a1 } begin Read(a1[i]); { Read user entries } if (a1[i] = -1) then break; { break if user entered -1 } end;
Write('Fill elements of array (a2): '); { show message } for i := 0 to high(a2) - 1 do { each element of a2 } begin Read(a2[i]); { Read user entries } if (a2[i] = -1) then break; { break if user entered -1 } end;
Merge(a1, a2, a3, len3); Write('a3 items: '); { show message } for i := 1 to len3 do begin if (a3[i] >= 0) then Write(a3[i], ' ') else break; { show a3 items} end; WriteLn; Write('a3 length: ', len3); { show a3 length } end.
М
Тэги!!
Lapp
13.11.2009 4:18
bucket, неужели вот так трудно прочесть правила??
М
Сделай нормальное название!
В следующий раз буду закрывать сразу за одно нарушение.
Добавлено через 9 мин.
Цитата(bucket @ 13.11.2009 4:01)
пишет Tуpe identifier expected там, где первая процедура Merge. (Процедуры с открытыми параметрами)
У меня все откомпилилось, как в BP 7.0, так и в FPC (во FreePascal dialect и в Turbo Pascal compatible модах).
Добавлено через 5 мин. На всякий случай - включи Extended Syntax и Open Parameters в меню Options -> Compiler (хотя у меня без них тоже компилится). И - какая у тебя версия BP?