Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
3 / 3 / 1
Регистрация: 19.03.2012
Сообщений: 114
1

Мне нужно сделать так что кнопка вычисления смотрела сумму и вес и потом выдавала разряд, делать надо с условием.

28.11.2012, 21:47. Показов 864. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Делаю проект по спорту. Помогите сделать простенькое вычисление. А то запутался совсем. Мне нужно сделать так что кнопка вычисления смотрела сумму и вес и потом выдавала разряд, делать надо с условием.
Вот я сделал так а дальше как, не врубаюсь

Delphi
1
2
3
4
5
6
7
8
begin
begin if k<=44 then
begin
if (s<=200) and (s>185) then
showmessage('I юношеский')
else if  s<=185 then showmessage('II razr') 
else if s<=170 then showmessage('3 razr');
end
а вот почему третье не видет и не выполняет?
Вот таблица сама
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.11.2012, 21:47
Ответы с готовыми решениями:

Разбираюсь с outlook. что не так? код не мой но по сути должен делать что мне надо, но он ничего не делает
Function ListOLInbox() 'спиcок писем в папке &quot;входящие&quot; Dim OL_App As Outlook.Application Dim...

Например мне надо найти сумму чисел от 20 до 100 с условием что у чисел конец 2
Как проверить последний символ на то является он 2,4,8 и провести операцию?

Что мне делать потом, как лечить флешку
умоляю, умники програмисты помогите чайнику. собираюсь флешку нести для &quot;вставления&quot; в комп,...

Что мне делать или что надо знать перед тем как начать изучение яз.программирования С/С++?
Я пока вообще не умею программировать.Сначала хотел с бейсика или паскаля.Но многие советуют...

16
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
28.11.2012, 22:38 2
А что это за куча бегинов вначале? Побольше кусок выложи. Нифига не понятно.
0
3 / 3 / 1
Регистрация: 19.03.2012
Сообщений: 114
28.11.2012, 22:59  [ТС] 3
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
procedure TForm11.BitBtn2Click(Sender: TObject);
begin if k<=44 then
begin
if s<175 then
showmessage('III-юношеский')
else if s=175 then
showmessage('III-юношеский')
else if s<185 then
showmessage('II-юношеский')
else if s=185 then
showmessage('II-юношеский')
else if s<200 then
showmessage ('I-юношеский')
else if s=200 then
showmessage ('I-юношеский')
end;
она работает, теперь надо добавить вторую категорию, добавил так же как и первую, не работает...
0
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
28.11.2012, 23:11 4
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
procedure TForm11.BitBtn2Click(Sender: TObject);
begin
  case k of
  0..44:
    if s<=175 then
      showmessage('III-þíîøåñêèé')
    else
      if s<=185 then
        showmessage('II-þíîøåñêèé')
      else
        if s<=200 then
          showmessage ('I-þíîøåñêèé');
  45..48:
    .....
  49..52:
    .....
  .....
end;
end;
0
3 / 3 / 1
Регистрация: 19.03.2012
Сообщений: 114
28.11.2012, 23:19  [ТС] 5
Не работает 45...48: и т.д. не реагирует...
Можно сделать через StringGrid, только понятие не имею как...
0
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
28.11.2012, 23:25 6
А ты код туда прописал?
Delphi
1
2
3
4
5
6
7
8
9
10
11
  45..48:
    if s <= 180 then
      showmessage('III-юношеский')
    else
      if s<=195 then
        showmessage('II-юношеский')
      else
        if s<=210 then
          showmessage ('I-юношеский')
        else
          if .....
0
3 / 3 / 1
Регистрация: 19.03.2012
Сообщений: 114
28.11.2012, 23:30  [ТС] 7
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
procedure TForm11.BitBtn2Click(Sender: TObject);
begin
  case k of
  0..44:
    if s<=175 then
      showmessage('III-юношеский')
    else
      if s<=185 then
        showmessage('II-юношеский')
      else
        if s<=200 then
          showmessage ('I-юношеский');
  45..48:
 if s<=180 then
      showmessage('III-юношеский')
    else
      if s<=195 then
        showmessage('II-юношеский')
      else
        if s<210 then
          showmessage ('I-юношеский');
          end;
  {49..52:
    .....
  .....}
end;
0
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
28.11.2012, 23:37 8
И что, так не работает? Чему k и s равны?
0
3 / 3 / 1
Регистрация: 19.03.2012
Сообщений: 114
28.11.2012, 23:45  [ТС] 9
Он так же не реагирует на 3-ую условию. Не работает.
0
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
28.11.2012, 23:47 10
Как ты это определяешь? Чему k и s равны?
0
3 / 3 / 1
Регистрация: 19.03.2012
Сообщений: 114
29.11.2012, 00:01  [ТС] 11

