В чем ошибка? Пишет "Индекс находится вне границ массива" вроде 17
В чем ошибка? Пишет "Индекс находится вне границ массива" вроде 17 сторока
program test;
uses crt;
var s, s1:string;
n, f, i, j, len:integer;
begin
clrscr;
writeln('введите предложение');
readln(s);
s:=' '+s;
writeln('ведите приставку');
readln(s1);
len:=length(s1);
n:=0;
f:=0; while jlt;=length(s) do
begin
if s[j]=' ' then
begin
for i:=1 to len do
if s[j+i]lt;gt;s1[i] then f:=1;
if f=0 then begin n:=n+1; j:=j+len; end
else j:=j+1; end;
end;
writeln('n=',n);
readln;
end.
В выделенной строке выдает ошибку
Олеся Гишбелия
а что вводите?
2 ответа
Алина
Смотрите, в этом цикле:
while jlt;=length(s) do
J может быть одинаково длине строчки. А снутри цикла есть вот это:
if s[j+i]lt;gt;s1[i] then f:=1;
То есть если s[J] - заключительный символ, то на этой строке пойдет воззвание теснее к несуществующему индексу массива.
while jlt;=length(s) do
J может быть одинаково длине строчки. А снутри цикла есть вот это:
if s[j+i]lt;gt;s1[i] then f:=1;
То есть если s[J] - заключительный символ, то на этой строке пойдет воззвание теснее к несуществующему индексу массива.
Шелепова
Лилия
if s[j+i], если предпоследний, а I = 2? беря во внимание сообщение об ошибке, то она именно тут должна быть.
Илья Щеканов
я тупой =). зависает на данный момент либо что? и что он вывести обязан?
Женек Проненко
обязан вывести n-число слов начинающихся с какой-или приставки. Когда вводишь предложение и приставку ничего не происходит, просто так и висит, при нажатии ентера выходит из программы
Никита
постоянный цикл
Диман Хрошин
надобно опустить else j := j + 1 На строку ниже
Тимур Пуновский
благодарю
Альбина Масаликина
и else убрать - там же в любом случае надобно прирастить
Константин Жореков
f := 0 внести в цикл while и вроде работает
Геннадий Каслов
спасибо огромное, все работает х)
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
Игорь 14 лет назад был на 8 лет моложе, чем его
Математика.
Два тела массами m1 и m2 находящие на расстоянии R друг
Физика.
В сосуде 4целых одна пятая литр воды что бы заполнить сосуд
Математика.
Двум малярам Диме И Олегу поручили выкрасить фасад дома они разделили
Разные вопросы.
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
Облако тегов