В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
kjkszpjkangaroo
kjkszpjkangaroo
07.03.2023 22:47 •  Информатика

Между населёнными пунктами A, B, C, D, E построены дороги, протяжённость которых (в километрах) приведена в таблице. Определите длину кратчайшего пути между пунктами A и D, проходящего через пункт E. Передвигаться можно только по дорогам, протяжённость которых указана в таблице.


Между населёнными пунктами A, B, C, D, E построены дороги, протяжённость которых (в километрах) прив

Показать ответ
Ответ:
mikilinaf7890
mikilinaf7890
20.04.2020 04:52

Объявляем функцию gcd, принимающую два целочисленных параметра и возвращающую их наибольший общий делитель. Здесь это вычисляется при алгоритма Евклида.

Затем для удобства определяем ещё одну функцию gcd3, которая принимает уже три аргумента и, используя указанную в условии формулу и описанную выше функцию gcd, вычисляет НОД от трёх чисел.

В основной части программы просто три числа считываются с клавиатуры и выводится ответ.

Код (PascalABC.NET v3.6.2316):

function gcd(a, b: integer): integer;

begin

 while a * b <> 0 do

   (a, b) := (b, a mod b);

 Result := a + b

end;

function gcd3(a, b, c: integer) := gcd(gcd(a, b), c);

begin

 var (a, b, c) := ReadInteger3;

 print(gcd3(a, b, c))

end.

Пример ввода:

10 40 20

Пример вывода:

10

0,0(0 оценок)
Ответ:
влад2162
влад2162
20.04.2020 04:52

#include <cstdlib>
#include <iostream>

 

using namespace std;

 

int NOD( int a, int b)
{
   int c=1;

   int d;

   if(a>b)

    d=b;

   else

    d=a;
   for(int j=1;j<=d;j++)
   {
    if(a%j==0 && b%j==0)
    c=j;       
   }
   return c;     
}

 

int main()

{

 int A,B,C;

 cout<<"Введите А"<<endl;

 cin>>A;

 cout<<"Введите В"<<endl;

 cin>>B;

 cout<<"Введите С"<<endl;

 cin>>C;

 cout<<"НОД("<<A<<","<<B<<","<<C<<")="<<NOD(NOD(A,B),C)<<endl;

 system("PAUSE");

 return 0;

}

 

 

 

 

(Код написан на С++.)

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота