Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- type person_data = record
- person_name: string[20];
- person_surname: string[30];
- day: string[2];
- month: string[2];
- year: string[4];
- age: byte;
- end;
- LABEL x;
- const n = 3;
- var data: array[1..100] of person_data;
- f: textfile;
- s, filename: string;
- s1: person_data;
- a,i,j,my_case,my_case2: byte;
- d,m,y,length: integer;
- yes_on_no: byte;
- Begin
- length:=n;
- while True do
- begin
- writeln;
- writeln;
- writeln;
- writeln('1. Создание файла.');
- writeln('2. Ввод данных в файл.');
- writeln('3. Сортировка по одному из полей.');
- writeln('4. Удаление записи.');
- writeln('5. Удаление файла.');
- writeln('6. Вывод данных из файла.');
- writeln('7. Выход из программы.');
- writeln;
- writeln;
- writeln('Введите номер пункта:');
- readln(my_case);
- case my_case of
- 1:begin
- writeln('Какое имя файла?');
- readln(filename);
- Rewrite(f, 'H:\'+filename+'.txt');
- end;
- 2:begin
- for i:=1 to n do
- begin
- x:
- writeln('Введите имя, фамилию и дату рождения');
- readln(s);
- a:=pos(' ',s);
- data[i].person_name:=copy(s,1,a-1);
- data[i].person_name[1]:=data[i].person_name[1].ToUpper();
- delete(s,1,a);
- a:=pos(' ',s);
- data[i].person_surname:=copy(s,1,a-1);
- data[i].person_surname[1]:=data[i].person_surname[1].ToUpper();
- delete(s,1,a);
- a:=pos('.',s);
- data[i].day:=copy(s,1,a-1);
- if strtoint(data[i].day) > 31 then
- begin
- writeln('Неверная дата, введите снова.');
- goto x;
- end;
- delete(s,1,a);
- a:=pos('.',s);
- data[i].month:=copy(s,1,a-1);
- if strtoint(data[i].month) > 12 then
- begin
- writeln('Неверная дата, введите снова.');
- goto x;
- end;
- delete(s,1,a);
- data[i].year:=copy(s,1,4);
- if strtoint(data[i].year) > 2019 then
- begin
- writeln('Неверная дата, введите снова.');
- goto x;
- end;
- data[i].age:=2019-strtoint(data[i].year);
- Writeln(f, data[i]);
- end;
- Rewrite(f, 'H:\'+filename+'.txt');
- close(f);
- Rename(f, 'H:\'+filename+'.txt');
- end;
- 3:begin
- writeln('По какому полю будет сортировка?');
- writeln('1. Имя');
- writeln('2. Фамилия');
- readln(my_case2);
- case my_case2 of
- 1:begin
- for i:=1 to length-1 do
- for j:=i+1 to length do
- begin
- if data[i].person_name > data[j].person_name then
- swap(data[i],data[j])
- end;
- end;
- 2:begin
- for i:=1 to length-1 do
- for j:=i+1 to length do
- begin
- if data[i].person_surname > data[j].person_surname then
- swap(data[i],data[j])
- end;
- end;
- end;
- Rewrite(f, 'H:\'+filename+'.txt');
- close(f);
- Rename(f, 'H:\'+filename+'.txt');
- end;
- 4:begin
- writeln('Какую запись Вы хотите удалить?');
- readln(d);
- for i:=d to n-1 do
- begin
- data[i]:=data[i+1];
- end;
- length-=1;
- end;
- 5:begin
- erase(f)
- end;
- 6:begin
- for i:=1 to length do
- writeln(i:3, data[i].person_name:15, data[i].person_surname:25, ' ', data[i].day, '.', data[i].month, '.', data[i].year, ' ', data[i].age, 'лет.');
- end;
- 7:break;
- end;
- end;
- Close(f);
- End.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement