{#1 Деление на числа меньше 7}
begin
var F: boolean;
var a: integer; read(a);
for var x := 7 downto 1 do
F := (a mod x = 0) ? true : false;
if F <> true then break;
end;
end.
{#2 Находится ли точка внутри окружности}
var z: cardinal;
var x,y: double; read(x,y,z);
x := (x<1)? x*-1:x;
y := (y<1)? y*-1:y;
if (x<z) and (y<z) then
F := true;
{#3 В трехзначном числе есть три одинаковые цифры}
var n: integer; read(n);
var s := n.ToString;
if (s[1] = s[2])
or (s[2] = s[3])
or (s[1] = s[3]) then
{#4 Точки лежат на одной прямой}
var x1,y1,x2,y2,x3,y3: integer;
read (x1,y1,x2,y2,x3,y3);
if (x2 - x1)*(y3 - y1) - (x3 - x1)*(y2 - y1) = 0 then
{#5 Х или трёхзначное чётное число или четырёхзначное нечётное}
var x:integer; read(x);
var s:=x.ToString;
if ((length(s) = 3) and (x mod 2 = 0)) or ((length(s) = 4) and (x mod 2 <> 0)) then
using System;
using System.Linq;
namespace restless
{
class Program
static double Average(double[] arr)
double _sum = 0;
for (int i = 0; i < arr.Length; i++)
_sum += arr[i];
return _sum / arr.Length;
}
static Tuple<double, double> SumProdToLastPositive(double[] arr)
double _sum = 0, _prod = 1;
int i = arr.Length - 1;
while(arr[i] <= 0)
i--;
for (int j = 0; j <= i; j++)
_sum += arr[j];
_prod *= arr[j];
return Tuple.Create(_sum, _prod);
static double[] RemoveElements(double[] arr, double a, double b)
int startSize = arr.Length;
var tmp = arr.Cast<double>().ToList();
for (int i = 0; i < tmp.Count; i++)
if (arr[i] >= a && arr[i] <= b)
tmp.Remove(arr[i]);
arr[i] = tmp[i];
for (int i = tmp.Count; i < startSize; i++)
arr[i] = 0;
return arr;
static void Main()
Random rnd = new Random();
double[] arr = new double[10];
Console.WriteLine("Введите элементы массива (каждый на новой строке): ");
for (int i = 0; i < 10; i++)
arr[i] = Convert.ToDouble(Console.ReadLine());
/*Для удобства проверки сделана генерация только целых чисел*/
Console.Write("Исходный массив: ");
Console.Write($"{arr[i]} ");
Console.WriteLine();
//функция, которая вернет нам среднее арифметическое
Console.WriteLine($"Среднее арифметическое: {Average(arr)}");
//функция, которая вернет нам сумму и произведение элементов до последнего положительного
Console.WriteLine($"Сумма и произведение до последнего положительного: {SumProdToLastPositive(arr)}");
/*Последняя функция возвращает массив, мы его запишем в переменную g, а затем выведем на экран.
Хотя можно было передать массив с модификатором ref и изменять его, ну так тоже пойдёт.
*/
Console.Write("Изменённый массив после удаления элементов из промежутка [a, b]: ");
var g = RemoveElements(arr, 2.0, 5.0);
for (int i = 0; i < g.Length; i++)
Console.Write(g[i] + " ");
{#1 Деление на числа меньше 7}
begin
var F: boolean;
var a: integer; read(a);
for var x := 7 downto 1 do
begin
F := (a mod x = 0) ? true : false;
if F <> true then break;
end;
end.
{#2 Находится ли точка внутри окружности}
begin
var F: boolean;
var z: cardinal;
var x,y: double; read(x,y,z);
x := (x<1)? x*-1:x;
y := (y<1)? y*-1:y;
if (x<z) and (y<z) then
F := true;
end.
{#3 В трехзначном числе есть три одинаковые цифры}
begin
var F: boolean;
var n: integer; read(n);
var s := n.ToString;
if (s[1] = s[2])
or (s[2] = s[3])
or (s[1] = s[3]) then
F := true;
end.
{#4 Точки лежат на одной прямой}
begin
var F: boolean;
var x1,y1,x2,y2,x3,y3: integer;
read (x1,y1,x2,y2,x3,y3);
if (x2 - x1)*(y3 - y1) - (x3 - x1)*(y2 - y1) = 0 then
F := true;
end.
{#5 Х или трёхзначное чётное число или четырёхзначное нечётное}
begin
var F: boolean;
var x:integer; read(x);
var s:=x.ToString;
if ((length(s) = 3) and (x mod 2 = 0)) or ((length(s) = 4) and (x mod 2 <> 0)) then
F := true;
end.
using System;
using System.Linq;
namespace restless
{
class Program
{
static double Average(double[] arr)
{
double _sum = 0;
for (int i = 0; i < arr.Length; i++)
_sum += arr[i];
return _sum / arr.Length;
}
static Tuple<double, double> SumProdToLastPositive(double[] arr)
{
double _sum = 0, _prod = 1;
int i = arr.Length - 1;
while(arr[i] <= 0)
{
i--;
}
for (int j = 0; j <= i; j++)
{
_sum += arr[j];
_prod *= arr[j];
}
return Tuple.Create(_sum, _prod);
}
static double[] RemoveElements(double[] arr, double a, double b)
{
int startSize = arr.Length;
var tmp = arr.Cast<double>().ToList();
for (int i = 0; i < tmp.Count; i++)
{
if (arr[i] >= a && arr[i] <= b)
{
tmp.Remove(arr[i]);
}
}
for (int i = 0; i < tmp.Count; i++)
{
arr[i] = tmp[i];
}
for (int i = tmp.Count; i < startSize; i++)
arr[i] = 0;
return arr;
}
static void Main()
{
Random rnd = new Random();
double[] arr = new double[10];
Console.WriteLine("Введите элементы массива (каждый на новой строке): ");
for (int i = 0; i < 10; i++)
arr[i] = Convert.ToDouble(Console.ReadLine());
/*Для удобства проверки сделана генерация только целых чисел*/
Console.Write("Исходный массив: ");
for (int i = 0; i < 10; i++)
{
Console.Write($"{arr[i]} ");
}
Console.WriteLine();
//функция, которая вернет нам среднее арифметическое
Console.WriteLine($"Среднее арифметическое: {Average(arr)}");
//функция, которая вернет нам сумму и произведение элементов до последнего положительного
Console.WriteLine($"Сумма и произведение до последнего положительного: {SumProdToLastPositive(arr)}");
/*Последняя функция возвращает массив, мы его запишем в переменную g, а затем выведем на экран.
Хотя можно было передать массив с модификатором ref и изменять его, ну так тоже пойдёт.
*/
Console.Write("Изменённый массив после удаления элементов из промежутка [a, b]: ");
var g = RemoveElements(arr, 2.0, 5.0);
for (int i = 0; i < g.Length; i++)
Console.Write(g[i] + " ");
}
}
}