Решить задачу с помощью процедуры soft_file
Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill
Хыиуду Понимаешь вот задание, (словами простого человека)
1. Используя готовую процедуру soft_file, составить программу сортировки текстовго файла, в возрастающем порядке по числу пробелов в строке. При этом надо Предусмотреть проверку существования исходного файла и переход на новую страницу, с формированием номера страницы. Длина страницы сосотовляет 50 строк. Как я понимаю надо: 1. Составить программу сортировки текстовго файла, готовой процедурой sort_file,в возрастающем порядке по числу пробелов в строке. Вот так я понимаю.
1. Используя готовую процедуру soft_file, составить программу сортировки текстовго файла, в возрастающем порядке по числу пробелов в строке. При этом надо Предусмотреть проверку существования исходного файла и переход на новую страницу, с формированием номера страницы. Длина страницы сосотовляет 50 строк. Как я понимаю надо: 1. Составить программу сортировки текстовго файла, готовой процедурой sort_file,в возрастающем порядке по числу пробелов в строке. Вот так я понимаю.
короче, сделаем так
А потом с этой функцией сортировать массив строк. Раздел "Алгоритмы", тема "Упорядочивание массива". Считали из файла 50 строк, упорядочили, вывели. Все остальное пока считаю от лукавого
Код: Выделить всё
function spaces_count(s:string);
var i:byte; count:byte;
begin
for i:=1 to length(s) do
if s[i]=' ' then inc(count);
spaces_count:=count;
end;
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Я посмотрел, прочитал и ничё не понял))) http://forum.developing.ru/showthread.php?t=10415 можешь объяснить что куда подставлять?
for i:=1 to N do
for j:=1 to N-i do
if func(a[j])>func(a[j+1]) then
begin
temp:=a[j];
a[j]:=a[j+1];
a[j+1]=temp;
end;
Вот этот код и пихать без изменений. А объявить как массив строк, temp - как строку. Функция func должна иметь 1 параметр - строку, и возвращать количество пробелов в этой строке. Ее, думаю, сам сможешь написать
for j:=1 to N-i do
if func(a[j])>func(a[j+1]) then
begin
temp:=a[j];
a[j]:=a[j+1];
a[j+1]=temp;
end;
Вот этот код и пихать без изменений. А объявить как массив строк, temp - как строку. Функция func должна иметь 1 параметр - строку, и возвращать количество пробелов в этой строке. Ее, думаю, сам сможешь написать
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
а я так не думаю))) я в программирование знаю что после каждой строчки надо ставить ; и сколько begin столько и end.



Браво! Рассмешил на весь оставшийся день! С философией твоей, о падаван юный, никогда использовать ты параметрические циклы научишься не, и будет case оператор и record тип неподвластны тебе!а я так не думаю))) я в программирование знаю что после каждой строчки надо ставить ; и сколько begin столько и end.
Кстати, вот программа, которая полностью удовлетворяет твоим принципам:
Код: Выделить всё
begin end.;
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
тебе смешно))) а мне эту задачу в среду сдавать((
Повторяю еще раз: тот код, который я привел, пихать без изменений. Функцию, нужную тебе, я, как выяснилось, написал несколькими постами раньше. А уж переменные как-нибудь сам объявишь.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.