Множества: напечатать все целые числа из заданного диапазона, представимые в виде суммы двух квадратов - C (СИ)
Формулировка задачи:
В возрастающем порядке напечатать все целые числа из диапазона 1..10 000, представимые в виде n*n+m*m, где n, m>=0.
Решение задачи: «Множества: напечатать все целые числа из заданного диапазона, представимые в виде суммы двух квадратов»
textual
Листинг программы
for(k=2; k<=10000; k++) for(i=1; i*i<k; i++) { for(j=i; i*i+j*j < k;j++) ; if (i*i+j*j == k) { printf("%d\n", k); break; } } }
Объяснение кода листинга программы
В этом коде выполняется следующая последовательность действий:
- В первой строке объявляется переменная k и инициализируется значением 2.
- Первая вложенная цикловая конструкция начинается с k <= 10000 и изменяет значение k на 10000 при каждой итерации.
- Вторая вложенная цикловая конструкция начинается с i = 1 и изменяет значение i на 10000 при каждой итерации.
- Третья вложенная цикловая конструкция начинается с j = i и изменяет значение j на 10000 при каждой итерации.
- Если ii + jj равняется k, то выполняется действие внутри блока if, которое выводит значение k и прерывает выполнение внешней циклической конструкции.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
- Если ii + jj не равняется k, то действие внутри блока if не выполняется, и выполнение третьей циклической конструкции продолжается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д