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


Ответ
 
Опции темы Опции просмотра
Старый 14.09.2013, 18:40   #1 (permalink)
NAt
Member
 
Регистрация: 09.12.2012
Сообщений: 45
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Строки в Lazarus

Здравствуйте, подскажите пожалуйста с задачей: Дана строка текста. Найти номер позиции, где находится последняя точка. Далее отсортировать буквы по алфавиту, которые расположены после этой последней точки.что я тут не правильно делаю:
var x,x1:string;
k,i,j:integer;
begin
k:=length(Edit1.Text);
for i:=1 to k do
begin
if Edit1.Text[i]='.' then
Edit2.Text:=IntToStr(i);
end;
for i:=IntToStr(i) to k do
begin
for j:=IntToStr(i) to k-1 do
begin
if Edit1.Text[j]>Edit1.Text[j+1] then
begin
Edit3.Text:=Edit1.Text[j];
Edit1.Text[j]:=Edit1.Text[j+1];
Edit1.Text[j+1]:= Edit3.Text;
end;
end;
NAt вне форума   Ответить с цитированием

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

На форуме есть похожие топики, можете их посмотреть

Помогите сделать задачи с кнопками в Lazarus
Создать приложение "Lazarus"
Сделать графический интерфейс, Lazarus

Старый 15.09.2013, 04:51   #2 (permalink)
kreol
Member
 
Аватар для kreol
 
Регистрация: 27.02.2010
Сообщений: 659
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 1312
По умолчанию

Если честно, то программу наверняка можно оптимизировать. Сорри, но леньки...
Код:
var x1:string;
    k,i,j,l,n:integer;
    x: char;
begin
     k:=length(Edit1.Text);
     for i:=0 to k do
     begin
          if Edit1.Text[i]='.' then
             begin
             Edit2.Text:=IntToStr(i);
             n := i+1;
             end;
     end;

     x1 := Edit1.Text;
     for l:=n to k do
     begin
          for j:=n to k do
          begin
               if x1[l] < x1[j] then
               begin
                    x := x1[l];
                    x1[l] := x1[j];
                    x1[j] := x;
               end;
          end;
     end;
     Edit1.text := x1;
end;
kreol вне форума   Ответить с цитированием
Ads

Яндекс

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

Опции темы
Опции просмотра

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

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




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

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