// PascalABC.NET 3.3, сборка 1634 от 14.02.2018 // Внимание! Если программа не работает, обновите версию!
begin var a:=ArrRandom(ReadInteger('n='),-11,11); a.Println; // 1 begin var s:=a.Where(t->t<0); if s.Count=0 then Writeln('1. Нет отрицательных элементов') else Writeln('1. Первый отрицательный элемент номер ', a.IndexOf(s.First)+1) end; // 2 begin var s:=a.Select((v,i)->(v,i)).Where(t->(t[0]>0) and t[0].IsEven); if s.Count=0 then Writeln('2. Нет четных положительных элементов') else begin var r:=s.Last; Writeln('2. Последний четный положительный элемент номер ',r[1]+1, ', значение ',r[0]) end end; // 3 begin var s:=a.Select((v,i)->(v,i)).Where(t->t[0] mod 5=0); if s.Count<2 then Writeln('3. Нет двух элементов, кратных 5') else Writeln('3. Номер второго элемента, кратного 5, равен ', (s.Skip(1).Take(1)).First[1]+1) end; // 4 begin var s:=a.Select((v,i)->(v,i)).Where(t->t[0]=0); if s.Count<3 then Writeln('4. Нет трех нулевых элементов') else begin s:=s.Skip(1).Take(2); Writeln('4. Количество положительных элементов между ', 'вторым и третьим нулевыми элементами равно ', a[s.First[1]+1:s.Last[1]].Where(t->t>0).Count) end end; // 5 begin var s:=a.IndexesOf(t->t>0).Take(4).Select(t->t+1); if s.Count<4 then Writeln('5. Нет четырех положительных элементов') else begin Write('5. Номера первых четырех положительных элементов: '); s.Println end end; // 6 begin var s:=a.IndexesOf(t->t<0); if s.Count=0 then Writeln('6. Нет отрицательных элементов') else Writeln('6. Номера первого и последнего отрицательных элементов: ', s.First+1,' ',s.Last+1) end; // 7 begin var s:=a.IndexesOf(t->t>0); if s.Count=0 then Writeln('7. Нет положительных элементов') else begin var i1:=s.First; s:=a.IndexesOf(t->t<0); if s.Count=0 then Writeln('7. Нет отрицательных элементов') else begin var i2:=s.Last; Writeln('7. Количество четных элементов между первым ', 'положительным и последним отрицательными элементами: ', a?[i1+1:i2].Where(t->t.IsEven).Count) end end end end.
1. С=2*Pi*R, S= Pi*R^2, V=4/3*Pi*R^3, где Pi=3,14, заданный радиус R 2. P=a+b, S=1/2*a*b, где a и b - данные катеты 3. Пусть даны координаты трех вершин треугольника A(x1;y1), B(x2;y2), C(x3;y3). Расстояние между двумя точками вычисляется по формуле Тогда периметр треугольника можно вычислить по формуле: P=sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+sqrt((x3-x1)^2+(y3-y1)^2). Площадь треугольника по формуле Герона вычисляется по формуле: , где -полу периметр треугольника. S=sqrt((sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+sqrt((x3-x1)^2+(y3-y1)^2)/2*(sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+sqrt((x3-x1)^2+(y3-y1)^2)/2-sqrt((x2-x1)^2+(y2-y1)^2))*(sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+sqrt((x3-x1)^2+(y3-y1)^2)/2-+sqrt((x3-x2)^2+(y3-y2)^2))*(sqrt((x2-x1)^2+(y2-y1)^2)+sqrt((x3-x2)^2+(y3-y2)^2)+sqrt((x3-x1)^2+(y3-y1)^2)/2-sqrt((x3-x1)^2+(y3-y1)^2)) 4. Среднее геометрическое трех чисел вычисляется по формуле или (a*b*c)^1/3
Грузовик
Зайчик
Кукла
Мяч