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

Найти наибольший общий делитель двух чисел - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Разбор двух математических уравнений http://www.cyberforum.ru/cpp-beginners/thread1222171.html
Здравствуйте, уважаемые форумчане! Есть два задания по С++ с математическими формулами. Написать код на С++ для меня не проблема. Запнулся именно на формулах. Хочу уточнить у опытных и разбирающихся в математике, правильно ли я понимаю. Первое задание. Не совсем понятно, что делать с первым уравнением, которое равно нулю. Т.е. если С < 0 (например -10), тогда вне зависимости какие будут...
C++ Где прописывать условие функции ? Запутался с рекурсией окончательно. Помогите ! Если я хочу использовать рекурсию как цикл, где нужно прописывать условие, в самом вызове или в операторах if ? http://www.cyberforum.ru/cpp-beginners/thread1222151.html
Как организовать ввод комплексных чисел в массив C++
Всем привет. Такая проблема не знаю как организовать ввод комплексных чисел в массив. .h #include "stdafx.h" template <class T> class Mas //Mas<int> *iperem; Mas<float> *fperem; { private: T *Buffer;
В матрице, сформированной случайным образом, заменить элементы побочной диагонали C++
В матрице А, сформированной случайным образом, заменить элементы побочной диагонали на минимальное значение матрицы. Нужен статический массив!
C++ Найти первый из номеров K, для которых выполняется условие http://www.cyberforum.ru/cpp-beginners/thread1222124.html
Дано число D (> 0). Последовательность чисел AN определяется следующим образом: A1 = 2, AN = 2 + 1/AN–1, N =2,3,... Найти первый из номеров K, для которых выполняется условие |AK – AK–1| < D, и вывести этот номер, а также числа AK–1 и AK.
C++ Перегрузить операторы Помогите написать программу: << Бинарный дружественный оператор записать результат в переменную ! унарный оператор класса вывести результат на экран. подробнее

Показать сообщение отдельно
_Лето_
1 / 1 / 0
Регистрация: 03.11.2013
Сообщений: 68

Найти наибольший общий делитель двух чисел - C++

03.07.2014, 22:38. Просмотров 596. Ответов 4
Метки (Все метки)

Задание: найти наибольший общий делитель двух чисел.

Сам код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    int a,b,c;
    cout << "Введите a:";
    cin >> a;
    cout << "Введите b:";
    cin >> b;
  while (b) 
    {
      c = a % b;
      a = b;
      b = c;
   }
cout << a;
}
Не понятна функция:
C++
1
2
3
4
5
6
while (b) 
    {
      c = a % b;
      a = b;
      b = c;
   }
Что означает while(b)? Пока есть b? И дальше тоже...
Допустим, я беру a=105, а b=70, тогда c присваивается значение 35, a присваивается значение 70, а b присваивается значение 35, а в итоге выводится a, которая почему-то равная 35. Пожалуйста, объясните, как это работает.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru