Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 18.03.2012, 12:36   #1 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию Строки

Доброго времени суток!
Пожалуйста помогите.
Есть не большие проблемы со строками.
1) Необходимо удалить первую букву в каждом слове строки.
2) Вывести все слова встречающиеся один раз.

З.Ы. Для первой нельзя использовать дополнительный массив.
Для обеих задач нельзя использовать стандартные функции языка, за исключением длины строки.

Несколько дней ломаю голову ни чего не могу придумать. ЯП вообще С++, но можно и паскаль.
shrek=) вне форума   Ответить с цитированием

Старый 18.03.2012, 12:36
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Похожие обсуждения помогут вам решить эту проблему

Строки в С++
Строки в с++
Строки
Строки
Строки в С
Строки

Старый 18.03.2012, 12:40   #2 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

На с++ вот так придумал, но что то в нем не то.

Код:
 char st1[]="11 22 33 44 555 666 777 888";
     puts(st1); 
     for (int i=1;i<strlen(st1); )  
     if (st1[i-1]!=' ') 
     {   
        st1[i-1]=st1[i];
        i++;
            }
        else 
        { i+=2;
             st1[i-1]=st1[i]; 
              }            

     puts(st1);
getchar();
shrek=) вне форума   Ответить с цитированием
Старый 18.03.2012, 18:20   #3 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от shrek=) Посмотреть сообщение
На с++ вот так придумал, но что то в нем не то.
Миша, на Паскале у меня первая задачка получилась как-то так:
Код:
Var
 S:String;
 i,j:Byte;
Begin
 S:='Long ago there were three pigs';
 Writeln(S);
 For i:=1 to Length(S)-1 do S[i]:=S[i+1];
 S[Length(S)]:=' ';
 For i:=1 to Length(S) do
  If S[i]=' ' then
   begin
    for j:=i+1 to Length(S)-1 do S[j]:=S[j+1];
    S[Length(S)]:=' ';
   end;
 Writeln(S);
 Readln;
End.
Vladimir_S вне форума   Ответить с цитированием
Старый 18.03.2012, 19:55   #4 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

Спасибо огромное.
shrek=) вне форума   Ответить с цитированием
Старый 21.03.2012, 06:43   #5 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

А вторую задачу не подскажите, а то я сам не могу сообразить!
shrek=) вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 21.03.2012, 11:49   #6 (permalink)
AlexZir
support
 
Аватар для AlexZir
 
Регистрация: 19.08.2007
Адрес: Зея
Сообщений: 15,797
Записей в дневнике: 71
Сказал(а) спасибо: 166
Поблагодарили 203 раз(а) в 86 сообщениях
Репутация: 75760
По умолчанию

Миша, создай 2 массива, 1 содержащий все слова и 1, содержащий количество включений каждого слова в текст. Это самый простой способ решения
AlexZir вне форума   Ответить с цитированием
Старый 21.03.2012, 17:39   #7 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

Цитата:
Сообщение от AlexZir Посмотреть сообщение
включений каждого слова в текст
В этом то и вопрос как найти включение!
shrek=) вне форума   Ответить с цитированием
Старый 21.03.2012, 17:52   #8 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

Да и нет в С++ такового понятия как строковый массив.
shrek=) вне форума   Ответить с цитированием
Старый 21.03.2012, 22:52   #9 (permalink)
kreol
Member
 
Аватар для kreol
 
Регистрация: 27.02.2010
Сообщений: 659
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1312
По умолчанию

Во второй задаче выбор функций(стандартных) не ограничен?
kreol вне форума   Ответить с цитированием
Старый 22.03.2012, 12:02   #10 (permalink)
shrek=)
Студент БГПУ
 
Аватар для shrek=)
 
Регистрация: 06.02.2010
Сообщений: 420
Записей в дневнике: 3
Сказал(а) спасибо: 1
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 470
По умолчанию

Ограничен, только длина строки.
shrek=) вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


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

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




Часовой пояс GMT +4, время: 13:25.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.