// PascalABC.NET 3.0, сборка 1076 begin var n:=ReadInteger('Введите количество элементов массива: '); var a:=ArrRandom(n,1000,10000); Write('Исходный массив: ',a,#13#10); Write('Множество цифр из разряда сотен: '); a.Select(x->(x mod 1000) div 100).Sorted.Distinct.Println(',') end.
Тестовое решение: Введите количество элементов массива: 8 Исходный массив: [9374,4420,8856,8274,7555,2461,8302,6325] Множество цифр из разряда сотен: 2,3,4,5,8
2. "Школьный вариант"
// PascalABC.NET 3.0, сборка 1076 var i,n:integer; sd:set of 0..9; a:array[1..50] of integer; begin Write('Введите количество элементов массива: '); Read(n); Randomize; Write('Исходный массив: '); sd:=[]; for i:=1 to n do begin a[i]:=Random(9001)+1000; Write(a[i],' '); Include(sd,(a[i] mod 1000) div 100) end; Writeln; Write('Множество цифр из разряда сотен: '); for i:=0 to 9 do if i in sd then Write(i:2); Writeln end.
Тестовое решение: Введите количество элементов массива: 8 Исходный массив: 5332 4215 7231 3399 6989 8904 7804 3517 Множество цифр из разряда сотен: 2 3 5 8 9
//PascalABC.NET //Дан целочисленный массив из 40 элементов. Элементы массива могут //принимать значения от -10000 до 10000. Написать алгоритм, который //находит и выводит среднее арифметическое всех отрицательных элементов //массива, оканчивающихся цифрой 7. Гарантируется, что хотя бы один //такой элемент в массиве есть. Исходные данные объявлены так, как //показано ниже. Запрещается использовать переменные, не описанные //ниже, но разрешается не использовать часть из них.
const N = 40; var //a : array[1..N] of integer; i, s, r, x : integer; sr: real; begin //Для любителей заполнять вручную: //for i := 1 to 40 do readln(a[i]);
//Заполним массив 40-ка случайными значениями var a := ArrRandomInteger(N+1, -10000, 10000); //Гарантировано разместим число, оканчивающееся на 7 a[Random(0,40)] := -10 * Random(0,999) - 7; //Уберем лишний элемент, созданный автоматически a[0] := 0; //Напечатаем массив a.println; writeln('----------------'); //Просмотрим весь массив и найдя отрицательное, оканчивающееся на 7 //число, учтём его foreach i in a do if (i < 0) and (i mod 10 = -7) then begin r += i; s += 1; write(i,' ') end; //Выведем среднее арифметическое writeln('Ср.ар: ',r/s) end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку