Помощь - Поиск - Пользователи - Календарь
Полная версия: Строковой тип
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Гость
Задача: Дан массив из 4 слов... Вывести на экран те слова, в которых первая буква ещё хоть раз повторяется в этом же слове... Найдите пожалуйста ошибку

program odin;
var mas:array[1..4] of string;
i,m:integer;
s:string;
begin
for i:=1 to 4 do begin
writeln('vvedite slovo');
readln(mas[i]); end;
for i:=1 to 4 do begin
s:=mas[i];
m:=length(s);
if pos(s[1], copy(s,2,m-2)) then writeln(s);
writeln(mas[i]); end;
readln;
end.


Тегами пользоваться не забываем...
T i m e
Убери в конце writeln(mas[i]); и ещё заместо pos(s[1], copy(s,2,m-2)) напиши pos(s[1], copy(s,2,m))
Ludmilka
Цитата(T i m e @ 28.02.2007 12:13) *

Убери в конце writeln(mas[i]); и ещё заместо pos(s[1], copy(s,2,m-2)) напиши pos(s[1], copy(s,2,m))

У меня пишет что в THEN ошибка... ((
volvo
if pos(s[1], copy(s,2,m-2)) > 0 then writeln(s);
Pos возвращает индекс, т.е. Byte, а не Boolean...
Ludmilka
Цитата(volvo @ 28.02.2007 12:26) *

if pos(s[1], copy(s,2,m-2)) > 0 then writeln(s);
Pos возвращает индекс, т.е. Byte, а не Boolean...

Спасибо
T i m e
if pos(s[1], copy(s,2,m-2)) > 0 - точно так... чё то не заметил вначале... но там у тебя тоже ошибки были в тех местах где я исправил...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.