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

Найти все числа перебором цифр - C++

Восстановить пароль Регистрация
 
Delmellor
1 / 1 / 0
Регистрация: 18.11.2012
Сообщений: 37
26.12.2012, 07:17     Найти все числа перебором цифр #1
Здравствуйте. Помогите, пожалуйста, с задачей, очень нужно до завтра..
Дано число длины цифр 10.. long int, в общем. Заменой ОДНОЙ из его цифр найти числа, являющиеся полными квадратами (4, 9, 16, 25, 36.... и т.д. - квадраты натуральных чисел, в общем).
Как проверить на то, является ли число полным квадратом или не является, я знаю. Нужен алгоритм перебора цифр.
Допустим, есть 356408 - не полный квадрат. но 356409 - полный квадрат (597^2).

Добавлено через 58 минут
Люди, прошу.. уделите время. помогите кто-нибудь, пожалуйста. срочно. буду благодарен очень.

Добавлено через 1 час 3 минуты
[поднято. см. выше]

Добавлено через 2 часа 51 минуту
откликнитесь хоть кто-нибудь, пожалуйста.

Добавлено через 8 часов 40 минут
[поднято]
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.12.2012, 07:17     Найти все числа перебором цифр
Посмотрите здесь:

Дано натуральное число N. Найти и вывести все числа в интервале от 1 до N-1, у которых произведение цифр совпадает с произведением цифр данного числа C++
Найти все простые числа от 1000 до 1999, в каждом из которых сумма первой и второй цифр в записи этого числа равна сумме третьей и четвертой. C++
C++ Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2,3,4,5,6,7,8,9
C++ Найти все четырёхзначные числа, у которых сумма крайних цифр равна сумме средних цифр, а само число делится на 6 и 27
C++ Найти все числа Армстронга, состоящие из 2, 3 или 4 цифр
C++ Найти все двузначные числа, сумма цифр которых не меняется при умножении числа на 2, 3, 4, 5, 6, 7, 8, 9
Найти все трехзначные десятичные числа с заданной суммой цифр C++
Найти все n-значные числа, сумма квадратов цифр которых кратна М C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Tiva
94 / 94 / 1
Регистрация: 25.04.2012
Сообщений: 429
26.12.2012, 11:05     Найти все числа перебором цифр #2
Цитата Сообщение от Delmellor Посмотреть сообщение
Здравствуйте. Помогите, пожалуйста, с задачей, очень нужно до завтра..
Дано число длины цифр 10.. long int, в общем. Заменой ОДНОЙ из его цифр найти числа, являющиеся полными квадратами (4, 9, 16, 25, 36.... и т.д. - квадраты натуральных чисел, в общем).
Как проверить на то, является ли число полным квадратом или не является, я знаю. Нужен алгоритм перебора цифр.
Допустим, есть 356408 - не полный квадрат. но 356409 - полный квадрат (597^2).
вот то, что выделено жирным, надо написать понятнее, ибо я не понял практически ничего. не путайте слово ЧИСЛО и ЦИФРА ( 12345 - это число. 1 - это цифра. 12345 - не цифра)
алгоритм перебора цифр? может быть числе?
C++
1
for(int i=0; i<some_const; i++)
вот вам инструмент для перебора чисел. в теле цикла пишите условие и считаете то, что вам надо.

вот код, если я конечно правильно понял, что вам надо:
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
#include <iostream>
#include <math.h>
#include <stdlib.h>
bool fsqrt(long int a)
{
    float c;
    c=sqrt((float)a);
    if (c*c==(float)a) return true;
    else return false;
}
int main(void)
{
    long int x;
    std::cout<<"Введите число:\n";
    std::cin>>x;
    char *c=new char[10]; //вроде как у вас дано максимальное кол-во цифр в числе в условии
    _ltoa(x,c,10);
    int size=strlen(c);
    std::cout<<"Полные квадраты "<<size<<"-значных чисел:\n";
    for(int i=pow(10.f,(float)size-1); i<(pow(10.f,(float)size)); i++)
    {
        if(fsqrt(i)) std::cout<<i<<"  ";
        //std::cout<<i<<" ";
    }
    std::system("pause");
}
Yandex
Объявления
26.12.2012, 11:05     Найти все числа перебором цифр
Ответ Создать тему
Опции темы

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