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

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

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

> Помогите, пожалуйста, решить задачу с обработкой массивов типа "запись"..., 3
Snake
сообщение 8.06.2007 9:50
Сообщение #1


Гость






Помогите написать программу!

3. Подготовить файл с анкетными данными своих ближайших pодственников. Анкетные данные должны содеpжать:
- фамилию, имя, отчество
- степень pодства (мать, отец, брат, сестpа и т.д.)
- гоpод пpоживания
- год pождения
- социальное положение
Сфоpмиpовать новый файл, содеpжащий сведения о родственниках-пенсионеpах. Входные данные после записи их в файл при дальнейшем решении задачи считывать из файла. Решить с использованием процедур и функций и типом "запись". С записями использовать оператор with

Заранее огромное Вам спасибо!!!

Сообщение отредактировано: Snake - 8.06.2007 13:48
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Andrewshkovskii
сообщение 8.06.2007 12:05
Сообщение #2


Бывалый
***

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

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


Ну тут ,как по заданию видно,надо использовать неоднородные структуры данных,типа запись (record).
У тебя будет 1 тип записей,и 1 массив :
 
const
n=10;
nowyear=2007;
BlijRods= record
FIO:string;
rods:string;
Hometown:string;
yofb:integer;
SocP:string;
Age:byte;
Flg:byte; {флаг,если 1 то пенсионер,если 0 то нет}
end;
Arr = array [1..n] of BlijRods;


После ввода делаешь цикл отбора пенсионеров(для начала,вычисли возрасткаждого из родственников),что-то типа
 for i:=1 to n do
begin
arr[i].Age:=nowyear-yofb;
end;


После отбирай пенсионеров, что-то вроде этого :

for i:=1 to n do
begin
if arr[i].Age>60 then
arr[i].Flg:=1
else
arr[i].Flg:=0;
end;

ну и вот ты теперь знаешь,кто пенсионер ,а кто нет.записывай в файл по условию

 for i:=1 to n do
begin
if arr[i].Flg=1 then {Тут !!процедура!!(напиши сам) записи в файл}


Я бы так сделал..может это и не очень оптимальный вариант..

Сообщение отредактировано: Andrewshkovskii - 8.06.2007 12:10
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Snake
сообщение 8.06.2007 12:52
Сообщение #3


Гость






Цитата(Andrewshkovskii @ 8.06.2007 13:05) *

Код
if arr[i].Flg=1 then {Тут !!процедура!!(напиши сам) записи в файл}



Еще бы знать что-то о Паскале )) Я не "сам", я - "сама" rolleyes.gif
Неужели нет каких-нибудь уже готовых похожих программ где-нибудь?!
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Snake   Помогите, пожалуйста, решить задачу с обработкой массивов типа "запись"...   8.06.2007 9:50
Артемий   Показывай что пробовал делать.   8.06.2007 9:56
Andrewshkovskii   Ну тут ,как по заданию видно,надо использовать нео...   8.06.2007 12:05
Snake   if arr[i].Flg=1 then {Тут !!пр...   8.06.2007 12:52
volvo   Это очень неоптимальный вариант... Мало того, что ...   8.06.2007 12:12
Andrewshkovskii   А как иначе,если у него несколько родственников?с...   8.06.2007 12:20
Andrewshkovskii   нормально так.....А где ты получила это задание?в ...   8.06.2007 12:58
Snake   нормально так.....А где ты получила это задание?в...   8.06.2007 13:19
Andrewshkovskii   блин..ну вам же читают лекции..и я думаю что это н...   8.06.2007 13:22
Snake   Andrewshkovskii В любом случае спасибо за помощь...   8.06.2007 13:33
klem4   1. Заголовок темы должен быть информативным. В про...   8.06.2007 13:42
Andrewshkovskii   в общем смотри,вводишь данные о родственниках,запи...   8.06.2007 13:43
Snake   Andrewshkovskii, пасиб   8.06.2007 13:50


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

 



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