![]() |
Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.
![]() ![]() |
![]() |
pabota |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
В чем ошибка?
Формирование их простых чисел здесь нет, пока не вставил, но код уже написал для проверки чисел. А вот упорядочить не получается. Ваш фак читал, делал и с ним, все равно ерунда получаеться не выводит, как надо. --- Дан массив Y, состоящий из М целых чисел (0<M<=10; -1000<y[i]<1000).Сформировать массив из элементов, являющихся простыми числами и упорядочить полученный массив по возрастанию методом “пузырька”. var
y:array of extended;
i,j, m: integer;
Tmp : Double;
begin
writeln('Vvedite kolichestvo celix cisel v promegitke ot 1 do 10');
readln(m);
If (m<0)or(m>10)then
begin
writeln('Vvedite kolichestvo celix cisel v promegitke ot 1 do 10');
readln(m);
end;
SetLength(y, m);
writeln ('Zapolnenie massiva');
writeln ('Vedite chisla v promegytke ot -1000 do 1000');
for i:= 1 to m do
begin
readln(y[i]);
If (y[i]<-1000)or(y[i]>1000)then
begin
writeln('Vi vveli nevernoe chislo!!! Vedite chisla v promegytke ot -1000 do 1000.');
readln(y[i]);
end;
end;
i:=0;
while i<=m-1 do
begin
j:=0;
while j<=m-2-i do
begin
if Y[j]>Y[j+1] then
begin
Tmp := Y[j];
Y[j] := Y[j+1];
Y[j+1] := Tmp;
writeln('Otsortirovannii massiv metodom pyzirka');
for j:=1 to m do
begin
writeln(Y[j]:0:0);
end;
end;
Inc(j);
end;
Inc(i);
end;
|
Айра |
![]()
Сообщение
#2
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата y:array of extended; А размерность разве не нужна? ![]() Могу написать код программы с "пузырьком" если чем-то поможет. Сообщение отредактировано: Айра - 28.12.2006 20:05 |
pabota |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
|
Michael_Rybak |
![]()
Сообщение
#4
|
Michael_Rybak ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 046 Пол: Мужской Реальное имя: Michael_Rybak Репутация: ![]() ![]() ![]() |
|
мисс_граффити |
![]()
Сообщение
#5
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Перенести тему в раздел Delphi?
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
pabota |
![]()
Сообщение
#6
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
|
Айра |
![]()
Сообщение
#7
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата SetLength(y, m); Просто мой компилятор ее не распознал. Цитата Не нужна . Это называется "динамический массив" - массив, длина которого может меняться по ходу. Прошу прощения. ![]() А вот программа:
program Sort_puz;
uses wincrt;
const
count=20;
m:array[1..count] of byte=(9,11,12,3,19,1,5,17,10,18,3,19,17,9,12,20,20,19,2,5);
{массив константный для удобства отслеживания всплывания "пузырьков"}
var
i,j,k,l: byte;
a: integer;
begin
for i:=1 to count do write(m[i],' '); writeln;
a:=0;
for i:=2 to count do {сортировка "пузырьков" методом по невозрастанию}
begin
for j:=count downto i do
begin
a:=a+1;
if m[j-1]<m[j] then {если элемент справа больше элемента слева,
то "вытеснить" его влево - пузырек "всплывает"}
begin
k:=m[j-1]; {обмен элементов значениями}
m[j-1]:=m[j];
m[j]:=k;
{печатаем текущее состояние массива после
каждой перестановки, для наглядности}
for l:=1 to count do write(' ',m[l]); writeln;
end;
end;
end;
end.
.Сообщение отредактировано: Айра - 28.12.2006 20:37 |
pabota |
![]()
Сообщение
#8
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
Айра, спасибо
![]() |
Айра |
![]()
Сообщение
#9
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
|
мисс_граффити |
![]()
Сообщение
#10
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
Айра, естественно. Эта процедура работала бы в Delphi. Ты же, наверное, пыталась откомпилировать чем-нибудь чисто паскалевским (Турбо Паскаль?), вот он и ругался.
В общем, переношу тему во избежание неясностей. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
Айра |
![]()
Сообщение
#11
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 731 Пол: Женский Репутация: ![]() ![]() ![]() |
Цитата Эта процедура работала бы в Delphi. Ты же, наверное, пыталась откомпилировать чем-нибудь чисто паскалевским (Турбо Паскаль?), вот он и ругался. Ты прям ясновидящая ![]() В Delphi он не возмущается, научиться бы им нормально пользоваться. ![]() |
![]() ![]() |
![]() |
Текстовая версия | 24.07.2025 16:52 |