Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 24, средняя оценка - 4.71
wizard 007
0 / 0 / 4
Регистрация: 19.04.2011
Сообщений: 39
#1

Найти наименьшее общее кратное трех чисел - C++

02.10.2011, 11:20. Просмотров 4251. Ответов 4
Метки нет (Все метки)

заданы 3 числа найти их наименьшее общее кратное

 Комментарий модератора 
Теги выделения кода предназначены для выделения кода, а не задания. Если Вам необходимо решения именно на C++, укажите это в названии темы или в посте.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.10.2011, 11:20
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Найти наименьшее общее кратное трех чисел (C++):

Разработать функцию, которая возвращает наименьшее общее кратное трех заданных натуральных чисел
Разработать функцию, которая возвращает наименьшее общее кратное трех заданных...

Найти наименьшее общее кратное заданных N чисел
Ребят, привет. Выручайте, чем можете, нужно составить код для нахождения...

Найти наименьшее общее кратное (НОК) натуральных чисел С++
Вот мой исходник : #include <iostream.h> int NSD (int a, int b) { while...

Найти наименьшее общее кратное (НОК) n натуральных чисел
Есть задача: НОК Найти наименьшее общее кратное (НОК) n натуральных...

Найти НОК (наименьшее общее кратное) массива натуральных чисел
Найти НОК (наименьшее общее кратное) массива натуральных чисел. Спасибо за...

Найти НОК (наименьшее общее кратное) двух введённых чисел
Найти НОК (наименьшее общее кратное) двух введённых чисел. Спасибо за помощь

4
Юри
1 / 1 / 1
Регистрация: 28.09.2011
Сообщений: 6
02.10.2011, 12:35 #2
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
#include <iostream>
using namespace std;
 
int nok(int a, int b, int c);
 
int i;
 
int main()
{
    int s1, s2, s3;
    cout << " Vvedite 3 chisla: ";
    cin >> s1;
    cin >> s2;
    cin >> s3;
    
    cout << " Haimenshee obshee kratnoe ravno: " << nok(s1, s2, s3);
    
    return 0;
}
 
    int nok(int a, int b, int c)
    {    
         for(i=1; i<a*b*c; i++)
         {
              if(!(i%a) && !(i%b) && !(i%c)) return i;
              }
              }
 Комментарий модератора 
Используйте теги форматирования кода!
1
kozlik_kozlik
7 / 11 / 0
Регистрация: 01.08.2012
Сообщений: 99
10.08.2015, 16:12 #3
А если наименьшее общее кратное - произведение этих чисел ? Программа слегка не доделана.
0
ture
528 / 336 / 206
Регистрация: 27.11.2014
Сообщений: 1,043
10.08.2015, 16:29 #4
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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include <iostream>
using std::cout;
using std::endl;
using std::cin;
 
int nod(int a, int b) { 
    int rez;
    a = a > 0 ? a : -a;
    b = b > 0 ? b : -b;
 
    if(a == 0)
        rez = b;
    else if(b == 0)
        rez = a;
    else if(a == b)
        rez = a;
    else if(a == 1 || b == 1)
        rez = 1;
    else {
        int ra = a % 2, rb = b % 2;
        if(!(ra || rb))
            rez = 2 * nod(a / 2, b / 2);
        else if(!ra)
            rez = nod(a / 2, b);
        else if(!rb)
            rez = nod(b / 2, a);
        else if(a > b)
            rez = nod(a - b, b);
        else
            rez = nod(b - a, a);
    }
 
    return rez;
}
 
int nok(int a, int b) { 
    return a*b/nod(a,b);
}
 
int main() {
    int a,b,c;
    cout << "a, b, c\n";
    cin >> a >> b >> c;
    cout << "NOK(a,b,c) = "<< nok(nok(a, b), c) << endl;
    system("pause");
    return 0;
}
0
SerVal
23 / 23 / 8
Регистрация: 16.04.2015
Сообщений: 208
10.08.2015, 19:17 #5
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
30
31
32
33
34
35
36
37
using namespace std;
bool isCommonDivisor(int a, int b, int c, int num)
{
    if ((a % num == 0) && (b % num == 0) && (c % num == 0))
        return true;
    return false;
}
//******************************
int main(int argc, char *argv[])
{
    setlocale(LC_CTYPE, "russian");
 
    int a = 6;
    int b = 12;
    int c = 15;
 
    int min_number = min(a, b);
    min_number = min(c, min_number);
 
    int  lcd = INT_MAX; // lowest_common_divisor
 
    for (int divisor = min_number / 2; divisor > 1; divisor--)
    {
        if (isCommonDivisor(a, b, c, divisor))
        {
            if (lcd > divisor)
                lcd = divisor;
        }
    }
 
    cout << "a = " << a << endl;
    cout << "b = " << b << endl;
    cout << "c = " << c << endl;
    cout << "Lowest common divisor " << lcd << endl;
 
    return 0;
}
Добавлено через 18 минут
Ой, ребятки, я ошибся: написал вычисление минимального делителя.
0
10.08.2015, 19:17
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
10.08.2015, 19:17
Привет! Вот еще темы с решениями:

Найти наименьшее общее кратное (НОК) n натуральных чисел (оптимизировать код)
Здравствуйте! Вот еще одна несложная задачка, однако 10/11 (последний тест не...

Найти наибольший общий делитель и наименьшее общее кратное двух чисел
Даны два натуральных числа m и n. Найти их наибольший общий делитель и...

Найти наибольший общий делитель и наименьшее общее кратное двух введенных натуральных чисел
Напишите пожалуйста код =)

Найти наибольший общий делитель и наименьшее общее кратное двух введенных натуральных чисел.
Найти наибольший общий делитель и наименьшее общее кратное двух введенных...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru