Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/9: Рейтинг темы: голосов - 9, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 11.05.2009
Сообщений: 5

Ссылочные типы

13.06.2009, 22:21. Показов 2015. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Написать логическую функцию Search(T,c,i,j), определяющую, входит ли литера с в текст Т, и, если входит, присваивающую параметрам i и j "координаты" первого вхождения этой литеры (i - номер строки, j - номер позиции в строке).
Вот написал начало, закончить не могу...
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
const
 n=100;
type
 Ref = ^String;
 Tekst= array [1..N] of Ref;
var t:tekst; f:text; k:byte; c:char;i,j:integer;
procedure Input(var f:text;var t:tekst; var k:byte);
 var i:byte; s:string;
 begin
  reset(f);
  for i:=1 to n do
   begin
    new(t[i]);
    if eof(f) then
     begin
      readln(f,s);
      t[i]:=nil
       end
        else
 
         begin
          readln(f,s);
          t[i]^:=s;
          end;
    if t[i]<>nil then inc(k);
   end;
   closefile(f);
 end;
 
Function Search(t:tekst; c:char;i,j:integer):boolean;
 var  b:boolean; o,p:byte;
begin
  b:=false;
  for o:=1 to k do
begin
if b then break;
   for p:=1 to length(t[i]^) do
    if t[o]^[p]=c then
begin
 b:=true;
break;
end;
 
i:=o;
j:=p;
 search:=b;
 end;
 end;
begin
 assignfile(f,'text.txt');
 input(f,t,k);
 write('Simvol->'); readln(c);
 writeln(Search(t,c,i,j));
 readln
end.
помогите функцию дописать
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.06.2009, 22:21
Ответы с готовыми решениями:

Указатели на ссылочные типы недопустимы
Program1.pas(5) : Указатели на ссылочные типы недопустимы Program Pr1; type IntArray = array of...

Ссылочные типы. Массив (или список) ссылок
Прошу подсказать, как правильно описать следующую конструкцию, код с ошибками, т.к. я как раз не...

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

3
 Аватар для lexus_ilia
3067 / 727 / 69
Регистрация: 24.09.2008
Сообщений: 1,531
14.06.2009, 02:07
1) У Вас катастрофически не хватает end'ov и можно убрать очень много begin'ov.
2)Я не понимаю смысл использования вот такой конструкции:
Pascal
1
2
3
type
 Ref = ^String;
 Tekst= array [1..N] of Ref;
чем это отличается от:
Pascal
1
2
type
 Tekst= array [1..N] of String;
3) Для поиска в определённой строке используйте функцию Pos (почитайте в документации что она означает и уберите "бред" который у Вас написан)
0
0 / 0 / 0
Регистрация: 11.05.2009
Сообщений: 5
14.06.2009, 08:04  [ТС]
Это необходимо написать по условию:
Pascal
1
2
3
4
N = 100; 
Type Str = string; 
Ref = ^String; 
Tekst= array [1..N] of Ref;
Вот работающая программа, которая определяет если ли литера в тексте
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
const
 n=100;
type
 Ref = ^String;
 Tekst= array [1..N] of Ref;
var t:tekst; f:text; k:byte; w:char;
procedure Input(var f:text;var t:tekst; var k:byte);
 var i:byte; s:string;
 begin
  reset(f);
  for i:=1 to n do
   begin
    new(t[i]);
    if eof(f) then
     begin
      readln(f,s);
      t[i]:=nil
       end
        else
 
         begin
          readln(f,s);
          t[i]^:=s;
          end;
    if t[i]<>nil then inc(k);
   end;
   closefile(f);
 end;
 
Function Sch(t:tekst; w:char):boolean;
 var  b:boolean; i,j:byte;
 begin
  b:=false;
  for i:=1 to k do
   for j:=1 to length(t[i]^) do
    if t[i]^[j]=w then b:=true;
  sch:=b;
 end;
 
 
begin
 assignfile(f,'text.txt');
 input(f,t,k);
 write('Simvol->'); readln(w);
 writeln(sch(t,w));
 readln
end.
но вот это по условию задания:"и, если входит, присваивающую параметрам i и j "координаты" первого вхождения этой литеры (i - номер строки, j - номер позиции в строке)" - я не понимаю как реализовать
0
 Аватар для lexus_ilia
3067 / 727 / 69
Регистрация: 24.09.2008
Сообщений: 1,531
20.06.2009, 11:12
Пишите вашу функцию вот так:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Function Sch(t:tekst; w:char; var i,j:byte):boolean;
 var  b:boolean;
 begin
  b:=false;
  for i:=1 to k do
   for j:=1 to length(t[i]^) do
    if t[i]^[j]=w then
    begin 
      b:=true;
      break
    end;
  if not(b) then
    i:=-1; {Присваеваем значение -1 для обозначения не найденности вдобавок к boolean'овскому значению}
  sch:=b;
 end;
и вызываете вот так:
Pascal
1
sch(t,w,i,j)
и после выполнения программы у вас переменные i и j будут иметь в себе "координаты". Только не забудьте их добавить в раздел описания:
Pascal
1
var t:tekst; f:text; k:byte; w:char; i,j:byte;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.06.2009, 11:12
Помогаю со студенческими работами здесь

Ссылочные типы данных
используовать ссылочные типы данных и динамическую память.Ввести массив «А». В массив «В»...

Стеки. Ссылочные переменные.
Не могу никак разобраться и понять как работают эти ссылочные переменные, поясните пожалуйста код,...

Невозможно вывести типы-параметры обобщённой подпрограммы Min (укажите типы-параметры явно)
type mas = array of real; var a: mas; max: real; i, y, n: integer; begin ...

Типы файлов и другое
Привет всем. Мне нужна ваша помощь в поиске информации. Вот вопросы: 1.Все типы файлов в Паскале...

Типы данных / Найти наименьшее натуральное число N...
Найти наименьшее натуральное число N, которое можно представить двумя различными способами в виде...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru