Натуральные числа |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Натуральные числа |
Максим |
Сообщение
#1
|
Гость |
Найти все натуральные числа, не превосходящие заданного числа n, представимые в виде суммы квадратов двух каких-нибудь различных натуральных чисел.
|
Amro |
Сообщение
#2
|
Пионер Группа: Пользователи Сообщений: 146 Пол: Мужской Репутация: 2 |
Можно попробывать так, правда вывод плохой ;)
зато всё находит Код uses crt; var n,f,i,j,nat: integer; mnoz: set of byte; begin clrscr; write('Задайте число n '); readln(n); f:=round(sqrt(n)); for i:=1 to f do begin for j:=1 to i-1 do begin nat:=sqr(i)+sqr(j); if not (nat in mnoz) then include(mnoz,nat) else nat:=0; if (nat<=n) then if nat<>0 then write(nat:3); end; writeln; end; readkey; end. Исправленно!!! Сообщение отредактировано: Amro - -------------------- Закон иудеев: Семь раз отмерь, один отрежь.
Закон экономии: Семь раз отмерь, семь раз отрежь. Закон программиста: Семь раз отрежь, ошибся, отмерь. |
zx1024 |
Сообщение
#3
|
Пионер Группа: Пользователи Сообщений: 119 Пол: Мужской Репутация: 0 |
Второй цикл (по j) нужно пустить не до f, а до i-1.
|
Amro |
Сообщение
#4
|
Пионер Группа: Пользователи Сообщений: 146 Пол: Мужской Репутация: 2 |
Цитата Второй цикл (по j) нужно пустить не до f, а до i-1. zx1024 Если сделать так то прога будет находить не все числа!!! К примеру не будет числа 2, не будет 8-ми, а должно быть!!! Я согласен с тем что делая второй цикл до f мы перебираем лишнего, но в данной программе быстродействием можно пренебречь ... Хотя я сам что то глючу, там же сказано разные нат числа, тагды прога будет для двух вариантов первый если j до i-1 для разных нат чисел, как ты и имел ввиду второй если J до f для любых....... Сообщение отредактировано: Amro - -------------------- Закон иудеев: Семь раз отмерь, один отрежь.
Закон экономии: Семь раз отмерь, семь раз отрежь. Закон программиста: Семь раз отрежь, ошибся, отмерь. |
zx1024 |
Сообщение
#5
|
Пионер Группа: Пользователи Сообщений: 119 Пол: Мужской Репутация: 0 |
В любом случае, если нужны одинаковые, то до i.
2*2 + 5*5 = 5*5 + 2*2. |
Amro |
Сообщение
#6
|
Пионер Группа: Пользователи Сообщений: 146 Пол: Мужской Репутация: 2 |
Цитата В любом случае, если нужны одинаковые, то до i. Точно .... -------------------- Закон иудеев: Семь раз отмерь, один отрежь.
Закон экономии: Семь раз отмерь, семь раз отрежь. Закон программиста: Семь раз отрежь, ошибся, отмерь. |
Текстовая версия | 15.05.2024 8:47 |