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

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

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

 
 Ответить  Открыть новую тему 
> Задача. Записи
сообщение
Сообщение #1


Гость






Всем привет wink.gif . Задали нам вот такую вот задачку по информатике:

Составьте программу, которая описывает массив записей клиентов банка, отображая в нем следующую информацию о каждом: адрес, фамилия, имя, возраст, для лиц старше 18 лет в зависимости от рода занятий(учеба/работа/пенсия) – запись места учебы, места работы и трудовова стажа, для пенсионеров – год выхода на пенсию, необходимо обеспечить ввод данных, поиск самого юного и самого пожилого клиента, поиск студентов, пенсионеров.

Сдавать надо послезавтра, а я чего-то не понмаю что надо сделать, ну не бум-бум я в этом деле. Кому не трудно помогите написать програмку. Буду признательна.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






-Nata-, прочти мою подпись, и воспользуйся вторым советом (я про поиск)...
Ищи про типизированные файлы, записи, аэропорты, вокзалы, хоккейные команды (это только то, что я сам выкладывал на форум, есть еще...)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Текст задачи немного изменили, но смысл не изменился. Вот попытка решения, но полностью решить чего то никак не получается, в частности непонятно как гайти самого юного и самого старого. К тому же меню выводится после ввода КАЖДОГО члена списка а не в конце ввода всех dry.gif Вот задача:
uses crt;
label 1;
type
house_register = record
number : string;
Last_name : string;
Name : string;
Age : integer;
Status : string;
Place_of_education : string;
Place_of_working : string;
Standing : string;
Pension : string;
end;

var
base : array[1..30] of house_register;
i : integer;
f : text;
n : integer;
s : string;
begin
clrscr;
writeln('max');
readln(n);
for i:=1 to n do
with base[i] do
begin
writeln('#'); readln(number);
writeln('ln'); readln(Last_name);
writeln('n'); readln(Name);
writeln('a'); readln(Age);
if Age>=18 then
begin
writeln('Enter status person s(student), w(working), p(pensioner)');
readln(Status);
end;
begin
if Status = 's' then
writeln('Enter place of education');
readln(Place_of_education);
end;
begin
if Status = 'w' then
writeln('Enter place of working and standing');
readln(Place_of_working, standing);
end;
begin
if Status = 'p' then
writeln('Enter pensions(years)');
readln(pension);
end;
begin
1:writeln('For show students enter ss');
writeln('For show works enter sw');
writeln('For show pensions enter sp');
writeln('For show yonger person enter y');
writeln('For show older person enter o');
readln(s);
if s = 'ss' then
if status = 's' then
begin
writeln(number);
writeln(Last_name);
writeln(Name);
writeln(Age);
writeln(Status);
writeln(Place_of_education);
end;
if s = 'sw' then
if status = 'w' then
begin
writeln(number);
writeln(Last_name);
writeln(Name);
writeln(Age);
writeln(Place_of_working);
writeln(Standing);
end;
if s = 'sp' then
if status = 'p' then
begin
writeln(number);
writeln(Last_name);
writeln(Name);
writeln(Age);
writeln(Pension);
end;
if s <> ('ss') then
if s <> ('sw') then
if s <> ('sp') then
begin
writeln('ERROR!');
goto 1;
end;
end;
readln;
end;
end.

Если не трудно окажите помощь smile.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Неужели никто не в силах помочь ???
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Цитата
Неужели никто не в силах помочь ???

Ну, почему сразу "не в силах"?
uses crt;
type
house_register = record
number : string;
Last_name : string;
Name : string;
Age : integer;
Case Status: char of{string}
's':(Place_of_education : string);
'w':(Place_of_working, Standing : string);
'p':(Pension : string);
end;

Procedure PrintInfo(X: house_register);
begin
With X Do Begin
writeln(number);
writeln(Last_name);
writeln(Name);
writeln(Age);
writeln(Status);
Case Status Of
's': writeln(Place_of_education);
'w': begin
writeln(Place_of_working);
writeln(Standing);
end;
'p': writeln(Pension);
End;
End;
end;

var
base : array[1..30] of house_register;
i : integer;
f : text;
n : integer;
s : string;

min, max: integer;
begin
clrscr;
write('max = '); readln(n);

for i:=1 to n do
with base[i] do begin

write('# '); readln(number);
write('ln '); readln(Last_name);
write('n '); readln(Name);
write('a '); readln(Age);
if Age>=18 then begin
writeln('Enter status person s(student), w(working), p(pensioner)');
readln(Status);
end;

case Status of
's': begin
writeln('Enter place of education');
readln(Place_of_education);
end;

'w': begin
writeln('Enter place of working and standing');
readln(Place_of_working, standing);
end;

'p': begin
writeln('Enter pensions(years)');
readln(pension);
end;
end;

end;

repeat
writeln('For show students enter ss');
writeln('For show works enter sw');
writeln('For show pensions enter sp');
writeln('For show yonger person enter y');
writeln('For show older person enter o');
writeln('exit = x');
readln(s);

min := 1; max := 1;

for i := 1 to n do
with base[i] do begin

if base[min].Age > Age then min := i;
if base[max].Age < Age then max := i;

if s[length(s)] in ['s', 'w', 'p'] then
if s[length(s)] = Status then PrintInfo(base[i]);

end;

case s[length(s)] of
'y': PrintInfo(base[min]);
'o': PrintInfo(base[max]);
end;
until s[length(s)] = 'x';
readln;
end.
 К началу страницы 
+ Ответить 

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

 





- Текстовая версия 12.05.2024 12:13
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name