Предмет: Информатика,
автор: spiridonovnout
Дано целое число N – количество элементов массива.
Вывести те цифры элементов массива, которые содержатся хотя бы в одном из разрядов сотен.Паскаль,задачи надо решать с помощью множеств
Ответы
Автор ответа:
0
1. "Современный вариант"
// 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 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
Автор ответа:
0
Специально два варианта, чтобы понять: в школе учат решать так, как решать не нужно: длинно и запутанно, следовательно это и сложнее написать без ошибок, и отладить, и объяснить, и понять.
Автор ответа:
0
http://znanija.com/task/15364900 такие решаете?
Автор ответа:
0
http://znanija.com/task/15364928
Похожие вопросы
Предмет: Обществознание,
автор: WaifuX
Предмет: Литература,
автор: Аноним
Предмет: История,
автор: messileonid123
Предмет: Алгебра,
автор: Lenusik1057
Предмет: Математика,
автор: RyofuHosen