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

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

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

> Использование типа-record, Формирование записи и её обработка
сообщение
Сообщение #1


Гость






--------------------------------------------
Сформировать запись "Операторы Турбо Паскаля":оператор, действие.
Подсчитать их количество и количество операторов имеющих повторяющиеся ключевые слова.
---------------------------------------------
Код

Program xxx;
Uses crt;
Type
   operators=record
         oper:string;
         deis:string;
         end;
Var
  z:array [1..24] of operators;
  i:byte;
  f1:text;
  n:string;
Begin
CLRSCR;
assign(f1,'c:\ttp\db.dat');
reset(f1);
{*}
for i:=1 to 12 do
begin
readln(f1,z[i].oper);
readln(f1,z[i].deis);
end;
{**}
writeln('Введите оператор:');
readln(n);
for i:=1 to 12 do
if n=z[i].oper then write('Оператор ',n,'-',z[i].deis,'');
readln
end.

Файл db.dat-содержит 24 строки, где 1строка -оператор,2-действие оператора.
Как сделать чтоб программа подсчитывала кол-во операторов, и кол-во операторов имеющих повторяющиеся ключевые слова?

Сообщение отредактировано: Oleg_Z -
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Ищущий истину
******

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

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


Цитата
Файл db.dat-содержит 24 строки, где 1строка -оператор,2-действие оператора.
Как сделать чтоб программа подсчитывала кол-во операторов, и кол-во операторов имеющих повторяющиеся ключевые слова?


====Количество операторов====

1) файл точно текстовый? (может он типизированный- file of operators ?) или это без разницы?
2) если есть 12 строк с операторами, то зачем их подсчитывать???
А если там максимум может быть 12 операторов, то считаем их так:
сначала считываем их в массив (у вас это есть - стоит между * и ** )
потом проверяем, пуста ли строка (если нет, значит оператор есть, иначе больше нет операторов)
Код

{вставить этот код после ** }
{от 1 до 12 - если строка не пуста, значит увеличить кол-во операторов, иначе - выйти из цикла}
for i:=1 to 12 do If z[i].oper<>'' then inc(maxoperators) else exit;
{теперь в пер. maxoperators- кол-во операторов}

3) Зачем вам массив z из 24 элементов? надо 12 элементов (ведь у вас массив записей, а их максимум 12)
4) не очень понимаю, что значит "действие оператора" -поясните пожалуйста на примере
5) что такое повторяющиеся ключевые слова? (или ключ. слова- это тоже, что и действия)
6) сколько у 1 оператора может быть действий (1 или нет? )
====
пожалуйста ответьте на эти вопросы, и мы попробуем сделать 2 часть задания (кол-во повтор. ключ. слов)


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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


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

 





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