Форум программистов, компьютерный форум CyberForum.ru

Расширенный алгоритм Евклида - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ что делать если ofstream не закрывает файл http://www.cyberforum.ru/cpp-beginners/thread969189.html
Код: if (NeedUnitLog) { NeedUnitLog = false; ofstream unilog; unilog.open("UnitLog.txt", ios::out); unilog << "Список НОМЕР : ID юнитов" << endl; for (DWORD i = 0x100000; i < 0x1E0000; i++) {
C++ Сортировка времени Time sorting From input your program have to read N (1<=N<=100) - the total number of time interval than have to be sorted. Each line contains data in following format HH MM SS HH (hours) - from 0 to 23 MM (minutes) - from 0 to 60 SS (seconds) - from 0 to 60 The output have to contain time intervals in nondescending order in give format. Input sample: http://www.cyberforum.ru/cpp-beginners/thread969182.html
Создать двумерный массив чисел с плавающей точкой и вывести на экран все числа по диагонали с лева на право C++
Создать двумерный массив чисел с плавающей точкой и вывести на экран все числа по диагонали с лева на право. Друзья-программисты выручайте
Need hlp C++
Доброго времени суток! Задача моя состоит в следующем: существует матрица, строки которой соответствуют орудиям, а столбцы целям. aij - элемент матрицы, являющийся временем наведения орудия i на цель j. Нужно составить программу, выполняющую оптимизацию наведения. В следующем коде, функция exeption() выполняет основные операции: #include <iostream> #include <math.h> #include <conio.h>...
C++ Некорректный вывод http://www.cyberforum.ru/cpp-beginners/thread969138.html
Доброго времени суток Суть такова: есть прога, выполняющая действия с односвязным списком. Первоначально, инфа в список подаётся из файла, также реализована возможность добавления фрагмента, набранного вручную. Дело в следующем: фрагменты из файла выводятся корректно, но добавленный фрагмент выводится НЕкорректно (символы из одной части структуры заменяются символами из другой части). Как можно...
C++ Таблица TableLayoutPanel В этой таблице есть ячейки. Вопрос такой: можно ли в каждой ячейке выводить элемент массива. Дело в том, что я практически не работал в Windows Form, а только по мелочи "баловался". Есть аналогичная тема в другой ветке форума, но там мне никто не ответил.. подробнее

Показать сообщение отдельно
vitaliypro
1 / 1 / 0
Регистрация: 09.09.2013
Сообщений: 125
05.10.2013, 00:21     Расширенный алгоритм Евклида
Вот программа - - - - - - - - - -

ЗАДАНИЕ: Даны натуральные а и b, не равные 0 одновременно. Найти d = НОД (a,b) и такие целые x и y, что d = a*x + b*y.

КОД ПРОГРАММЫ:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <iostream>
 
using namespace std;
int x=1,y=0,d;
void euclid(int a, int b)
{
    int t;
    if (!b) // в случае, если b = 0, полагаем, что x = 1, y = 0;
    {
        d = a; x = 1; y = 0;
        return;
    }
    euclid(b, a%b); // рекурсивно вызываем функцию от b и остатка их деления
    t = y;
    y = x - (a/b) * y;
    x = t;
}
 
int main()
{
    int a,b;
    setlocale(LC_ALL,"rus");
    cout<<"Введите числа A и B"<<endl;
    cin>>a>>b;
    euclid(a,b);
    cout<<"НОД = "<<d<<endl;
    cout<<"Коэффициентами Безу будут x = "<<x<<" и y = "<<y<<endl;
    return 0;
}
Необходимо заменить на d = a/x + b*y. (меняется первая операция умножения на деление!)!
по идее a/x + b*y = a*x^(-1)+b*y. но все равно не получается.

помогите плиз.

Добавлено через 1 час 22 минуты
upup

Добавлено через 25 секунд
uuup
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:52. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru