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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.11.2009, 07:10   #1
Koshmarick
 
Регистрация: 05.11.2009
Сообщений: 3
Печаль Строковый тип

Помогите пожалуйста.
Все пробелы переместить в начало строки. Решить задачу с использованием и без использования дополнительных строковых переменных.
Горю по полной.

PS Сильно не ругайтесь, я ведь всего лишь бухгалтер.
Koshmarick вне форума Ответить с цитированием
Старый 05.11.2009, 08:11   #2
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Код:
var S:string;
    n,i:integer;
begin
 n:=0;
 s:='asd dfsd sdfsdf sfgsf ';
 while Pos(' ',s)>0 do
 begin
  Delete(S,Pos(' ',s),1);
  inc(n);
 end;
 for i:=1 to n do s:=' '+s;

Последний раз редактировалось SERG1980; 05.11.2009 в 10:17.
SERG1980 вне форума Ответить с цитированием
Старый 05.11.2009, 08:26   #3
ОДИНОЧЕСТВО В СЕТИ
Любопытная Вредина
Участник клуба
 
Аватар для ОДИНОЧЕСТВО В СЕТИ
 
Регистрация: 19.06.2009
Сообщений: 1,285
По умолчанию

ну а с использованием доп переменной
Код:
s1:='';
for i:=1 to length(s) do
if s[i]=' ' then s1:=s1+s[i];
for i:=1 to length(s) do
if s[i]<>' ' then s1:=s1+s[i]; 
writeln(s1);
Дурь - это особая форма материи, которая не возникает ниоткуда и не исчезает никуда, а лишь переходит из одной головы в другую.
ОДИНОЧЕСТВО В СЕТИ вне форума Ответить с цитированием
Старый 05.11.2009, 08:35   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Господа, а с чего вы взяли что это в паскале? Мож в 1С автору нужно?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.11.2009, 08:39   #5
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 18,136
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Господа, а с чего вы взяли что это в паскале? Мож в 1С автору нужно?
Или просто на бейсике, врядли в 1С, обычно бухгалтера для 1С нанимают стороннюю обслуживающую контору.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 05.11.2009, 09:29   #6
Koshmarick
 
Регистрация: 05.11.2009
Сообщений: 3
По умолчанию

Да,да именно в Pascal-е!
Дело в том чтоб не загреметь с работы нужно 2-ое высшее ( а по первому я гуманитарий. Сей час поступил на прикладную информатику в экономике.
Ну мне и дали 39 заданий по паскалю. Со многими уже разобрался. Паскаль учу всего третий день.
PS А в конторе у нас Парус7. Справляюсь сам без сторонних контор. (Ну разве что лицензию продлить)
Koshmarick вне форума Ответить с цитированием
Старый 05.11.2009, 09:42   #7
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Ну так в следующий раз язык то указывай, или в соответствующую ветку форума пиши.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.11.2009, 11:03   #8
VintProg
not
Участник клуба
 
Аватар для VintProg
 
Регистрация: 27.06.2009
Сообщений: 1,399
По умолчанию

Цитата:
Все пробелы переместить в начало строки
Код:
 s:='asd dfsd sdfsdf sfgsf '
Чтобы было вот так?
Код:
'    asddfsdsdfsdfsfgsf '
вот:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
 s : string;
 b : string;
 i : integer;

begin
 s:='asd dfsd sdfsdf sfgsf';
 i := 0;
 b := '';

while i < Length(s) do
    begin

      if s[i] = ' ' then
         begin
           delete(s,i,1);
           b := b + ' ';
         end;

      inc(i);
    end;

edit1.Text := b + s;
end;

Последний раз редактировалось Stilet; 05.11.2009 в 11:44.
VintProg вне форума Ответить с цитированием
Старый 05.11.2009, 12:37   #9
SERG1980
Участник клуба
 
Аватар для SERG1980
 
Регистрация: 28.03.2007
Сообщений: 1,814
По умолчанию

Для паскаля
Код:
uses crt;
var S:string;
   i:integer;
BEGIN
 clrscr;
 writeln('Vvedite stroky');
 readln(s);
 for i:=1 to length(s) do
 if s[i]=' ' then
 begin
  delete(s,i,1);
  s:=' '+s;
 end;
 writeln('rezultat:-',s);
 readln;
END.
SERG1980 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Символьный и строковый тип TwEEkcs Помощь студентам 1 24.06.2009 10:25
Строковый тип данных Mihael-Vlz Паскаль, Turbo Pascal, PascalABC.NET 7 23.04.2009 17:01
Строковый тип данных. Paul Oakenfold Паскаль, Turbo Pascal, PascalABC.NET 2 11.04.2009 21:05
символьный и строковый тип. ribka Помощь студентам 4 02.12.2007 13:25