Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 22.04.2010, 01:00
emiljohn emiljohn вне форума
Прохожий
 
Регистрация: 22.04.2010
Сообщения: 2
Репутация: 10
По умолчанию Составление программы в Delphi

Нужно составить программу (без использования массивов, строк, процедур), в которой с клавиатуры вводится (все вводимые значения имеют тип integer) три числа, вывести их на экран в порядке возрастания суммы цифр в числе.
Задали на дом, а я не знаю как это сделать, эти лекции пропустил( Помогите плиз. Заранее спасибо!
Ответить с цитированием
  #2  
Старый 22.04.2010, 02:17
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,096
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Вообще, программы не составляют, а пишут. Большинство считает, что это такой вид творчества/искусства.

А теперь по существу.
Ну совсем без процедур как-то скучно. Но давай попробуем:

Код:
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
program prg;
 
{$APPTYPE CONSOLE}
 
var
  S1, S2, S3 : Integer;
  V1, V2, V3 : Integer;
  CH1,CHI2, CH3 : Integer;
 
begin
  WriteLn('Введите три целых числа');
  Write('Число 1'); ReadLn(V1);
  Write('Число 2'); ReadLn(V2);
  Write('Число 3'); ReadLn(V3);
 
  CH1 := V1;
  S1 := 0;
  While CH1 >= 10 Do
     Begin
        S1 := S1 + (CH1 mod 10);
        CH1 := CH1 div 10;
    End;
 
  CH2 := V2;
  S2 := 0;
  While CH2 >= 10 Do
     Begin
        S2 := S2 + (CH2 mod 10);
        CH2 := CH2 div 10;
    End;
 
  CH3 := V3;
  S3 := 0;
  While CH3 >= 10 Do
     Begin
        S3 := S3 + (CH3 mod 10);
        CH3 := CH3 div 10;
    End;
 
  WriteLn('Числа в порядке возрастрания:');
 
  If (S1 < S2) And (S1 < S3)
    Then WriteLn(S1)
    Else
        If (S2 < S1) And (S2 < S3)
         Then WriteLn(S2)
         Else WriteLn(S3);
 
  If ((S1 > S2) And (S1 < S3)) Or ((S1 > S3) And (S1 < S2))
    Then WriteLn(S1)
    Else
      If ((S2 > S1) And (S1 < S3)) Or ((S2 > S3) And (S2 < S1))
        Then WriteLn(S2)
        Else WriteLn(S3);
 
  If (S1 > S2) And (S1 > S3)
    Then WriteLn(S1)
    Else
        If (S2 > S1) And (S2 > S3)
         Then WriteLn(S2)
         Else WriteLn(S3);
end.

Вот как-то так.

ЗЫ. Сделал, потому что было интересно выполнить задание без использования массивов, строк, процедур и т.д. В следующий раз перед тем как помогать ждем вашего кода.
Ответить с цитированием
  #3  
Старый 24.04.2010, 00:16
emiljohn emiljohn вне форума
Прохожий
 
Регистрация: 22.04.2010
Сообщения: 2
Репутация: 10
По умолчанию

Спасибо большое за помощь! А про составление программы-это так в задании написано было, я и написал)
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 04:54.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025