Форум программистов, компьютерный форум CyberForum.ru

Найти все числа в интервале от 1 до 1000, совпадающие с последними разрядами своих квадратов - C++

Восстановить пароль Регистрация
 
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
12.06.2010, 08:51     Найти все числа в интервале от 1 до 1000, совпадающие с последними разрядами своих квадратов #1
Помогите решить задачу.
Найти все числа в интервале от 1 до 1000, совпадающие с последними разрядами своих квадратов, тоесть:
5(в квадрате) = 25, 25 ( в квадрате) = 625

Заранее спасибо
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.06.2010, 08:51     Найти все числа в интервале от 1 до 1000, совпадающие с последними разрядами своих квадратов
Посмотрите здесь:

C++ Найти все трехзначные числа, равные сумме кубов своих цифр
Необходимо найти все простые числа в интервале C++
Существуют натуральные числа равные сумме кубов своих цифр. Найдите такие числа в заданном интервале C++
C++ Найти все двухзначные (трехзначные) числа, которые совпадают с последними цифрами своих квадратов
Ввести натуральное число n. Среди чисел 1,.,n найти все такие числа, запись которых совпадает с последними цифрами C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
12.06.2010, 09:42     Найти все числа в интервале от 1 до 1000, совпадающие с последними разрядами своих квадратов #2
C++
1
2
3
for (int i = 1; i <= 1000; i++)
   if (i%10 == (i*i)%10)
      cout << i << " ";
DanielDefo
5 / 5 / 0
Регистрация: 13.09.2009
Сообщений: 225
12.06.2010, 10:05  [ТС]     Найти все числа в интервале от 1 до 1000, совпадающие с последними разрядами своих квадратов #3
спасибо

Добавлено через 17 минут
НО тут считает чтоб не число было конце , возведенное в кевадрат, а только последние цифры совпадали.
kazak
 Аватар для kazak
3029 / 2350 / 155
Регистрация: 11.03.2009
Сообщений: 5,401
12.06.2010, 10:23     Найти все числа в интервале от 1 до 1000, совпадающие с последними разрядами своих квадратов #4
Смысл тогда до 1000 проверять? Их всего три будет.
C++
1
if (i == (i*i)%10)
Добавлено через 5 минут
C++
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
#include <iostream.h>
 
int dig (int num)
{
   int count = 0;
   do
   {
      count++;
   }while ((num/=10)!=0);
   return count;
}
 
int main(int argc, char* argv[])
{
   int num_dig, mul = 1;
 
   for (int i = 1; i <= 1000; i++)
   {
      num_dig = dig(i);
      for (int j = 1; j <= num_dig; j++)
         mul *= 10;
      if (i == (i*i)%(mul))
         cout << i << " ";
      mul = 1;
   }
   cout << endl;
 
   system("pause");
   return 0;
}
Вот так будет всетаки правильно
Yandex
Объявления
12.06.2010, 10:23     Найти все числа в интервале от 1 до 1000, совпадающие с последними разрядами своих квадратов
Ответ Создать тему
Опции темы

Текущее время: 03:15. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru