Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 27.05.2009, 19:04   #1
Алексей_xXx
Пользователь
 
Регистрация: 29.04.2009
Сообщений: 54
Радость Сортировка пузырьком. Народ помогите понять что делать INC(d)

rocedure TForm1.Button1Click(Sender: TObject);
const
n=10;
var
d,k,i,temp,bound:integer;
x:array[1..n] of integer;
begin
randomize;
memo1.Clear;
memo2.Clear;

for i:=1 to n do
x[i]:=random(100);
for k:=1 to n do
memo1.Lines.Add(IntToStr(x[k]));
bound:=n;
d:=0;
while bound>1 do
begin
{ShowMessage('qwa');}
for i:=1 to bound-1 do
if x[i]>x[i+1] then
begin
temp:=x[i];
x[i]:=x[i+1];
x[i+1]:=temp;
inc(d);
end;
bound:=bound-1;

end;

edit1.Text:=IntToStr(n*n); //оценка сложности
edit2.Text:=IntToStr(d);
for k:=1 to n do
memo2.Lines.Add(IntToStr(x[k]));

end; {end of procedure}
Алексей_xXx вне форума
Старый 27.05.2009, 19:06   #2
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от Алексей_xXx
Народ помогите понять что делать INC(d)
Это инкремент. Увеличивает аргумент на 1.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 27.05.2009, 19:09   #3
Алексей_xXx
Пользователь
 
Регистрация: 29.04.2009
Сообщений: 54
По умолчанию

тогда получаеться что выводит прога в edit2 1?
но она выводит не 1
Алексей_xXx вне форума
Старый 27.05.2009, 19:12   #4
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от Алексей_xXx
тогда получаеться что выводит прога в edit2 1?
но она выводит не 1
У вас инструкция inc(d) находится в цикле. Вот d и увеличивается столько раз, сколько было итераций.
Эта запись аналогична:
Код:
d := d + 1;
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 27.05.2009, 19:14   #5
Алексей_xXx
Пользователь
 
Регистрация: 29.04.2009
Сообщений: 54
По умолчанию

итераций, означает, сколько раз цикл повторялся?
Алексей_xXx вне форума
Старый 27.05.2009, 19:18   #6
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
Сообщение от Алексей_xXx
итераций, означает, сколько раз цикл повторялся?
Да.
http://ru.wikipedia.org/wiki/Итерация
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 27.05.2009, 19:27   #7
Алексей_xXx
Пользователь
 
Регистрация: 29.04.2009
Сообщений: 54
По умолчанию

понял. Спасибо. Можно ещё 1 вопрос. А как можно реализовать такое : я ввожу с клавиатуры число X0, нажимаю на кнопку, и программа выдает последовательность чисел, допустим; X1=X0*5
X2=X1*5
X3=X2*5
Алексей_xXx вне форума
Старый 27.05.2009, 19:31   #8
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Код:
for i:=1 to 3 do
 x1 := x0*5;
 writeln(x1);
 x0 := x1;
end;
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Старый 27.05.2009, 19:33   #9
Алексей_xXx
Пользователь
 
Регистрация: 29.04.2009
Сообщений: 54
По умолчанию

дак X2 тогда не выведеться
Алексей_xXx вне форума
Старый 27.05.2009, 19:37   #10
Sazary
В тени
Старожил
 
Аватар для Sazary
 
Регистрация: 19.12.2008
Сообщений: 5,788
По умолчанию

Цитата:
дак X2 тогда не выведеться
А вы не смотрите на названия переменных.
На первой итерации x1 - это x1. На второй - x2, на третей - x3.
Вполне очевидно, чтобы что-то понять, необходимо книги читать.
Не нужно плодить бессмысленных тем. Вас Поиск избавит от многих проблем.

___________________________________ ___________________________________ _______
[=Правила форума=]_____[Поиск]_____[Литература по С++]____[Литература. Паскаль]
Sazary вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сортировка шейкер-пузырьком (Delphi) Biker29 Помощь студентам 6 25.08.2013 12:16
Шейкер-сортировка пузырьком Biker29 Общие вопросы Delphi 2 11.12.2010 22:56
Помогите понять что вызывает ошибку - C liora Общие вопросы C/C++ 1 29.03.2009 22:05
Не могу понять почему не идет сортировка файла, помогите пожалуйста Taisja Помощь студентам 2 15.06.2008 20:37