IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Задача на тему "Сортировки", Ребята, помогите сделать задание...
Garis
сообщение 6.10.2005 13:33
Сообщение #1


Гость






Ребята, всем доброго времени суток!
Прошу вашей помощи, т.к. сам с Паскалём можно сказать не работал (переписывал задачки с доски и всё). В общем мне дали задание, написать программу со всеми пояснениями и составить к ней схему алгоритма… Для меня это вообще что-то не реальное…(( Помогите, пожалуйста, кто чем может..)) Книжки читать времени совсем нету, а задание уже скоро сдавать.
Вот собственно само задание (оно по теме «Сортировки»):
Дана последовательность из «N» целых чисел, содержащая положительные, отрицательные числа и нули.
Получить три последовательности содержащие только отрицательные числа, только нули и только положительные числа в порядке их следования в исходной.
Ранжировать полученные последовательности по возрастанию и напечатать друг под другом с пояснениями.
Задокументировать исходную последовательность.

Вот такое заданьеце….((
теперь о том что я понимаю: т.е. задан массив, из него нужно сделать выборку, а затем эту выборку(три последовательности) разместить по возрастанию.

Заранее вам огромное спасибо!
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Garis
сообщение 14.10.2005 17:39
Сообщение #2


Гость






Вот что у меня получилось..... но здесь мнеого недороботок, к сожалению....
program p1;

const
INPUT_FILE_NAME = 'с:\p1.in';

type
TCondition = function(x : integer) : boolean;

var
f : text;
i, n, t : integer;
flag : boolean;
a : array [1..100] of integer;

function less0(x : integer) : boolean; far;
begin
if x < 0 then
less0 := true
else
less0 := false;
end;

function equal0(x : integer) : boolean; far;
begin
if x = 0 then
equal0 := true
else
equal0 := false;
end;

function above0(x : integer) : boolean; far;
begin
if x > 0 then
above0 := true
else
above0 := false;
end;

procedure print(cond : TCondition);
begin
for i := 1 to n do
if cond(a[i]) then
write(a[i] , ' ');
writeln;
end;

begin
assign(f, INPUT_FILE_NAME);
reset(f);

readln(f, n);

for i := 1 to n do
read(f, a[i]);

repeat
flag := true;
for i := 1 to n-1 do
if a[i] > a[i+1] then begin
t := a[i];
a[i] := a[i+1];
a[i+1] := t;
flag := false;
end;
until flag;

print(less0);
print(equal0);
print(above0);

close(f);
end.



'с:\p1.in' - это файл с массивом smile.gif

Помогите её доработать..... В частности нужны подробные комментарии и срочно нужна блок-схема(алгоритм)..... А также, она чуть-чуть не соответствует самому тексту.... текст задачи выше....
Заранее спасибо!
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 10:59
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"