<h3>PascalABC.NET 3.4.2, сборка 1859 от 08.11.2018</h3><h3>Внимание! Если программа не работает, обновите версию!</h3>
begin
var X := ArrRandom(ReadInteger('A='), -21, 21);
X.Println;
X.Sorted.Println;
X.Where(t -> t.IsOdd).OrderDescending.Println
end.
<h3>A= 18</h3><h3>9 9 -10 21 -11 -13 -2 19 5 20 -5 20 11 -6 -2 -10 14 -12</h3><h3>-13 -12 -11 -10 -10 -6 -5 -2 -2 5 9 9 11 14 19 20 20 21</h3><h3>21 19 11 9 9 5 -5 -11 -13</h3>
// процедура обмена значений переменных а и b
procedure swapp(var a,b:integer);
var c: integer;
begin
c:=a;
a:=b;
b:=c;
end;
// основная программа
var a,b,c: integer;
begin
write('числа a b c через пробел: ');
readln(a,b,c);
if a>b then swapp(a,b);
if b>c then swapp(b,c);
writeln('среднее по значению: ',b);
end.
Ввод -вывод:
числа a b c через пробел: 25 14 18
среднее по значению: 18
// PascalABC.NET 3.1, сборка 1192 от 07.03.2016
begin
var a:=ArrRandom(10,-40,40); a.Println;
a.SortedDescending.Println
end.
<u><em>Тестовое решение:</em></u>
20 -32 1 3 0 21 -14 21 32 -6
32 21 21 20 3 1 0 -6 -14 -32
Ответ:
#include <iostream>
#include <conio.h>
#include <cstdlib>
#include <ctime>
using namespace std;
void Function()
{
int number;
srand(time(0));
cout << "Введите число" << endl;
for (;;)
{
cin >> number;
if (number == 0)
{
break;
}
for (;;)
{
int x = rand();
if (x < number)
{
cout << x << endl;
break;
}
}
}
}
int main()
{
setlocale(LC_ALL, "Russian");
Function();
_getch();
return 0;
}
Объяснение:
Подбирает каждай раз рандомное число , пока оно не станет меньше чем ввел пользователь. (Отрицательные числа не вводить, т.к rand генерирует только положительные, хотя можно и подшаманить чтобы генерировал отрицательные)