Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Помогите за вознагрождение. [D7, XP]


XSasha ©   (2005-11-17 18:12:00) 

Привет всем!!!
Помогите мне пожалуйста разобраться с двумя задачами.
Первая.
Как вывести поместить текст из Edit1 в Edit2 задам наперёд.
Пример.
Edit1.text:="Hellow World"
Edit2.Text:="dlrow wolleh"
Вторая.
Известно что любое натурально число до 1001 можно представить в виде суммы квадратов не более чем 4 чисел, как написать программу которая разлагала бы числа.
Пример.
Edit1.text:="16"
Edit2.Text:="4+4+4+4"
////
Edit1.text:="13"
Edit2.Text:="4+4+4+1"
Первому кто поможет решить эти две задачи обещаю переслать на счёт WebMoney 3$!


Gydvin   (2005-11-18 07:03:00) [1]

Antonn ©   (17.11.05 18:32) [3]



downto

Не знал :(


Antonn   (2005-11-18 05:04:00) [2]

отправляй ему мани.


Manufel   (2005-11-17 19:33:00) [3]

Прошу прощения, та функция не коректная, вот правильный вариант:

function NumToNums(x:word):string;
var I,a:word;
e:real;
begin
if x=1 then
begin
result:='1';
exit;
end
else
if x=0 then
begin
result:='';
exit;
end;
result:='';
a:=x;
for i:=a downto 1 do
begin
e:=trunc(sqrt(a));
if (sqrt(a))=e then
break
else
a:=i;

end;
result:=result+inttostr(a)+'+'+NumtoNums(x-a);
end;


XSasha   (2005-11-17 19:17:00) [4]

>Manufel ©
Огромное спасибо, выручил!


Manufel   (2005-11-17 19:13:00) [5]

function NumToNums(x:word):string;
 var I,a:word;
begin
if x=1 then
begin
 result:='1';
 exit;
end
else
if x=0 then
begin
 result:='';
 exit;
end;
 result:='';
repeat
 a:=trunc(sqrt(x));
 for i:=a downto 1 do
begin
 if (sqrt(a))=sqr(trunc(sqrt(a))) then
 break
else
 a:=i;
 
end;
 result:=result+inttostr(a)+'+'+NumtoNums(x-sqr(a));

end;
......
используешь так:
edit1.text:=NumToNums(n);
где n - число

Если будут какие вопросы пиши в асю 279214160 или на мыло manufel@mail.ru
Денег не надо, спасибо будет достаточно =)


Плохиш   (2005-11-17 19:01:00) [6]

1001 = 31^2 + 6^2 + 2^2 пойдёт?


XSasha   (2005-11-17 18:47:00) [7]

Прости не прочитал исправление, щас всё супер вот только второе как решитоь я не знаю


XSasha   (2005-11-17 18:33:00) [8]

var i:integer;
begin
for i:=length(edit1.text) to 1 do
edit2.text:=edit2.text+edit1.text[i];

Этот код не работает ничего не праисходит


Antonn   (2005-11-17 18:32:00) [9]

Antonn ©   (17.11.05 18:30) [2]
for i:=length(edit1.text) to 1 do

for i:=length(edit1.text) downto1 do


Antonn   (2005-11-17 18:30:00) [10]

var i:integer;
begin
for i:=length(edit1.text) to 1 do
edit2.text:=edit2.text+edit1.text[i];

PS бонус оставь тому, кто второе решит.


Tonich   (2005-11-17 18:23:00) [11]


> на счёт WebMoney 3$!
не поскупился , молодец !!! ))


Наверх

Титульная страница Поиск, карта сайта Написать письмо