filatevanastya1
08.04.2023 10:25

Отношение «является разновидностью» связывает

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Докар11
19.12.2021 00:32

#include <iostream>

#include <vector>

#include <set>

#include <cmath>

using namespace std;

bool check(double a, double b, double c){

   return !(a >= b + c || b >= a + c || c >= b + c);

}

double square(double a, double b, double c){

   double p = (a+b+c)/2;

   return sqrt(p * (p-a) * (p-b) * (p-c));

}

bool is_palind(int k){

   string s = to_string(k);

   for(int i = 0; i < s.length() - i - 1; i++)

       if(s[i] != s[s.length()-i-1])

           return false;

   return true;

}

void solve1(){

   vector<double> lines(4);

   double ans = -1;

   for(auto &i : lines) cin >> i;

   for(int i = 0; i < 4; i++)

       for(int j = i + 1; j < 4; j++)

           for(int k = j + 1; j < 4; j++)

               if(check(lines[i],lines[j],lines[k]))

                   ans = max(ans,square(lines[i],lines[j], lines[k]));

   ans == -1 ? cout << "No solution" : cout << ans;

}

void solve2(){

   set<int> s;

   for(int i = 1000; i < 10000; i++)

       if(is_palind(i))

           s.insert(i);

   int n;

   cin >> n;

   s.find(n) != s.end() ? cout << n : cout << *upper_bound(s.begin(),s.end(),n);

}

0,0(0 оценок)
Ответ:
vlad369cool
28.03.2020 16:04

Объявляем функцию 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 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота