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

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

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

> Обработка записей
xekzzz
сообщение 26.05.2008 15:28
Сообщение #1


__
*

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

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


Помогите решить данную задачу? Заранее огромное спасибо!

Составьте банк данных кинологов, включающий в себя фамилию и имя владельца собаки, кличку собаки, породу собаки, день и год рождения собаки, наличие родословной, наличие медалей. Информацию о каждом владельце оформите в программе в виде записи. Совокупность записей объедините в массив. Составьте программу, которая обеспечивает ввод полученной информации, а также вывод данных по первой букве имени владельца собак.

Как мне поставить условие, чтобы был вывод по первой букве имени владельца?


Program nk;
uses crt;
 type
  inf=record
  den,god,med:integer;
  name,fam,klich,poroda,rods:string;
 end;

var f:file of inf;
m:array[1..100]of inf;
i,k:integer;

procedure BK;
begin
writeln('~~~~Банк данных кинологоВ~~~~');
 writeln;
 write('Введите количество кинологов  ->');
 readln(k);
 writeln;
for i:=1 to k do
  with m[i] do
     begin
       write('Введите имя владельца собаки ->');
       readln(name);
       write('Введите фамилию владельца собаки ->');
       readln(fam);
       write('Введите кличку собаки ->');
       readln(klich);
       write('Введите породу собаки ->');
       readln(poroda);
       write('Введите день рождения собаки ->');
       readln(den);
       write('Введите год рождения собаки ->');
       readln(god);
       write('Введите наличие родословной ->');
       readln(rods);
       write('Введите наличие медалей ->');
       readln(med);
       writeln;
     end;
    end;



Сообщение отредактировано: xekzzz - 26.05.2008 17:31
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 6)
Client
сообщение 26.05.2008 15:48
Сообщение #2


Профи
****

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

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


if m[i].name[1]=c then ... // с-это буква


Сообщение отредактировано: Client - 26.05.2008 15:50
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
xekzzz
сообщение 26.05.2008 16:55
Сообщение #3


__
*

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

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


спасибо Client !


Program nk;
uses crt;
 type
  inf=record
  den,god,med:integer;
  name,fam,klich,poroda,rods:string;
 end;

var f:file of inf;
m:array[1..100]of inf;
i,k:integer;
c:string;

procedure BK;
begin
writeln('~~~~Банк данных кинологоВ~~~~');
 writeln;
 write('Введите количество кинологов  ->');
 readln(k);
 writeln;
for i:=1 to k do
  with m[i] do
     begin
       write('Введите имя владельца собаки ->');
       readln(name);
       write('Введите фамилию владельца собаки ->');
       readln(fam);
       write('Введите кличку собаки ->');
       readln(klich);
       write('Введите породу собаки ->');
       readln(poroda);
       write('Введите день рождения собаки ->');
       readln(den);
       write('Введите год рождения собаки ->');
       readln(god);
       write('Введите наличие родословной ->');
       readln(rods);
       write('Введите наличие медалей ->');
       readln(med);
       writeln;
     end;
    end;

    
procedure Poisk;
begin
   for i:=1 to k do
      if m[i].name[1]=c then
          with m[i] do  // с-это буква
writeln(fam,'   ',klich,'   ',poroda,'   ',den,'   ',god,'   ',rods,'   ',med);
 end;

 begin
 BK;
 writeln('введите 1 букву имя владельца');
 readln(c);
 Poisk;
 end.
 


   

   


   




Сообщение отредактировано: xekzzz - 26.05.2008 17:30
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
xekzzz
сообщение 26.05.2008 23:02
Сообщение #4


__
*

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

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


Как мне её теперь ПЕРЕЗАПИСАТЬ в текстовый файл! сам пробовал, не получается (((
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
мисс_граффити
сообщение 26.05.2008 23:53
Сообщение #5


просто человек
******

Группа: Модераторы
Сообщений: 3 641
Пол: Женский
Реальное имя: Юлия

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


показывай, что и как пробовал


--------------------
Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
xekzzz
сообщение 27.05.2008 0:07
Сообщение #6


__
*

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

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


У меня получается записать только в типизированный файл ! ((

Program nk;
uses crt;
 type
  inf=record
  den,god,med:integer;
  name,fam,klich,poroda,rods:string;
 end;

var f:file of inf;
m:array[1..100]of inf;
i,k:integer;
c:string;

procedure BK;
begin
writeln('~~~~Банк данных кинологоВ~~~~');
 writeln;
 write('Введите количество кинологов  ->');
 readln(k);
 writeln;
for i:=1 to k do
  with m[i] do
     begin
       write('Введите имя владельца собаки ->');
       readln(name);
       write('Введите фамилию владельца собаки ->');
       readln(fam);
       write('Введите кличку собаки ->');
       readln(klich);
       write('Введите породу собаки ->');
       readln(poroda);
       write('Введите день рождения собаки ->');
       readln(den);
       write('Введите год рождения собаки ->');
       readln(god);
       write('Введите наличие родословной ->');
       readln(rods);
       write('Введите наличие медалей ->');
       readln(med);
       writeln;
          write(f,m[i]);
     end;
    end;

    
procedure Poisk;
begin
   for i:=1 to k do
      if m[i].name[1]=c then
          with m[i] do  // с-это буква
writeln(fam,'   ',klich,'   ',poroda,'   ',den,'   ',god,'   ',rods,'   ',med);
 end;

 begin
 assign(f,'c:\REZZ.txt'); rewrite(f);
 BK;
 writeln('введите 1 букву имя владельца');
 readln(c);
 Poisk;
 end.

 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Client
сообщение 27.05.2008 7:39
Сообщение #7


Профи
****

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

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


for i:=1 to k do
  with m[i] do
     begin
       writeln(f1,name);
       writeln(f1,fam);
       writeln(f1,klich);
       writeln(f1,poroda);
       writeln(f1,den);
       writeln(f1,god);
       writeln(f1,rods);
       writeln(f1,med);
       writeln(f1);
     end;
f1-это текстовый файл
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 

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