Читатели като вас помагат в подкрепа на MUO. Когато правите покупка чрез връзки на нашия сайт, ние може да спечелим комисионна за партньор. Прочетете още.

Номерът на Армстронг е ключова концепция в областта на криптирането и декриптирането за сигурност на данните.

Общата концепция за обработка на цифрите на число е фундаментална техника. Можете да решите много задачи с този подход, като сумиране на цифри, получаване на произведението на цифри, преброяване на цифри и обръщане на число.

Но какво е число на Армстронг и как да го тествате?

Какво е число на Армстронг?

Числото на Армстронг е число, чиято сума от кубовете на неговите цифри е равна на самото число. Например 153 е число на Армстронг. Ако вземете цифрите на 153 поотделно и ги кубирате:

(1 × 1 × 1) + (5 × 5 × 5) + (3 × 3 × 3)

След това добавете резултатите:

1 + 125 + 27

Ще получите 153, същото като оригиналното число.

Алгоритъм за намиране на число на Армстронг

Писането на алгоритъм е първата стъпка към внедряването на всяка програма. Можете да използвате алгоритъма като справка, за да напишете псевдокод, след което да го внедрите, като използвате желания език за програмиране. Алгоритъмът ви дава точната поредица от инструкции, които да следвате, като елиминира логически грешки и прави внедряването по-лесно.

instagram viewer

Ето алгоритъма за намиране дали дадено число е на Армстронг или не:

  1. Декларирайте променливи sum, temp, n, r
  2. Вземете стойността на n от потребителя
  3. Инициализирайте променлива sum на 0 и вземете резервно копие на n като temp = n
  4. Повторете стъпки 5 - 7, докато n > 0
  5. r = n % 10
  6. сума = сума + куб на всяка цифра (r × r × r)
  7. n = n / 10
  8. Ако сумата е равна на temp, покажете „Числото е число на Армстронг“
  9. В противен случай покажете „Числото не е число на Армстронг“

Псевдокод за прилагане на алгоритъма на Армстронг

Псевдокодът може да бъде полезна стъпка при проектирането на изпълнението на алгоритъм. Писането на псевдокод ви помага лесно да го конвертирате в код на всеки език за програмиране. Ето псевдокода за внедряване на номера на Армстронг:

Програмата Армстронг в C

Наблюдавайте псевдокода по-горе и преобразувайте всеки оператор в C код.

Започнете с импортиране stdio.h за извършване на входни и изходни операции. Декларирайте основен функция и започнете да прилагате логиката на програмата. Използвайте н за съхраняване на въведеното число, r за съхраняване на отделните цифри на номера, сума за съхраняване на сумата от кубовете на цифрите и темп за съхраняване на копие на номера.

Използвай printf функция, за да помолите потребителя да въведе число. Използвай сканиране функция за четене на числото и съхраняването му в променлива н. е спецификаторът на десетичен формат за приемане на цяло число като вход.

Изчистете всяка ненужна стойност, като инициализирате sum като нула и вземете резервно копие на n като temp.

#включи <stdio.h>

вътросновен()
{
вътр n, r, сума, темп;
printf("Моля, въведете номер: ");
scanf("", &н);
сума = 0; температура = n;

Декларирайте a докато цикъл, който работи, докато числото стане нула или по-малко. Вътре в цикъла има процес от три стъпки, който можете да използвате в различни други задачи по програмиране. Трите стъпки са:

  1. Получете отделната цифра на числото, като вземете модула на числото с 10. Когато разделите произволно число с 10 като цяло, остатъкът е самата последна цифра. Например, когато разделите 153 на 10, целочисленият резултат е 15, а модулът е 3.
  2. Когато имате индивидуалната цифра, можете да извършите желаната от вас операция. За да намерите число на Армстронг, желаната операция е сумата от кубовете на цифрите на числото. Вземете куба на цифрата r и го добавете към променливата сума.
  3. Елиминирайте последната цифра от числото, като я разделите на 10. При деление на 10 получавате частното, в този случай 15.
докато (n > 0) {
r = n % 10;
сума = сума + (r * r * r);
n = n / 10;
}

Проверете дали получената сума е равна на първоначалното число. Ако са равни, числото наистина е число на Армстронг, в противен случай не е.

ако (temp == сума)
printf("Числото е число на Армстронг\n");
друго
printf("Числото не е число на Армстронг\n");

връщане0;
}

Други приложения на общия алгоритъм

Чрез промяна на стъпка две от логиката в три стъпки, видяна по-горе, можете да внедрите различни програми.

1. Сума, произведение на цифрите на числото

За да получите сумата от цифри на число, просто заменете реда с:

сума = сума + r;

За продукт декларирайте променливата prod като 1 и заменете сбора със символ за умножение:

продукт = продукт * r;

2. Брой цифри на числото

Да се брои цифрите на числото, просто инициализирайте броя на променливата до нула, пропуснете стъпка едно и я увеличавайте, докато n стане равно на нула. Изпълнението на цикъла ще изглежда така:

докато (n > 0) {
брой++;
n = n / 10;
}

3. Обратна страна на число, палиндромно число

За да обърнете число, инициализирайте променлива rev до едно и я добавете след умножаване по десет:

rev = (rev * 10) + r;

След като получите обратната страна на число, сравнете го с копието на самото оригинално число. Ако обратното число е равно на самото число, това е палиндромно число.

4. Най-малката и най-голямата цифра на числото

Инициализирайте променлива min като девет и я сравнете с цифрата, извлечена от стъпка едно, за да намерите най-малката цифра от число. Можете да го реализирате като:

ако (р < min) {
min = r;
}

По същия начин инициализирайте променлива max с нула и я сравнете с извлечената цифра, за да намерите най-голямата цифра от число. Можете да го реализирате като:

ако (р > max) {
max = r;
}

Ето как можете да намерите най-голямата и най-малката цифра на числото.

5. Специални числа

Има много други числа, като число на Армстронг, които можете да изчислите. Те включват неоново число, автоморфно число, число на Кришнамурти, число на Бъз, съвършено число, приятелско число и двойно просто число.

Програмиране и математика

Математиката се използва широко в програмирането. Двоичната математика е ядрото на програмирането, тъй като целият софтуер, който използвате днес, е комбинация от цифрите нула и едно. Всички данни, с които работите, се съхраняват в двоичен формат. Линейната алгебра се използва в приложения за машинно обучение, графични алгоритми, квантови изчисления и др.

Изчислението, дискретната математика и статистиката се използват широко при решаване на проблеми и проектиране на алгоритми. Математиката подобрява изчислителните ви умения и е съществена част от програмирането.