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

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

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

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

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 11.04.2013, 01:47   #1
Bracho1994
Пользователь
 
Регистрация: 10.04.2013
Сообщений: 22
Вопрос Легкая задача Делфи

Снова я, но на этот раз уже стал немного вникать.
Задача :
Вводятся числа a,b,c,d. Если a>b>c>d, то вычислить квадрат наименьшего из них. в противном случае вычислить сумму чисел


Код HTML:
 var  a, b, c, d, m, g, l: real;
begin
 a:=strtofloat (Edit1.Text);
 b:=strtofloat (Edit2.Text);
 c:=strtofloat (Edit3.Text);
 d:=strtofloat (Edit4.Text);
m:=a;
if m>b then m:=b;
if m>c then m:=c;
if m>d then m:=d;
 g:= SQR(m);
 label1.caption:=floattostr(g);



 l:= a + b + c + d;
 label4.caption:=floattostr(l);

end;

end.

Без
Код HTML:
 l:= a + b + c + d;
 label4.caption:=floattostr(l);
он ищет квадрат наименьшего из введенных чисел, но не учитывает тот факт, что квадрат вычислять только тогда, когда a>b>c>d. Как тут быть?

И не знаю как оформить дальше, чтобы в противном случае находил их сумму..
Что можете предложить? Надеюсь на вашу помощь, спасибо.
Bracho1994 вне форума
Старый 11.04.2013, 02:35   #2
viks1
человек
Форумчанин
 
Аватар для viks1
 
Регистрация: 11.05.2009
Сообщений: 517
По умолчанию

Код:

var  a, b, c, d, m, g, l: real;
begin
 a:=strtofloat (Edit1.Text);
 b:=strtofloat (Edit2.Text);
 c:=strtofloat (Edit3.Text);
 d:=strtofloat (Edit4.Text);
m:=a;
if m>b then m:=b else
if m>c then m:=c else
if m>d then m:=d else
begin
l:= a + b + c + d;
 label4.caption:=floattostr(l);
end;
 g:= SQR(m);
 label1.caption:=floattostr(g);
viks1 вне форума
Старый 11.04.2013, 02:50   #3
Bracho1994
Пользователь
 
Регистрация: 10.04.2013
Сообщений: 22
По умолчанию

Цитата:
Сообщение от viks1 Посмотреть сообщение
Код:

var  a, b, c, d, m, g, l: real;
begin
 a:=strtofloat (Edit1.Text);
 b:=strtofloat (Edit2.Text);
 c:=strtofloat (Edit3.Text);
 d:=strtofloat (Edit4.Text);
m:=a;
if m>b then m:=b else
if m>c then m:=c else
if m>d then m:=d else
begin
l:= a + b + c + d;
 label4.caption:=floattostr(l);
end;
 g:= SQR(m);
 label1.caption:=floattostr(g);
Что-то ты тут намудрил.. Вообще не получается то, что должно получится. То квадрат вычисляет, хотя условия a>b>c>d нет, то и суммирует и квадрат вычисляет, то вообще ничего не хочет делать
Bracho1994 вне форума
Старый 11.04.2013, 03:37   #4
viks1
человек
Форумчанин
 
Аватар для viks1
 
Регистрация: 11.05.2009
Сообщений: 517
По умолчанию

начнем с того что тебе сначала надо узнать какое число самое наименьшее
И от него уже плясать

я пишу тебе реализацию
жди
viks1 вне форума
Старый 11.04.2013, 03:55   #5
viks1
человек
Форумчанин
 
Аватар для viks1
 
Регистрация: 11.05.2009
Сообщений: 517
По умолчанию

Код:
procedure TForm1.Button1Click(Sender: TObject);

var
 a, b, c, d, m: real;
begin
 a:=strtofloat (Edit1.Text);
 b:=strtofloat (Edit2.Text);
 c:=strtofloat (Edit3.Text);
 d:=strtofloat (Edit4.Text);
  if (a>b)and(a>c)and(a>d) then
    begin
    m:=a;
    if m>b then m:=b;
    if m>c then m:=c;
    if m>d then m:=d;
    m:=sqr(m);
    end
     else
         m:=a+b+c+d;
 label1.caption:=floattostr(m);
end;
проверил, работает
viks1 вне форума
Старый 11.04.2013, 05:57   #6
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

если
Цитата:
a>b>c>d
то наименьшим будет d как бы =>
Код:
if (a>b) and(b>c) and (c>d) then label.caption:=floatTostr(sqr(d))
else label.caption:=floatTostr(a+b+c+d);
Цитата:
я, но на этот раз уже стал немного вникать.
уже во всю разбираться пора начинать
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума
Старый 11.04.2013, 09:14   #7
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Mad_Cat
если a>b>c>d, то наименьшим будет d как бы =>
Код:
if (a>b) and(b>c) and (c>d) then label.caption:=floatTostr(sqr(d))
else label.caption:=floatTostr(a+b+c+d);
Ай, красавело!! В точку! Позволю себе для автора темы расписать ваше решение ПОЛНОСТЬЮ!

Код:
var  a, b, c, d : real;
begin
 a:= StrToFloat(Edit1.Text);
 b:= StrToFloat(Edit2.Text);
 c:= StrToFloat(Edit3.Text);
 d:= StrToFloat(Edit4.Text);

 if (a>b) and(b>c) and (c>d) 
  then label4.caption:= 'Квадрат min = ' + FloatToStr(sqr(d))
  else label4.caption := 'Сумма = ' + FloatToStr(a+b+c+d);

end;
Serge_Bliznykov вне форума
Старый 11.04.2013, 19:48   #8
Bracho1994
Пользователь
 
Регистрация: 10.04.2013
Сообщений: 22
По умолчанию

Цитата:
Сообщение от Mad_Cat Посмотреть сообщение
уже во всю разбираться пора начинать
Вот потихоньку не спеша вникаю. Если бы только информатика задавалась, а так еще параллельно надо делать начертательную геометрию, англ(углубленное изучение), математику, физику, историю учить
Ладно, что я жалуюсь..


Ох это чувство, когда смотришь на готовое решение и думаешь : " Почему я сам до этого не додумался?"!!
Спасибо всем большое
Bracho1994 вне форума
Закрытая тема


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задача в делфи octik Помощь студентам 3 20.11.2012 02:53
задача в Делфи Игорь Молчанов Помощь студентам 1 19.02.2011 16:10
Задача в Делфи stscolt Помощь студентам 5 08.05.2009 18:31
Задача по Делфи IGoDoVaN Фриланс 7 12.06.2008 12:42
Задача на Делфи evrey Общие вопросы Delphi 3 09.06.2008 09:01