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

Синфой. нужно разделить на 3 файла. в первом должны быть функции ввода и вывода. во втором - формулы подсчета для нахождения биссектрис. в третьем - функция main.
//файл getput.cpp
#include
using namespace std;

void getl(double& a, double& b, double& c)
{
setlocale(lc_all,"rus");
cout < < "введите сторону а треугольника \n ";
cin > > a;
cout < < "введите сторону b треугольника \n ";
cin > > b;
cout < < "введите сторону c треугольника \n ";
cin > > c;
}
void putl(double l1, double l2, double l3)
{
setlocale(lc_all,"russian");
cout < < "первая биссектриса равна " < < l1 < < endl;
cout < < "вторая биссектриса равна " < < l2 < < endl;
cout < < "вторая биссектриса равна " < < l3 < < endl;
}
//

//файл с функциями
#include

double calcl(double a, double b, double c)
{
return (sqrt(b*c*((b+c)*(b+c))-pow(a,/(b+c);
}
double l(double a, double b, double c)
{
double l1,l2,l3;
l1 = calcl(a, b, c);
l2 = calcl(a, b, c);
l3 = calcl(a, b, c);
return l3;
}
//

/файл main.cpp
#include
using namespace std;
#include
double l1, l2, l3;
void getl(double& a, double& b, double& c);
void putl(double l1, double l2, double l3);
//double l(double a, double b, double c);
double calcl(double a, double b, double c);
int main()
{
setlocale(lc_all, "rus");
double a, b, c;
getl(a, b, c);
calcl(a, b, c);
putl(l1,l2,l3);
system("pause");
return 0;
}

Показать ответ
Ответ:
Doctor555
Doctor555
03.05.2023 23:44
//Метод быстрой сортировки
//Pascal ABC.NET v3.1 сборка 1172

//По возрастанию
Const
n=55;

type
ty=array[1..n] of integer;

Var
ar:ty;
s:integer;

procedure quicksort(l,r:integer);
var i,j,x,temp:integer;
 begin
  i:=l; //левый конец
  j:=r; //правый конец
  x:=ar[random(r-l+1)+l];
   repeat
    while ar[i]<x do inc(i); //пока выбранный элемент больше всех, что левее его(всё норм), увеличивать индекс
    while x<ar[j] do dec(j); //пока выбранный элемент меньше всех, что правее его(всё норм), уменьшать индекс
    if i<=j then //если левый индекс меньше или равен правому-продолжать
     begin
        temp:=ar[i];
        ar[i]:=ar[j];
        ar[j]:=temp;
        inc(i); //чтобы не запустить бесконечную рекурсию
        dec(j);
     end;
    until i>=j;
  if l<j then quicksort(l,i); //l-левый конец нового витка, j-правый
  if r>i then quicksort(i,r); //r-левый конец нового витка, i-правый
end;

begin
randomize;
writeln('First array:');
for s:=1 to n do
 begin
  ar[s]:=random(n);
  write(ar[s]:4);
 end;
quicksort(1,n);
writeln;
writeln('Final array:');
ar.println;
end.

//По убыванию
Const
n=55;

type
ty=array[1..n] of integer;

Var
ar:ty;
s:integer;

procedure quicksort(l,r:integer);
var i,j,x,temp:integer;
 begin
  i:=l; //левый конец
  j:=r; //правый конец
  x:=ar[random(r-l+1)+l];
   repeat
    while ar[i]>x do inc(i); //пока выбранный элемент больше всех, что левее его(всё норм), увеличивать индекс
    while x>ar[j] do dec(j); //пока выбранный элемент меньше всех, что правее его(всё норм), уменьшать индекс
    if i<=j then //если левый индекс меньше или равен правому-продолжать
     begin
        temp:=ar[i];
        ar[i]:=ar[j];
        ar[j]:=temp;
        inc(i); //чтобы не запустить бесконечную рекурсию
        dec(j);
     end;
    until i>=j;
  if l<j then quicksort(l,i); //l-левый конец нового витка, j-правый
  if r>i then quicksort(i,r); //r-левый конец нового витка, i-правый
end;

begin
randomize;
writeln('First array:');
for s:=1 to n do
 begin
  ar[s]:=random(n);
  write(ar[s]:4);
 end;
quicksort(1,n);
writeln;
writeln('Final array:');
ar.println;
end.
0,0(0 оценок)
Ответ:
muzaparovakamil
muzaparovakamil
11.09.2020 10:58
1. Первый элемент массива не менялся, значит M[0] = 3
2. Чтобы получить M[1] надо рассмотреть такой вариант:
14 = MAS[0]*3+X, где Х есть предыдущее значение элемента M[1], получим, что Х = 5 и изначально  M[1] = 5
3. Зная второй элемент массива несложно получить и третий:
47 = MAS[1] * 3 + X = 14*3 +X, где Х есть предыдущее значение элемента M[2], получим, что Х = 5 и изначально  M[2] = 5
4. Аналогично находим, что первоначальное значение М[3] =  1, а M[4]  = 2

5. Значит массив изначально был такой:
3 5 5 1 2

Напишем код на Python для проверки:
MAS = [3,5,5,1,2]
print(MAS[0],sep=' ', end=' ')
for i in range(1,5):
    MAS[i] +=MAS[i-1]*3
    print(MAS[i],sep=' ', end=' ')

Результат:
3 14 47 142 428

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