сообщение не выходит...(

Добавлено через 8 минут
Вот на скрине пишу k=44, s=сумма чисел=50+50+100=200
0
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
29.11.2012, 08:47 12
Судя по таблице условия немного подругому задаваться должны.
Можно так сделать:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
procedure TForm11.BitBtn2Click(Sender: TObject);
begin
  case k of
  0..44:
    case s of
      0..174: showmessage('Íàäî áû åùå ïîäêà÷àòüñÿ...');
    175..184: showmessage('III-þíîøåñêèé');
    185..199: showmessage('II-þíîøåñêèé');
    else      showmessage('I-þíîøåñêèé');
    end;
  45..48:
    case s of
      0..179: showmessage('Íàäî áû åùå ïîäêà÷àòüñÿ...');
    180..194: showmessage('III-þíîøåñêèé');
    195..209: showmessage('II-þíîøåñêèé');
    210..234: showmessage('I-þíîøåñêèé');
    235..254: showmessage('III');
    255..294: showmessage('II');
    else      showmessage('I');
    end;
  {49..52:
    .....
  .....}
end;
end;
0
3 / 3 / 1
Регистрация: 19.03.2012
Сообщений: 114
29.11.2012, 09:44  [ТС] 13
Сейчас все почти работает, только теперь когда я ввожу условие 3-го или 2-го разряда, а потом 1 рязряд, и после него хочу опять выполнить условие 3-го разряда, то он потом пишет, что это тоже 1-ый разряд.
Короче, ввожу 2-ой, правильно, потом 3-ий тоже правильно, а потом 1-ый правильно и после него хоть 2-ой и 3-ий, он показывает сообщение 1-го разряда.
0
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
29.11.2012, 10:32 14
А ты новые значения из Едитов переменным s и k присваиваешь? И как это в коде выглядит?
0
3 / 3 / 1
Регистрация: 19.03.2012
Сообщений: 114
29.11.2012, 10:38  [ТС] 15
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
procedure TForm11.Edit1Change(Sender: TObject);
begin
k:=strtoint(edit1.Text);
end;
 
procedure TForm11.Edit2Change(Sender: TObject);
begin
s:=strtoint(Edit2.text);
end;
 
procedure TForm11.Edit3Change(Sender: TObject);
begin
s:=s+strtoint(Edit3.text);
end;
 
procedure TForm11.Edit4Change(Sender: TObject);
begin
s:=s+strtoint(Edit4.text);
end;
0
Модератор
3490 / 2613 / 741
Регистрация: 19.09.2012
Сообщений: 7,974
29.11.2012, 10:47 16
Понятно...
Лучше это вообще убрать, и сделать так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
procedure TForm11.BitBtn2Click(Sender: TObject);
begin
  k := strtoint(edit1.Text);
  s := strtoint(Edit2.text) + strtoint(Edit3.text) + strtoint(Edit4.text);
  case k of
  0..44:
    case s of
      0..174: showmessage('Надо бы еще подкачаться...');
    175..184: showmessage('III-юношеский');
    185..199: showmessage('II-юношеский');
    else      showmessage('I-юношеский');
    end;
  45..48:
    case s of
      0..179: showmessage('Надо бы еще подкачаться...');
    180..194: showmessage('III-юношеский');
    195..209: showmessage('II-юношеский');
    210..234: showmessage('I-юношеский');
    235..254: showmessage('III');
    255..294: showmessage('II');
    else      showmessage('I');
    end;
  {49..52:
    .....
  .....}
end;
end;
т.к. до нажатия кнопки все равно никаких вычислений не производится.
1
3 / 3 / 1
Регистрация: 19.03.2012
Сообщений: 114
29.11.2012, 11:14  [ТС] 17
Все работает, спасибо! Пока все проверю и протестирую, отпишусь еще.
0
29.11.2012, 11:14
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.11.2012, 11:14
Помогаю со студенческими работами здесь

Программа Дерево решений. Уже написана на Delphi. А мне надо на PascalABC. Что делать с модулями?
program DoP_777; {$APPTYPE CONSOLE} {$R *.res} uses System.SysUtils, Math; Type

Как мне сделать так чтобы не надо было указывать полный путь
Добрый день , форумчане. Как мне сделать так чтобы не надо было указывать полный путь ? Как...

Что мне сделать что бы работало как надо
Почему повторяется пункт 1. Что мне сделать что бы шел пункт 2 до того что i_EnemyHealth &lt;= 0? ...

Если создавать БД на SQL server 2008 надо делать все на одном компьютере, или же можно сделать на другом потом через флешку копировать
Такой вопрос ребя! Если создавать БД на SQL server 2008 надо делать все на одном компьютере, или же...

Добрый вечер. move_uploaded_file делает не совсем то, что мне нужно, что я сделал не так?
Хочу сохранить файл в папку uploads, лежащую в корневой директории сайта. Но вместо этого файл (мп3...

Что у меня ту не так? Мне надо первый и последний элемент массива покрасить в бюрюзовый цвет
program Alex; uses crt; var N: array of integer; i:integer; begin ClrScr; Randomize; for...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru