3. Составить код программы на языке программирования Python.Составить программу вычисления площади параллелограмма по известным значениям основания а, высота h.
Первый алгоритм: const n=30; var a:array[1..30] of integer; s:longint; i:integer; begin { формируем массив } Randomize; Writeln('Элементы массива:'); for i:=1 to n do begin a[i]:=Random(51)-25; Write(a[i]:4) end; Writeln; { собственно, алгоритм } s:=a[1]*a[2]; i:=3; while i<=n-1 do begin s:=s+a[i]*a[i+1]; i:=i+2 end; Writeln('Сумма пар произведений равна ',s) end.
Тестовое решение: Элементы массива: 1 10 -9 -12 -2 20 21 14 5 19 21 -14 -10 -17 5 -9 -8 17 18 11 -21 -3 -15 -10 -15 -16 -15 2 3 21 Сумма пар произведений равна 846
Второй алгоритм const n=30; var a:array[1..30] of integer; smax,imax:longint; i:integer; begin { формируем массив } Randomize; Writeln('Элементы массива:'); for i:=1 to n do begin a[i]:=Random(51)-25; Write(a[i]:4) end; Writeln; { собственно, алгоритм } smax:=a[1]+a[2]; imax:=1; for i:=2 to n-1 do if smax<a[i]+a[i+1] then begin smax:=a[i]+a[i+1]; imax:=i end; Writeln('Номер первого из пары элементов с максимальной суммой: ',imax) end.
Тестовое решение: Элементы массива: 23 13 -11 -1 -18 20 -23 1 -21 -10 7 15 -2 24 -18 -22 -13 12 -16 22 19 -14 -14 -14 19 15 8 -15 -19 -22 Номер первого из пары элементов с максимальной суммой: 20
const
n=30;
var
a:array[1..30] of integer;
s:longint;
i:integer;
begin
{ формируем массив }
Randomize;
Writeln('Элементы массива:');
for i:=1 to n do
begin a[i]:=Random(51)-25; Write(a[i]:4) end;
Writeln;
{ собственно, алгоритм }
s:=a[1]*a[2]; i:=3;
while i<=n-1 do
begin s:=s+a[i]*a[i+1]; i:=i+2 end;
Writeln('Сумма пар произведений равна ',s)
end.
Тестовое решение:
Элементы массива:
1 10 -9 -12 -2 20 21 14 5 19 21 -14 -10 -17 5 -9 -8 17 18 11 -21 -3 -15 -10 -15 -16 -15 2 3 21
Сумма пар произведений равна 846
Второй алгоритм
const
n=30;
var
a:array[1..30] of integer;
smax,imax:longint;
i:integer;
begin
{ формируем массив }
Randomize;
Writeln('Элементы массива:');
for i:=1 to n do
begin a[i]:=Random(51)-25; Write(a[i]:4) end;
Writeln;
{ собственно, алгоритм }
smax:=a[1]+a[2]; imax:=1;
for i:=2 to n-1 do
if smax<a[i]+a[i+1] then
begin smax:=a[i]+a[i+1]; imax:=i end;
Writeln('Номер первого из пары элементов с максимальной суммой: ',imax)
end.
Тестовое решение:
Элементы массива:
23 13 -11 -1 -18 20 -23 1 -21 -10 7 15 -2 24 -18 -22 -13 12 -16 22 19 -14 -14 -14 19 15 8 -15 -19 -22
Номер первого из пары элементов с максимальной суммой: 20
Язык C++. В памяти несколько косячно хранятся вещественные числа, поэтому пришлось сделать следующие параметры в цикле.
#include <stdio.h>
#include <math.h>
float f(float x) {
return 2*acosf(x/2)+x*logf(tanf(x/2));
}
void main() {
float Y[10];
float a, b;
float summ=0;
int c = 0;
for (float i = 0.1; i < 2; i+=0.2)
Y[c++] = f(i);
printf_s("a,b - ?");
scanf_s("%f", &a);
scanf_s("%f", &b);
for (int i = 0; i < 10; i++)
if (a<= Y[i] && Y[i] <=b)
summ += Y[i];
printf_s("summ: %f",summ);
}