Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.12.2013, 23:11   #1
Krab_npopok
Пользователь
 
Регистрация: 25.12.2013
Сообщений: 11
По умолчанию С++. Опеределить, Автоморфное ли число.

Дано натурально число от 1 до 999. Определить, является ли это число Автоморфным.
Автоморфным называется число, которое равно последним цифрам своего квадрата (5->25). Использовать деление по модулю и деление нацело.
Krab_npopok вне форума Ответить с цитированием
Старый 26.12.2013, 23:31   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,341
По умолчанию

Что вызывает затруднения?
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 26.12.2013, 23:33   #3
Krab_npopok
Пользователь
 
Регистрация: 25.12.2013
Сообщений: 11
По умолчанию

Я понял что надо определить квадрат этого самого числа и сравнить у полученного числа последние разряды с первоначальным. Затруднение в непонимании как высчитать разряды.
Krab_npopok вне форума Ответить с цитированием
Старый 26.12.2013, 23:36   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну допустим так:
Код:
for(int i=1;i<1000;i++) if((i*i)%10==i) printf("%d",i);
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 26.12.2013, 23:39   #5
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,341
По умолчанию

Код:
bool test(int a)
{
    int p = a * a;
    while (a && p % 10 == a % 10) {
        p /= 10;
        a /= 10;
    }
    return (a == 0);
}
Этой функцией тестируете каждое требуемое число и выводите его, если надо.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 26.12.2013, 23:46   #6
Krab_npopok
Пользователь
 
Регистрация: 25.12.2013
Сообщений: 11
По умолчанию

Всем спасибо, щас буду тестировать. Отпишусь как все пройдет
Krab_npopok вне форума Ответить с цитированием
Старый 27.12.2013, 05:10   #7
Krab_npopok
Пользователь
 
Регистрация: 25.12.2013
Сообщений: 11
По умолчанию

Фууух... Только сейчас закончил решать эту задачу. В плане вычислений все правильно, а вот в плане оформления узнаю уже через пару часов на экзамене
Всем ОГРОМНОЕ ЧЕЛОВЕЧЕСКОЕ СПАСИБО

Код:
#include <iostream>
#include <cmath>
using namespace std;

void main ()
{
	int n;
	int i = 0;
	setlocale (0, "Russian");
	do
	{
	cout << " Введите число: " <<  endl; cin >> n;
	}while (n < 1 || n > 999);
    int p = n;
	while ( p >= 1 )
        {
            p = p / 10;
            i++;
        }
	int a = n * n;
	int f = pow (10.0, i);
	int b = a % f;
	if (n == b) cout << "Число является АВТОМОРФНЫМ" << endl;
	else cout << "Число не является АВТОМОРФНЫМ" << endl;
	system ("pause");
}
Krab_npopok вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как из ячейки содержащей текст и число извлечь только число? АННА-ЕАО Microsoft Office Excel 35 02.12.2016 23:16
Дано трехзначное число. Если в сумме его цифр присутствует число 7,то число записать в зеркальном виде ( Паскаль ) Эля777 Помощь студентам 5 22.04.2013 23:23
Написать программу, которая за меньшее число ходов отгадывает загаданное число gomz007 Помощь студентам 16 08.11.2009 12:57
Вывести число, предшествующее первому отрицательному и число, следующее за последним отрицательным Rid Паскаль, Turbo Pascal, PascalABC.NET 4 22.12.2008 16:50
Ввести число N и определить делится ли оно без остатка на число M (VBA) Ivanich Microsoft Office Excel 7 24.04.2008 19:43