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

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

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

> Обработка текстового файла, Помогите пожалуйста
Grey-99
сообщение 27.12.2006 15:37
Сообщение #1





Группа: Пользователи
Сообщений: 6
Пол: Мужской

Репутация: -  0  +


Помогите пожалуйста с этой программой mega_chok.gif

Задача:Создать текстовый файл, в котором содержаться сведения о рабочих( Фамилия, Инициалы, Зарплата)
К примеру:
Петров ИИ 1200
Сидоров ПР 2000
Попов КП 3000


Надо считать эти записи, и отсортировать по зарплате. Использовать процедуры.
Вот такие пероги. Если кто может помочь, помогите пожалуйста.

Сообщение отредактировано: Grey-99 - 27.12.2006 16:31
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
klem4
сообщение 27.12.2006 17:07
Сообщение #2


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


uses crt;

const
max_records = 100;

type

TStrings = array[1..max_Records] of String;

TFile = Text;

function ReadData(const fName: String; var S: TStrings): Integer;
var
i: Integer;
f: TFile;
begin

assign(f, fName); reset(f);

i := 0;

while not(eof(f)) do begin
inc(i);
readln(f, S[i]);
end;

close(f);

ReadData := i;
end;

function GetMoney(const S: String): Integer;
var
value, e: Integer;
begin

Val(
Copy( Copy(s, Pos(' ', s) + 1, 255), POS(' ',Copy(s, Pos(' ', s) + 1, 255)),255),
value,
e);

GetMoney := value;

end;

procedure Sort(var S: TStrings; const size: Integer);
var
i, j: Integer;
temp: String;
begin
for i := size downto 2 do
for j := 1 to i - 1 do
if GetMOney(S[j]) <= GetMoney(S[j + 1]) then begin
temp := S[j]; S[j] := S[j + 1]; S[j + 1] := temp;
end;
end;

procedure WriteToFile(const fName: String; const S: TStrings; const size: Integer);
var
f: TFile;
i: Integer;
begin
assign(f, fName); rewrite(f);
for i := 1 to size do writeln(f, S[i]);
Close(f);
end;

var
S: TStrings;
size: Integer;
begin
size := ReadData('C:\forum.txt', S);
Sort(S, size);
WriteToFile('C:\forum.txt', S, size);
end.



--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Grey-99
сообщение 27.12.2006 17:12
Сообщение #3





Группа: Пользователи
Сообщений: 6
Пол: Мужской

Репутация: -  0  +


Спасибо тебе огромное good.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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


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

 



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