База знаний студента. Реферат, курсовая, контрольная, диплом на заказ

курсовые,контрольные,дипломы,рефераты

Планирование работ в вычислительных системах по критерию минимального суммарного времени выполнения работ — Информатика, программирование

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ

Кафедра информатики

Пояснительная записка к курсовому проекту

по курсу

«Архитектура вычислительных систем»

на тему

«Планирование работ в вычислительных системах по критерию минимального суммарного времени выполнения работ»

МИНСК, 2001


Постановка задачи

Факторизовать целое число N с помощью ро-метода Полларда.

Исходные данные:

Целое число N.

Краткое описание ро-метода Полларда

Ро-метод Полларда для факторизации заключается в следующем:

1.         Составляется последовательность {x}, xi+1=f(xi), f(x)=x2+1

2.         Вычисляются разности yi= x2i- xi

3.         Вычисляется наибольший общий делитель чисел yi и N. Если он больше 1, полученный НОД (yi , N) является делителем числа N. Если нет – продолжаем выполнение алгоритма сначала.

Алгоритм работы программы

- Ввод числа N.

- Пока N не равно 1:

1.         Вычисление xi

2.         Вычисление x2i

4.         Нахождение разности yi= x2i- xi

3.         Вычисление НОД (yi , N)

4.         Проверка НОД (yi , N) на равенство 1. Если это условие выполняется, то НОД – один из делителей числа N. Делим N на НОД и переходим к началу цикла.

Выход из цикла – равенство числа N единице.


Листинг программы

#include "stdio.h"

#include "conio.h"

#include "iostream.h"

unsigned long NOD(unsigned long a, unsigned long b)

{

while ((a > 0) && (b > 0))

if (a > b) a %= b;

 else b %= a;

if (a == 0) return b;

return a;

}

void main()

{

unsigned long N, y, x, x1, i, j, d;

clrscr();

printf("Введите N : ");

scanf("%ld", &N);

i = 1;

x = 0;

do {

x = (x*x + 1) % N;

x1 = x;

for (j = 0; j < i*2-i; j++)

x1 = (x1*x1 + 1) % N;

i++;

y = x1 - x;

d = NOD(y, N);

if (d != 1)

{

cout<<"Делитель : "<<d<<" ";

cout<<"Кол-во шагов : "<<i-1<<endl;

N/=d;

i = 1;

x = 0;

}

}

while (N != 1);

getch();

}

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ Кафедра информатики Пояснительная записка к курсовому проекту по курсу «Архитектура вычислительных систем» на тему «Планирование

 

 

 

Внимание! Представленная Курсовая работа находится в открытом доступе в сети Интернет, и уже неоднократно сдавалась, возможно, даже в твоем учебном заведении.
Советуем не рисковать. Узнай, сколько стоит абсолютно уникальная Курсовая работа по твоей теме:

Новости образования и науки

Заказать уникальную работу

Похожие работы:

Побудова дерева каталогів диску і реалізація можливості переходу у вибраний каталог
Побудова динамічної графіки
Побудова клавіатурного тренажера
Побудова комп'ютерної мережі в Cisco Packet Tracer
Подготовка и обработка экономической информации
Подсистема управления процессами
Поиск в лабиринте
Поиск информации в Интернет
Поиск информации в Интернете по теме &quot;Учет амортизации (износа) основных средств&quot;
Поиск информации в Интернете по теме &quot;Учет движения основных средств&quot;

Свои сданные студенческие работы

присылайте нам на e-mail

Client@Stud-Baza.ru