IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> задача про Число Армстронга, помогите исправить ошибку
Наташка
сообщение 4.05.2007 10:20
Сообщение #1


студентка )


Группа: Пользователи
Сообщений: 4
Пол: Женский
Реальное имя: Натали

Репутация: -  0  +


Задача -
Число Армстронга – такое число из k цифр, для которого сумма k-х степеней его цифр равна самому числу, например: 153=13+53+33. Найти все числа Армстронга не более чем из четырех цифр.

Что у меня неправильно?

Код
uses crt;
Const
    MIN_DIGITS = 1;
    MAX_DIGITS = 4;
Var
    power: array [0..9] of integer;
    pow10: integer;
    num: integer;
    mn: integer;
    mx: integer;
    v1: integer;
    v2: integer;
    i: integer;
    j: integer;
    k: integer;
Begin


  for k:=MIN_DIGITS to MAX_DIGITS do
  begin
    for i:=0 to 9 do
    begin
        power[i]:= pow(i,k);
    end;

    mn := pow(10,k-1);
    mx := mn*10;

    for v1:=mn to mx-1 do
    begin
      v2    := 0;
      pow10 := pow(10,k);
      num   := v1;
      while pow10 <> 1 do
      begin
        pow10 := pow10 div (10);
        j     := num / pow10;
        num   := num - (j*pow10);
        v2    := v2 + (power[j]);
        if v2 > v1 then break;
      end;
      
      if v2=v1 then writeln(v1);
    end;
  end;

End.


заранее спасибо

Сообщение отредактировано: Наташка - 4.05.2007 10:21
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 6:45
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"