Помощь - Поиск - Пользователи - Календарь
Полная версия: Помогите решить задачу, подскажите, что я делаю не так?
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
DimaXa
У меня есть два варианта решения проблемы, один не дописан, в котором я сомневаюсь, что в нем может быть не так?

uses crt;
const n=13;
var a:array[1..n] of integer;
i,max:integer;
begin
clrscr;
writeln('Массив :');
for i:=1 to n do
begin
if (i mod 2 =0)then
a[i]:=-20+random(40);
write(a[i]:5);
end;
max:=a[1];
for i:=1 to n do
-

-

-
readkey;
end.

Вместо дефисов как раз не знаю, какие операции должны следовать.

Добавлено через 2 мин.
uses crt;
const n=6;
a:array[1..n] of integer =
(-20, 5, 3, -4, 16, 20);
var i,j,k,rab:integer;
begin
for i:=1 to n-1 do
for j:=1 to n-i do
if a[j]>a[j+1] then
begin
rab:=a[j+1];
a[j+1]:=a[j];
a[j]:=rab;
for k:=1 to n do
write (a[k]:4,'|');
writeln ('----------------------------');
end;
writeln('массив отсортирован');
for k:=1 to n do
write (a[k]:4,'|');
writeln('----------------------------');
end.


вот это второй недоконченный и неработающий вариант. взят из книги turbo pascal, тут просто описание пузырькового метода, но этот вариант не работает, прошу помочь, что может быть тут не так?
Федосеев Павел
Второй вариант работает. Почему ты решил, что это не так?

PS И ещё повтори задание, а то оно не полностью поместилось в заголовок.

Могу догадаться, что тебе нужно сортировку сделать в виде процедуры.
Ну так возьми и просто напиши заголовок процедуры
................
type
TArray = array[1..n] of integer;

procedure sort(var a:TArray);
begin
end;
..................

Потом перенеси в неё код сортировки.
Попытайся откомпилировать - возникнут ошибки компиляции - не объявлены переменные.
добавь секцию var.

Вуаля!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.