|
0 / 0 / 0
Регистрация: 20.01.2010
Сообщений: 31
|
|
Написать модифицированный вариант алгоритма Евклида30.01.2010, 00:23. Показов 10404. Ответов 21
Метки нет (Все метки)
1. Написать модифицированный вариант алгоритма Евклида (отыска-ния НОД – наибольшего общего делителя), используя соотношения: НОД(а, b) = НОД(a mod b, b), при a >= b;
НОД(а, b) = НОД(а, b mod a), при a <= b. Вычислить НОД для нескольких пар чисел и построить график по введенным значениям a и b. 2. Дана матрица A=[aij], размером n*n, где , i = 1, 2, ... n и 0<=aij<1. Написать программу последовательного умножения матрицы саму на себя. Процесс закончить, когда все элементы двух последовательных матриц будут отличаться друг от друга меньше, чем на 10-4. Результаты выдать.
0
|
|
| 30.01.2010, 00:23 | |
|
Ответы с готовыми решениями:
21
|
|
3132 / 1325 / 156
Регистрация: 19.12.2009
Сообщений: 1,808
|
|
| 30.01.2010, 00:28 | |
|
Первая задача
https://www.cyberforum.ru/pasc... 75652.html
2
|
|
|
175 / 172 / 40
Регистрация: 14.11.2009
Сообщений: 507
|
||||||
| 30.01.2010, 00:30 | ||||||
|
1
2
|
||||||
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
||
| 30.01.2010, 07:30 | ||
|
milagros2307, А что значит 10-4?
0
|
||
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|
| 30.01.2010, 07:39 | |
|
nikkka,
abs(An[i,j]-A(n-1)[i,j])<0.0001;
0
|
|
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
||
| 30.01.2010, 07:44 | ||
Надо писать не 10-4 а 10^(-4)
0
|
||
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|||||||||||
| 30.01.2010, 09:30 | |||||||||||
Сообщение было отмечено как решение
Решение
Что-то не нравится условие второй задачи, такое ощущение, что заданного результата, по крайней мере в Паскале не достичь. Написал программу, вроде верно, но работает только по самому минимуму, при n=2 и точности 0,1. При больших параметрах не хватает стека, даже по максимуму. Может кто найдет ошибки в логике или другой алгоритм.
Еще такой крамольный вариант, может не матрицу умножать саму на себя, т.е. возводить ее в степень, а просто элементы матрицы умножать, т.е. не матрицу возводить в степень, а ее элементы? Тогда должно работать. Добавлено через 10 минут Вот этот крамольный вариант, здесь все работает.
4
|
|||||||||||
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
|||||||
| 30.01.2010, 14:48 | |||||||
|
Ато так фигня какая то! Добавлено через 21 минуту Вот ещё один способ решения:
1
|
|||||||
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
||
| 30.01.2010, 14:51 | ||
|
0
|
||
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
||
| 30.01.2010, 15:10 | ||
0
|
||
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|
| 30.01.2010, 15:39 | |
|
nikkka, Нужно умножать числа из интервала от (0;1) пока все они не станут меньше 0.0001
1
|
|
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
||
| 30.01.2010, 16:29 | ||
|
А, то есть надо умножать все элементы матрицы на заданное число, пока они все не станут меньше 0.0001?
Но ведь это просто! Зачем столько процедур и подпрограмм?! :O Добавлено через 3 минуты
0
|
||
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|
| 30.01.2010, 16:36 | |
|
nikkka, Да врубитесь Вы в текст программы. По условию нужно умножать матрицу саму на себя, но так программу выкидывает, так как точность 0,0001 не может быть достигнута. Я подумал, что может быть неверно написано условие и не матрицу нужно умножать(возводить в степень), а только ее элементы возводить в степень, тогда они довольно быстро станут меньше 0,0001.
Если вообще не понимаете, то и не лезьте, тем более не нужно критики, немного чему-то научитесь прежде.
0
|
|
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
||
| 30.01.2010, 16:48 | ||
|
Puporev, вообще-то надо было написать программу автора а не "ту-что-вы-подумали". А если программу "выкидывает" то надо об этом сообщить, а не переделывать на свой лад.
![]() А критика - это моё мнение. Думаете так легко перепутать "умножение на саму себя" и "умножение на число"? Такая ошибка - не опечатка. Тем более, автор бы поправил её, если бы посчитал нужным.
0
|
||
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|
| 30.01.2010, 16:57 | |
|
nikkka, Если бы Вы разули свои глаза, то заметили бы, что я написал 2 варианта программы, один точно по приведенному условию, но, полагая что условие ошибочное, написал еще один вариант.
И нечего тут рявкать.
0
|
|
|
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
|
||
| 31.01.2010, 13:10 | ||
|
Если строго следовать условию задачи то вторая задача очень странная.
Начальная матрица имеет элементы <1. Значит в худшем случае после умножения матрицы на саму себя элементы будут <n. При следующем умножении элементы уже будут <n^2. В этом случае никакой сходимости точно не будет. Допустим элементы <1/n. Тогда после возведения матрицы в квадрат новые элементы будут <(1/n)*(1/n)*n == 1/n В этом случае можно надеяться что возможна какая-то сходимость. Добавлено через 2 минуты
0
|
||
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|
| 31.01.2010, 13:26 | |
|
odip, Согласен что условие "умножать матрицу саму на себя" и ждать сходимости, это абсурд. После каждого умножения элементы будут расти, а не уменьшаться, так как при умножении матриц идет суммирование элементов. Поэтому и предположил, что нужно не матрицу в степень возводить, а ее элементы, тогда задача будет корректной.
0
|
|
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
|
| 31.01.2010, 13:31 | |
|
Ну вообще то если 0<a[i,j]<1 то при возведении в квадрат оно уменьшится...
0
|
|
|
Почетный модератор
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
|
|
| 31.01.2010, 13:32 | |
|
nikkka, Вы вообще различаете понятия умножение матрицы на матрицу и умножение иатрицы на скаляр?
0
|
|
|
Мат в 32 хода
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
|
|
| 31.01.2010, 21:32 | |
|
Числа то, всё равно меньше 0
Добавлено через 7 часов 47 минут Я знаю как матрицй умножать на матрицу. Строка на столбец. Но если все элементы меньше 1, то какой элемент на какой бы мы не умножали, всё равно будет получатся меньше и меньше. Так что матрице вполне можно возводить в квадрат, уменьшая тем самым элементы...
0
|
|
| 31.01.2010, 21:32 | |
|
Помогаю со студенческими работами здесь
20
написать программу, которая использует модифицированный алгоритм Евклида
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение:
В этой книге («Подход, основанный на вариантах использования») Ивар утверждает,
что архитектура программного обеспечения — это
структуры,. . .
|
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога
Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
|
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip
На первой гифке отладочные линии отключены, а на второй включены:. . .
|