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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2011, 17:47   #1
Михон
 
Регистрация: 13.05.2011
Сообщений: 7
Восклицание Построить блок схему алгоритма!

Есть код сортировки массива по возрастанию , нужна блок схема алгоритма! Сам не силён в этом , кто может помочь? Хотя бы на листке ручкой набросать


procedure TForm1.Button3Click(Sender: TObject);
var h,min,s,ms:word;
m,i:integer;
begin
Label10.Caption:=Floattostr(time);
for m:=1 to 100000 do
for i:=0 to high(A) do tmpA[i]:=0; // заполняем массив нулями
for i:=min to n do begin
A[i]:=A[i]+1;
end;
// устанавливаем значение в правильную позицию
index:=min;
for i:=min to high(A)-1 do begin
for j:=0 to A[i]-1 do begin
A[index]:=i;
index:=index+1;
end;
end;
repeat
priz:=false;
for i:=1 to n-1 do
if a[i]>a[i+1] then
begin
buf:=a[i];
a[i]:=a[i+1];
a[i+1]:=buf;
priz:=true;
end;
for k:=1 to n do
until priz=false;
for i:=1 to n do
StringGrid2.Cells[i-1,0]:=inttostr(a[i]);
DecodeTime(Time-Strtofloat(Label10.Caption),h,min,s ,ms);
Label10.Caption:='по возрастанию '+Inttostr(s)+' '+'с'+' '+Inttostr(ms)+' '+'мс';
end;
Михон вне форума Ответить с цитированием
Старый 13.05.2011, 18:09   #2
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Держите)))
Вложения
Тип файла: rar сх.rar (6.3 Кб, 19 просмотров)
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 13.05.2011, 18:18   #3
Михон
 
Регистрация: 13.05.2011
Сообщений: 7
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
Держите)))
Честно даже не ожидал , что кто то захочет мне почь! Потратить своё личное время. Очень приятно, большое Вам человеческое спасибо Можно с Вами сейчас связаться в icq?
Михон вне форума Ответить с цитированием
Старый 13.05.2011, 18:19   #4
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Цитата:
Можно с Вами сейчас связаться в icq?
контакты указаны) стучите!
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 13.05.2011, 18:24   #5
Михон
 
Регистрация: 13.05.2011
Сообщений: 7
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
контакты указаны) стучите!
вас нет в аське, ответье пожалуйста!
Михон вне форума Ответить с цитированием
Старый 13.05.2011, 18:32   #6
Михон
 
Регистрация: 13.05.2011
Сообщений: 7
По умолчанию

Если можно вот ещё код поиска числа в массиве , тоже блок схему алгоритма! Нужна для курсавого , если трудно

procedure TForm1.Button1Click(Sender: TObject);

Var
i, isr, m, k : integer;
flag: boolean; //flag "число найдено"
s4: integer; //счётчик значения m=0
h,min,s,ms:word;
begin
Label4.Caption:=Floattostr(time);
Label8.Caption:=''; //очистить метку
Label9.Caption:=''; //очистить метку

k:=StrToInt(Edit2.Text);

//isr - середина отрезка, на котором производился неудачный поиск,
//это номер первого элемента нового отрезка для посика;
//m - длина отрезка для поиска
isr:=0;
m:=0;
s4:=0;
flag:=false;

for i:=1 to n do //заполнить массив таблицы 2 (отсортированный по возрастанию)
a[i]:=Strtoint(StringGrid2.Cells[i-1,0]);

isr:=Ceil(N/2); // Ceil - округление до бОльшего
m:=Floor(N/2); // Floor - округление до меньшего


//по возрастанию
repeat

if m=0 then s4:=s4+1
else
begin
if k=a[isr]
then flag:=true
else
begin
if k<a[isr] then
begin
isr:=isr-Ceil(m/2);
m:=Floor(m/2);
end
else
begin
isr:=isr+Ceil(m/2);
m:=Floor(m/2);
end;
end;
end;
until (s4=2) or flag;


if flag then
Label8.Caption:=Label8.Caption+'Сов падение с элементом в массиве по возрастанию '+''+Inttostr(isr)
else
Label8.Caption:=Label8.Caption+'В массиве по возрастанию образец не найден';

isr:=0;
m:=0;
s4:=0;
flag:=false;

for i:=1 to n do //заполнить массив таблицы 3 (отсортированный по убыванию)
b[i]:=Strtoint(StringGrid3.Cells[i-1,0]);


isr:=Ceil(N/2); // Ceil - округление до бОльшего
m:=Floor(N/2); // Floor - округление до меньшего


//по убыванию
repeat

if m=0 then s4:=s4+1
else
begin
if k=b[isr]
then flag:=true
else
begin
if k<b[isr] then
begin
isr:=isr+Ceil(m/2);
m:=Floor(m/2);
end
else
begin
isr:=isr-Ceil(m/2);
m:=Floor(m/2);
end;
end;
end;
until (s4=2) or flag;


if flag then
Label9.Caption:=Label9.Caption+'Сов падение с элементом в массиве по убыванию '+''+Inttostr(isr)
else
Label9.Caption:=Label9.Caption+'В массиве по убыванию образец не найден';


//вывод времени поиска
DecodeTime(Time-Strtofloat(Label4.Caption),h,min,s, ms);
Label4.Caption:=Inttostr(s)+' '+'с'+' '+Inttostr(ms)+' '+'мс';

end;

Последний раз редактировалось Михон; 13.05.2011 в 18:40.
Михон вне форума Ответить с цитированием
Старый 13.05.2011, 18:33   #7
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

свою напиши
Вот
Вложения
Тип файла: rar схема2.rar (22.9 Кб, 14 просмотров)
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"

Последний раз редактировалось Mad_Cat; 13.05.2011 в 18:38.
Mad_Cat вне форума Ответить с цитированием
Старый 13.05.2011, 18:35   #8
Михон
 
Регистрация: 13.05.2011
Сообщений: 7
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
свою напиши
483606423 вот . напишити пожалуйста!
Михон вне форума Ответить с цитированием
Старый 13.05.2011, 19:07   #9
Михон
 
Регистрация: 13.05.2011
Сообщений: 7
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
свою напиши
Вот
спасибо большое ! очень меня выручали! Напишите мне пожалуста в асю кое что спрошу у Вас. иного времени не займу
Михон вне форума Ответить с цитированием
Старый 13.05.2011, 19:18   #10
Михон
 
Регистрация: 13.05.2011
Сообщений: 7
По умолчанию

Mad_Cat. подскажите а блок схему программы (вот эти коды) каки мобразом строятся? Вот вы посроили блок схемы алгоритма , а блок схемы программы возможно построить?
Михон вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Составить блок-схему алгоритма (Pascal) k0tone Помощь студентам 6 14.12.2011 22:21
Построить блок схему realt Помощь студентам 3 25.05.2010 17:34
составить блок - схему алгоритма Катюшка544 Помощь студентам 1 18.02.2010 20:32
построить схему машинного алгоритма и составить Паскаль-программу решения задачи RASTOMAN Паскаль, Turbo Pascal, PascalABC.NET 3 18.12.2007 22:21