Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.03.2014, 16:40   #1
Тетрадь
Пользователь
 
Регистрация: 03.11.2013
Сообщений: 37
По умолчанию В чем ошибка программы? Паскаль

В чем ошибка программы, помогите исправить. Наверно в основной программе я неправильно обращаюсь к процедуре, посмотрите пожалуйста
Код:
unit op;
interface
var  s: string;
implementation
end.
Код:
unit obrabotki;
interface
uses op;
implementation
 
function per(p: string): integer;
var i: integer;
begin
  per := 1;
  for i := 1 to length(p) div 2 do if p[i] <> p[length(p) - i + 1]
        then begin
        per := 0;
        break
        end
end;
procedure kol(p: string): integer;
var
    i, k: integer;
begin
  s := s + ' ';
  k := 0;
  while length(s) > 0 do
    begin
      while (length(s) > 0) and (s[1] in [' ', ',', '.', '?', '!', '''', '"', ':', ';']) do delete(s, 1, 1);
      for i := 1 to length(s) do if s[i] in [' ', ',', '.', '?', '!', '''', '"', ':', ';']
        then begin
          k := k + per(copy(s, 1, i - 1));
          delete(s, 1, i);
          break
        end;
end.
Код:
program pro2;
uses
    op,obrabotki;
begin
     per(p);
     writeln('Введите строку:');
     readln(s);
     kol(k);
     writeln('Перевертышей: ', k);
end.

Последний раз редактировалось Тетрадь; 25.03.2014 в 17:01.
Тетрадь вне форума Ответить с цитированием
Старый 25.03.2014, 17:00   #2
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

Процедура kol описана как функция.
Что такое pal?
Не описана нигде.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 25.03.2014, 17:13   #3
Тетрадь
Пользователь
 
Регистрация: 03.11.2013
Сообщений: 37
По умолчанию

Ошибся, вместо pal нужно per, обращение к процедуре per
Тетрадь вне форума Ответить с цитированием
Старый 26.03.2014, 08:31   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

ошибка номер раз:
Цитата:
Код:
procedure kol(p: string): integer;
var
Процедура ничего не возвращает! Поэтому, либо исправьте на function, либо уберите :integer
Если исправите на функцию, не забудьте вернуть нужное значение в качестве результата данной функции.


ошибка номер два:
Цитата:
Код:
kol(k);
что за переменная k, про такую Паскаль (как и мы) в данном месте программы ничего не знает!

исправляйте, потом продолжим...


p.s. в 99.9% случаем компилятор посвечивает именно строчку с ошибкой и пишет, что ему (компилятору) в данной строке не нравится. Вы не пробовали читать текст ошибок и пытаться понять, что это означает?!!
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Тест.Паскаль. В чем ошибка? Viwwna Помощь студентам 8 22.01.2012 19:17
Паскаль, Борланд Паскаль-в чем разница??? Vremya-Dengy Паскаль, Turbo Pascal, PascalABC.NET 13 31.05.2011 18:23
На чем делать программы? CjCurly Помощь студентам 11 01.02.2011 10:16
Паскаль задача на обработку последовательностей, помогите найти в чем ошибка??? Nubik Помощь студентам 2 22.12.2009 11:04
Скажите, в чем моя ошибка в сортировке, или напишите, как правильно сортировать. язык Паскаль. Devo4ka Паскаль, Turbo Pascal, PascalABC.NET 0 26.11.2008 00:19