Форум программистов, компьютерный форум, киберфорум
Наши страницы
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.81/21: Рейтинг темы: голосов - 21, средняя оценка - 4.81
Vadim48
0 / 0 / 0
Регистрация: 17.07.2012
Сообщений: 5
1

Найти все трёхзначные натуральные числа, сумма цифр которых равна заданному числу N

19.07.2012, 17:26. Просмотров 3985. Ответов 3
Метки нет (Все метки)

Помогите, пожалуйста, решить задачу...Третий час бьюсь. Вот более полный текст:
Вывести на печать все трёхзначные натуральные числа, сумма цифр которых равна заданному числу N. (Операции div и mod не использовать.)
Вот код, который написал я (использовал Lazarus). Очевидно, что я что то намудрил или вообще не с той стороны подошел ввиду своей тупости.
Pascal
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
var
   n,i,i1,i2,m,z: real;
begin
     writeln ('Vvedite chislo n - summu cifr 3-znachnogo chisla ');
     readln (n);
     if n<=0
        then
            begin
              writeln ('Chislo N dolzhno byt bolzshe 0 ');
            end;
     if frac(n)<>0
        then
            begin
              writeln ('Chislo N dolzhno byt celym ');
            end;
     m:=99;
     repeat
           m:=m+1;
           i:=m/100;
           i:=int(i);
           i1:=m/10;
           i1:=int(i1);
           i1:=i1/10;
           i1:=frac(i1);
           i2:=m/10;
           i2:=frac(i2);
           z:=i+i1+i2;
           if z=n
              then
                  writeln (m:2:0);
     until m>=999;
     readln;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.07.2012, 17:26
Ответы с готовыми решениями:

найти все трёхзначные числа, такие у которых сумма цифр равна A, а само число делиться на B.
Помогите пожалуйста решить задачку :-) найти все трёхзначные числа, такие у...

Найти все трехзначные числа, сумма квадратов цифр которых кратна заданному числу m
Задача: Найти все трехзначные числа сумма квадратов цифр, которых кратна...

Помогите решить - найти в массиве элементы, сумма цифр которых равна заданному числу.
помогите. В заданном цилечисельному массиве А со случайными элементами из...

Найти наименьшее и наибольшее натуральные числа, произведение цифр в которых равно заданному числу.
привет всем . у нас имееться числа количество чисел состояшие из 2,3,5,7...

Найти те числа интервала натуральных чисел, суммы цифр которых равна заданному числу
Дан натуральный отрезок чисел . Найти те числа этого отрезка, суммы цифр...

3
Reveng
420 / 420 / 338
Регистрация: 25.06.2012
Сообщений: 666
Завершенные тесты: 1
19.07.2012, 18:07 2
Протестируй.. Вроде бы всё верно выдаёт..

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
uses crt;
var
   n, i : integer;
BEGIN
ClrSCr;
Write('N = ');
Readln(n);
for i := 100 to 999 do
 if(round(frac(i/10)*10) + trunc(i/100) + round(frac(trunc(i/10)/10)*10)) = N  then
  Write(i, ' ');
Readln;
END.
0
КонецСвета
Почетный модератор
7929 / 3900 / 2464
Регистрация: 30.10.2011
Сообщений: 5,379
19.07.2012, 18:11 3
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
uses crt;
var s,d,e,n: byte;
begin
repeat
write('n ([1;27])='); readln(n);
until n in [1..27];
for s:=1 to 9 do
    for d:=0 to 9 do
        for e:=0 to 9 do
            if s+d+e=n then write(s,d,e,' ':5);
readln;
end.
0
Vadim48
0 / 0 / 0
Регистрация: 17.07.2012
Сообщений: 5
19.07.2012, 18:26  [ТС] 4
КонецСвета,
Reveng,
спасибо, но я забыл оговорить, что мне нужно решить эти задачи, не применяя счетчиков, так как я еще не дошел до этой темы.
кстати, я уже решил задачу таким способом:
Pascal
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
var
   n,i,i1,i2,m,z: integer;
begin
     writeln ('Vvedite chislo n - summu cifr 3-znachnogo chisla ');
     readln (n);
     if n<=0
        then
              writeln ('Chislo N dolzhno byt bolzshe 0 ');
     if frac(n)<>0
        then
              writeln ('Chislo N dolzhno byt celym ');
     m:=0;
     i:=0;
     repeat
           m:=m+100;
           i:=i+1;
           i1:=-1;
           repeat
                 begin
                      i1:=i1+1;
                      i2:=-1;
                      repeat
                            begin
                                 i2:=i2+1;
                                 z:=i+i1+i2;
                                 if z=n
                                    then
                                        writeln (i,i1,i2);
                            end;
                      until i2>=9;
                 end;
           until i1>=9;
     until i>=9;
     readln;
end.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2012, 18:26

Вывод на экран всех двухзначных чисел, сумма цифр которых равна заданному числу
Составить программу вывода на экран всех двухзначных чисел, сумма цифр которых...

Определить количество трехзначных натуральных чисел, сумма цифр которых равна заданному числу N
Определить количество трехзначных натуральных чисел, сумма цифр которых равна...

Определить количество трехзначных натуральных чисел, сумма цифр которых равна заданному числу N
сост прогу Определить кол-во трехзначных натуральных чисел, сумма цифр...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru