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

Натуральное число n представить в виде суммы трех полных квадратов - C++

Восстановить пароль Регистрация
 
Логик
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 16
13.03.2014, 20:53     Натуральное число n представить в виде суммы трех полных квадратов #1
Логической переменной t присвоить значение true или false, в зависимости от того, можно или нет натуральное число n представить в виде суммы трех полных квадратов. За помощь отблагодарю быстро.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.03.2014, 20:53     Натуральное число n представить в виде суммы трех полных квадратов
Посмотрите здесь:

Определить, можно ли заданное число представить в виде суммы двух квадратов C++
C++ Дано натуральное число n. Можно ли представить его в виде суммы трех квадратов натуральных чисел?
Дано натуральное число n. -представить его как сумму квадратов C++
Можно ли заданное натуральное число М представить в виде суммы квадратов двух натуральных чисел? C++
Натуральное число N представить в виде его стека C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
StailGot
27 / 22 / 6
Регистрация: 25.08.2013
Сообщений: 41
15.03.2014, 02:35     Натуральное число n представить в виде суммы трех полных квадратов #2
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
#include <cmath>
#include <iostream>
 
using namespace std;
 
int main()
{
  const size_t n = 22;
 
  const bool t =
    []( const size_t n )
  {
    const size_t sqrt_n = static_cast<size_t>( ::sqrt(n) );
    if ( n > 2 )
      for ( size_t i = 1; i < sqrt_n; i++ )
      for ( size_t j = 1; j < sqrt_n; j++ )
      for ( size_t k = 1; k < sqrt_n; k++ )
        if ( (i * i + j * j + k * k ) == n )
          return true;
    return false;
  } ( n );
 
  cout << boolalpha << t << endl;
}
Логик
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 16
15.03.2014, 11:13  [ТС]     Натуральное число n представить в виде суммы трех полных квадратов #3
Цитата Сообщение от StailGot Посмотреть сообщение
{
12 и 13 строки - выдает ошибку, поэтому прога не работает. Прошу подкорректировать и финансово....
kylroma
Одессит
 Аватар для kylroma
44 / 44 / 18
Регистрация: 30.12.2013
Сообщений: 203
Записей в блоге: 1
Завершенные тесты: 1
15.03.2014, 16:50     Натуральное число n представить в виде суммы трех полных квадратов #4
Прога работает. Проверял в Dev_c++
mymedia
190 / 190 / 48
Регистрация: 27.05.2011
Сообщений: 543
15.03.2014, 17:23     Натуральное число n представить в виде суммы трех полных квадратов #5
Логик, у StailGot версия С++11. В вашем компиляторе нужно включить соответствующий режим или переписать программу так, чтобы не использовать лямбда функции.
Например так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <cmath>
#include <iostream>
 
bool is_square(const int n)
{
    const int sqrt_n = std::sqrt(n);
    if ( n > 2 )
      for ( int i = 1; i < sqrt_n; i++ )
      for ( int j = 1; j < sqrt_n; j++ )
      for ( int k = 1; k < sqrt_n; k++ )
        if ( (i * i + j * j + k * k ) == n )
          return true;
    return false;
}
int main()
{
  const size_t n = 22;
 
  const bool t = is_square ( n );
  
  using namespace std;
  cout << boolalpha << t << endl;
}


StailGot, мне кажется, это что-то не то. У тебя n - сумма трёх квадратов натуральных чисел, а понятие "полный кавдрат" применимо к двум числам. Я имею ввиду квадрат суммы (разности) http://www.cyberforum.ru/cgi-bin/latex.cgi?{\left(a + b \right)}^2 = a^2 + 2ab + b^2. Или я что-то путаю. А как ещё понимать?
Цитата Сообщение от Логик Посмотреть сообщение
натуральное число n представить в виде суммы трех полных квадратов
Логик
0 / 0 / 0
Регистрация: 15.11.2013
Сообщений: 16
15.03.2014, 20:33  [ТС]     Натуральное число n представить в виде суммы трех полных квадратов #6
Кто-нибудь в курсе как составить Flow-формы и диаграммы Насси-Шнейдермана по этой проге?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
16.03.2014, 14:22     Натуральное число n представить в виде суммы трех полных квадратов
Еще ссылки по теме:

Определить, можно ли представить число в виде суммы двух квадратов натуральных чисел C++
C++ Представить натуральное число в виде произведения простых множителей
Определить, можно ли представить число N в виде суммы кубов трех натуральных чисел C++

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

Или воспользуйтесь поиском по форуму:
StailGot
27 / 22 / 6
Регистрация: 25.08.2013
Сообщений: 41
16.03.2014, 14:22     Натуральное число n представить в виде суммы трех полных квадратов #7
mymedia, полным квадратом еще называют
число, являющееся квадратом некоторого целого числа
так же используют термин точный квадрат
Yandex
Объявления
16.03.2014, 14:22     Натуральное число n представить в виде суммы трех полных квадратов
Ответ Создать тему
Опции темы

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