Написать функцию вычисления периметра
Элипса P=4((πab + (a − b))/(a+b)) на С++
153
500
Ответы на вопрос:
Const n = 20; { размер массивов } p=0; { минимальное значение элемента } q=15; { максимальное значение элемента } type v=array[1..n] of integer; procedure vinit(var a: v; s: string); { процедура заполняет элементы массива a случайными значениями из интервала [p; q]. элементы сформированного массива выводятся с заголовком, в который добавляется значение s } var i,kol: integer; begin kol: =q-p+1; writeln('элементы массива ',s); for i: =1 to n do begin a[i]: =random(kol)+p; write(a[i],' ') end; writeln end; procedure sortbubble(var a: v); { сортировка методом пузырька } var i,j,t: integer; begin for i : = 1 to n-1 do for j : = 1 to n-i do if a[j] > a[j+1] then begin t : = a[j]; a[j] : = a[j+1]; a[j+1] : = t end end; procedure vout(var a: v; s: string); { элементы массива a выводятся с заголовком s } var i: integer; begin writeln(s); for i: =1 to n do write(a[i],' '); writeln end; function binsearch(var a: v; key: integer): boolean; { двоичный поиск элемента со значением key в массиве a возвращает true, если элемент найден и false, если нет } var li,ri,mi: integer; begin li: =1; ri: =n; while li< ri do begin mi: =(li+ri) div 2; if a[mi]< key then li: =mi+1 else ri: =mi; end; binsearch: =(a[ri]=key) end; var a,b,c: v; i,ai1,s: integer; found: boolean; begin randomize; vinit(a,'a'); sortbubble(a); vout(a,'отсортированный массив a'); vinit(b,'b'); sortbubble(b); vout(b,'отсортированный массив b'); vinit(c,'c'); sortbubble(c); vout(c,'отсортированный массив c'); s: =0; found: =false; for i: =1 to n do begin if found then if a[i]=ai1 then inc(s,ai1) else found: =false; if not found then begin found: =binsearch(b,a[i]); if found then found: =binsearch(c,a[i]); if found then begin ai1: =a[i]; inc(s,ai1) end end end; writeln('искомая сумма равна ',s); end. тестовое решение: элементы массива a 4 10 6 4 12 5 5 15 0 14 2 2 0 3 14 1 11 13 3 9 отсортированный массив a 0 0 1 2 2 3 3 4 4 5 5 6 9 10 11 12 13 14 14 15 элементы массива b 7 3 13 3 10 11 3 15 12 10 0 5 5 15 13 1 15 9 1 5 отсортированный массив b 0 1 1 3 3 3 5 5 5 7 9 10 10 11 12 13 13 15 15 15 элементы массива c 4 10 5 8 14 15 8 14 12 4 12 12 3 11 4 0 12 2 10 0 отсортированный массив c 0 0 2 3 4 4 4 5 8 8 10 10 11 12 12 12 12 14 14 15 искомая сумма равна 64
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
AkiraK66622.05.2020 21:37
-
magiklen27.04.2021 17:42
-
Нонэйм223.03.2022 08:49
-
PavelSvyatelik201711.11.2022 07:03
-
pustayai01.01.2021 00:23
-
haru200023.06.2022 20:35
-
Ням111108.05.2021 14:29
-
Zhenya218814.03.2021 02:12
-
Nagachika03.08.2021 10:55
-
andrejisaev20Andrey03.02.2023 16:35
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.