1 Найти Кощея
2 Убить кощея кислотой
3 Скрыть труп Кощея
Идея компьютера была предложена английским математиком Чарльзом Бэбиджем (Charles Babage) в середине девятнадцатого века. Его механическая «аналитическая машина» так и не смогла по-настоящему заработать, потому что технологии того времени не удовлетворяли требованиям, необходимым для изготовления нужных деталей точной механики. Конечно, никакой речи об операционной системедля этого «компьютера» не шло. Настоящее рождение цифровых вычислительных машин произошло вскоре после окончания Второй мировой войны. В середине 40-х были созданы первые ламповые вычислительные устройства. В то время одна и та же группа людей участвовала и в проектировании, и в эксплуатации, и в программировании вычислительной машины. Это была скорее научно-исследовательская работа в области вычислительной техники, а не использование компьютеров в качестве инструмента решения каких-либо практических задач из других прикладных областей. Программирование осуществлялось исключительно на машинном языке. Не было никакогосистемного программного обеспечения, кроме библиотек математических и служебных подпрограмм, которые программист мог использовать для того, чтобы не писать каждый раз коды, вычисляющие значение какой-либо математической функции или управляющие стандартным устройством ввода-вывода.Операционные системывсе еще не появились, все задачи организации вычислительного процесса решались вручную каждым программистом с пульта управления, который представлял собой примитивное устройство ввода-вывода, состоящее из кнопок, переключателей и индикаторов. С середины 50-х годов начался новый период в развитии вычислительной техники, связанный с появлением новой технической базы. Выросло быстродействиепроцессоров, увеличились объемыоперативнойи внешней памяти. Компьютеры стали более надежными, теперь они могли непрерывно работать настолько долго, чтобы на них можно было возложить выполнение действительно практически важных задач. Но выполнение каждой программы включало в себя большое количество вспомогательных работ (загрузка, запуск, получение результирующей программы в машинных кодах и т.д.), поэтому для организации эффективного совместного использования были введены должности операторов, профессионально выполнявших работу по организации вычислительного процесса для всех пользователей этого центра.
Const n=10; m=5;
var a:array[1..n,1..m+1] of integer;
i,j,k,sp,s:integer;
begin
Randomize;
writeln(' Результаты соревнований');
for i:=1 to n do
begin
s:=0;
for j:=1 to m do
begin
a[i,j]:=random(50)+50;
write(a[i,j]:4);
s:=s+a[i,j];
end;
a[i,m+1]:=s;
writeln(s:5);
end;
write('k='); readln(k);
sp:=0;
for i:=1 to n do
if a[i,m+1]>=k then sp:=sp+1;
writeln('sp=',sp);
end.
Пример:
Результаты соревнований
69 52 91 62 65 339
70 53 96 56 97 372
78 98 94 61 62 393
62 86 50 58 95 351
82 98 53 56 81 370
75 64 56 85 54 334
69 99 53 72 97 390
55 75 66 59 61 316
99 71 83 75 51 379
91 73 53 88 79 384
k=350
sp=7
// PascalABC.NET 3.2, сборка 1488 от 21.06.2017
// Внимание! Если программа не работает, обновите версию!
№1
begin
var a:=ArrRandom(ReadInteger('n='),-5,5); a.Println;
Writeln('Количество различных злементов равно ',
a.Distinct.Count)
end.
Пример
n= 20
-1 -1 5 -3 0 5 5 -5 -2 -4 -1 -2 -2 -2 2 -2 -3 1 2 1
Количество различных злементов равно 9
№2
begin
var (m,n):=ReadInteger2('Количество строк и столбцов в массиве:');
Writeln('Вводите элементы построчно');
var t:=ReadMatrInteger(m,n).ElementsWithIndexes.MinBy(x->x[0]);
Writeln('Минимальный элемент A[',t[1]+1,',',t[2]+1,']=',t[0])
end.
Пример
Количество строк и столбцов в массиве: 3 4
Вводите элементы построчно
5 -11 0 9
12 7 -12 0
8 23 6 20
Минимальный элемент A[2,3]=-12