|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
02.03.2011, 22:43 | #1 |
Форумчанин
Регистрация: 04.01.2011
Сообщений: 125
|
все натуральные числа не превосходящие заданное число N и равное сумме кубов своих цифр.
Найти все натуральные числа не превосходящие заданное число N и равное сумме кубов своих цифр.
ПАСКАЛЬ МОЖЕТЕ ПОДСКАЗАТЬ ХОД РЕШЕНИЯ. ЧТО найти надо.. просто вообще без понятия как делать. если кто то знает код , то буду рада. Зарание спасибо |
02.03.2011, 23:00 | #2 |
Пользователь
Регистрация: 02.03.2011
Сообщений: 24
|
Наверное имелось ввиду: Найти все натуральные числа не превосходящие заданное число N и равные сумме кубов своих цифр. Смысл в том, что нужно выбрать такие натуральные(не отрицательные) числа, которые меньше числа N, и одновременно равны сумме своих цифр, возведённых в куб (Пример: трёхзначное число abc, где а - разряд сотен, b - разряд десятков, и c - разряд единиц. Нужно найти: abc=(a^3)+(b^3)+(c^3))
|
02.03.2011, 23:02 | #3 |
Форумчанин
Регистрация: 04.01.2011
Сообщений: 125
|
Да. Спасибо я поняла.
Но у меня еще один вопрос. как можно например заданное число 4567 расписать по а, б, с я просто не знаю. |
02.03.2011, 23:03 | #4 |
Пользователь
Регистрация: 02.03.2011
Сообщений: 24
|
Выполняется двумя вложенными циклами: Первый перебирает числа до N, а второй разбирает каждое число на цифры и проверяет условие.
|
02.03.2011, 23:04 | #5 |
Пользователь
Регистрация: 02.03.2011
Сообщений: 24
|
Не помню как они разбираются. Очень давно не программировал на Паскале.
|
02.03.2011, 23:07 | #6 |
Пользователь
Регистрация: 02.03.2011
Сообщений: 24
|
Как вариант: Сначала взять остаток от деления на 10. Для следующего: остаток от деления на 100, делённый нацело на 10 и т.д. Не думаю, что это самый эффективный способ.
|
02.03.2011, 23:08 | #7 |
Форумчанин
Регистрация: 04.01.2011
Сообщений: 125
|
Єхх. мі такого точно не учили..
|
02.03.2011, 23:11 | #8 |
Пользователь
Регистрация: 02.03.2011
Сообщений: 24
|
На сколько я помню, a mod b - остаток от деления a на b, a div b - деление нацело.
|
02.03.2011, 23:15 | #9 |
Форумчанин
Регистрация: 04.01.2011
Сообщений: 125
|
Да да
вот я написала. так?? program tak; var a,b,c,ch : integer; begin write ('Vvedite zadannoe chislo'); write (ch); a:= Ch mod 1000; b:= ch mod 100; c:=ch mod 10; for i := 1 to 10000 do if abc=(a*a*a)+(b*b*b)+(c*c*c) then begin writeln (abc); else writeln |
02.03.2011, 23:24 | #10 |
Пользователь
Регистрация: 02.03.2011
Сообщений: 24
|
Неа Правильно присваивается только с. Нужно b:=(ch mod 100) div 10; a:=(ch mod 1000) div 100; и т.д.
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Даны натуральные числа n и m. Получить сумму m последних цифр числа n | pahanzona | Microsoft Office Excel | 11 | 27.02.2011 02:17 |
2. Совершенным числом называется число, равное сумме всех делителей, меньших, чем оно само. Например, 28= | Sos1 | Помощь студентам | 7 | 08.06.2010 01:08 |
найти все натуральные числа,не превосходящие заданного n | fredperry1661 | Помощь студентам | 1 | 02.02.2010 17:10 |
вводим два числа, получить все меньшие n натуральные числа, квадрат суммы цифр которых равен m | Sparky | Помощь студентам | 2 | 22.11.2009 21:59 |