Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.79/29: Рейтинг темы: голосов - 29, средняя оценка - 4.79
0 / 0 / 0
Регистрация: 06.06.2012
Сообщений: 48
1

Можно ли представить число в виде суммы квадратов двух натуральных чисел

21.06.2012, 16:09. Показов 5810. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
n - натуральное.
Можно ли представить его в виде суммы квадратов двух натуральных чисел? Указать пару натуральных чисел x,y таких, что n=x2+y2.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.06.2012, 16:09
Ответы с готовыми решениями:

Можно ли представить число в виде суммы двух квадратов натуральных чисел.
2)Дано натуральное число n. Проверьте, можно ли представить его в виде суммы двух квадратов...

Можно ли натуральное число a представить в виде суммы квадратов двух натуральных чисел
Определить: можно ли натуральное число a представить в виде суммы квадратов двух натуральных чисел.

Проверьте, можно ли представить число в виде суммы двух квадратов натуральных чисел
Проверьте, можно ли представить число в виде суммы двух квадратов натуральных чисел. Входные...

Можно ли заданное натуральное число М представить в виде суммы квадратов двух натуральных чисел
10. Можно ли заданное натуральное число М представить в виде суммы квадратов двух натуральных...

10
35 / 35 / 30
Регистрация: 25.04.2012
Сообщений: 74
22.06.2012, 13:42 2
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
uses crt;
var n,i,x,y: integer;
    t: boolean;
begin
clrscr;
      write ('vvedite n: '); readln(n);
      t:=false;
      for x:=0 to round(sqrt(n)) do
          for y:=0 to round(sqrt(n)) do
              if x*x+y*y=n then begin
                 writeln(x,' ',y);
                 t:=true; end;
      if t=false then writeln('net');
readkey;
end.
1
0 / 0 / 0
Регистрация: 06.06.2012
Сообщений: 48
22.06.2012, 13:50  [ТС] 3
А можно попроще?
0
107 / 107 / 9
Регистрация: 02.06.2009
Сообщений: 578
22.06.2012, 15:00 4
dmitriy2012,в смысле попроще?
1
35 / 35 / 30
Регистрация: 25.04.2012
Сообщений: 74
22.06.2012, 15:16 5
Ну даже не знаю. Если вы не изучали функции round и sqrt, тогда можно искать до n, т.е.
Pascal
1
to n do
Это конечно лишняя работа программы, но и особого вреда от этого не будет...
Можно убрать переменную t и все с ней связанное, тогда в случае отрицательного результата программа просто ничего не выведет.
1
107 / 107 / 9
Регистрация: 02.06.2009
Сообщений: 578
22.06.2012, 15:20 6
Lilu666, в Вашем решении выводится ответ дважды. Это не есть хорошо.
1
35 / 35 / 30
Регистрация: 25.04.2012
Сообщений: 74
22.06.2012, 15:30 7
Veyron, да, я знаю. Я не смогла придумать, как сделать так, чтоб был один ответ...
1
0 / 0 / 0
Регистрация: 06.06.2012
Сообщений: 48
22.06.2012, 23:05  [ТС] 8
Lilu, мне и надо с помощью "to n do"
0
107 / 107 / 9
Регистрация: 02.06.2009
Сообщений: 578
22.06.2012, 23:19 9
Lilu666, вот это:
Delphi
1
for y:=0 to round(sqrt(n)) do
заменить на вот это:
Delphi
1
for y:=x to round(sqrt(n)) do
1
35 / 35 / 30
Регистрация: 25.04.2012
Сообщений: 74
22.06.2012, 23:33 10
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Veyron, о, точно! Спасибо за подсказку!


dmitriy2012, если искать до n, тогда окончательный вариант будет такой:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
uses crt;
var n,i,x,y: integer;
    t: boolean;
begin
clrscr;
      write ('vvedite n: '); readln(n);
      t:=false;
      for x:=0 to n do
          for y:=x to n do
              if x*x+y*y=n then begin
                 writeln(x,' ',y);
                 t:=true; end;
      if t=false then writeln('net');
readkey;
end.
1
0 / 0 / 0
Регистрация: 06.06.2012
Сообщений: 48
23.06.2012, 12:02  [ТС] 11
спасибо обоим, огромное спасибо!!
0
23.06.2012, 12:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.06.2012, 12:02
Помогаю со студенческими работами здесь

Определить, можно ли заданное натуральное число представить в виде суммы квадратов двух натуральных чисел
2.Можно ли заданное натуральное число М представить в виде суммы квадратов двух натуральных чисел?...

Среди чисел 1,2,...,n найти все те, которые можно представить в виде суммы квадратов двух натуральных чисел
Составить алгоритм и программу для решения задач с использованием процедур и функций. Даны...

Среди чисел найти все те, которые можно представить в виде суммы квадратов двух натуральных чисел
Дано натуральное число n. Среди чисел 1,2,...,n найти все те, которые можно представить в виде...

Даны натуральные числа n и m. Среди чисел n, n+1, ... , m найти все те, которые можно представить в виде суммы квадратов двух натуральных чисел
Здравствуйте. Помогите пожалуйста написать код к следующей задаче: Даны натуральные числа n и m....


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru