Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 25.11.2009, 07:50   #1
gessi
Пользователь
 
Регистрация: 13.09.2009
Сообщений: 20
Репутация: 10
Восклицание строковый тип

Здравствуйте!!!
Помогите решить вот эту задачу не через строку,как я решила,а через массив!!!!!!!!

Задача:
Дана последовательность, содержащая от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв; между соседними словами - не менее одного пробела, за последним словом точка. Напечатать все слова, отличные от последнего слова, предварительно преобразовав каждое из них по следующему правилу:
-удалить из слова последнюю букву

Мое решение:
Код:
var
    count, i, m , j: integer;
    input : string;
    s, t : string;
begin
writeln('Vvedite stroky: ');
readln(input);
i:= length(input) - 1;
while input[i] <> ' ' do dec(i);
s:= copy(input, i + 1, length(input) - i - 1);
for j:= 1 to i do
begin
if input[j] <> ' ' then
t:= t + input[j]
else
begin
if (t <> ' ') and (t <> s) then
writeln(copy(t, 1, length(t) - 1));
t:= ' ';
end;
end;
readln;
end.
ПОМОГИТЕ!!!!!!!!!!!!!!!!!!!!
gessi вне форума   Ответить с цитированием
Старый 25.11.2009, 09:00   #2
Stilet
Белик Виталий :)
Профессионал
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Адрес: Украина, Донецкая область, г. Краматорск
Сообщений: 57,840
Репутация: 6850
По умолчанию

Цитата:
а через массив!!!!!!!!
Т.е. тебе строку нужно преобразовать в массив слов?
__________________
I'm learning to live...
Stilet вне форума   Ответить с цитированием
Старый 25.11.2009, 09:43   #3
gessi
Пользователь
 
Регистрация: 13.09.2009
Сообщений: 20
Репутация: 10
Восклицание

Мне нужно занести в массив каждое слово в отдельности и потом работать с ними.
gessi вне форума   Ответить с цитированием
Старый 25.11.2009, 10:40   #4
Stilet
Белик Виталий :)
Профессионал
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Адрес: Украина, Донецкая область, г. Краматорск
Сообщений: 57,840
Репутация: 6850
По умолчанию

Ну это легко:
Код:
 var s:string; a:array[1..100] of string;
  i,count:integer;
begin   {$o-}
 s:='Hello my world';
 count:=1;
 i:=1; while (i<=length(s)) do begin
   if s[i]=' ' then begin inc(count);inc(i);end;
   a[count]:=a[count]+s[i];
   inc(i);
 end;
Count - количество слов
__________________
I'm learning to live...
Stilet вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Строковый тип Koshmarick Помощь студентам 8 05.11.2009 13:37
Строковый тип данных Mihael-Vlz Паскаль 7 23.04.2009 17:01
Строковый тип данных. Paul Oakenfold Паскаль 2 11.04.2009 21:05
символьный и строковый тип. ribka Помощь студентам 4 02.12.2007 14:25


04:15.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.