Всем привет! Знаете ли вы, что в некоторых учебных заведениях нашей страны начинают изучать информатику аж со второго класса? С одной стороны, это вроде бы хорошо - повышается компьютерная грамотность детей. А с другой - зачем нужна информатика в начальной школе? Вы же понимаете, что приобщать ребёнка к компьютеру в таком раннем возрасте - значит, слышать от него каждый день "Хочу свой компьютер!" А если исполнить желание своего чада, то придётся бороться с тем, что чадо забудет обо всём на свете, часами просиживая перед монитором. Поэтому, на мой взгляд, целесообразно этот предмет включать в школьную программу только с пятого класса. Но и тут возникает немало вопросов, исходя из которых я поставлю под сомнение целесообразность изучения информатики в школе. Дальше будет интересно, поэтому никуда не уходите. Что изучают на уроках информатики? Когда я вспоминаю уроки информатики в своей школе (мы её начали изучать лишь с 9 класса), мне представляются страшные на вид (но, наверное, шибко умные для той поры) компьютеры с чёрно-белым маленьким монитором и грязно-жёлтыми системными блоками с отверстием для дискет. Я не знаю, на что они были но мы на них печатали текст и играли в какую-то примитивную игрушку (наподобие тетриса). В дальнейшем у нас появились новые компьютеры с цветными мониторами. Это был настоящий прогресс, и в то время я впервые увидел, как пользоваться мышкой... Что же изучали мы на уроках информатики? Язык программирования Бэйсик, навыки работы в Word, игра "Как достать соседа" - вот всё, что я помню из 3-летнего курса информатики в школе. Из этого набора мне пригодилось только второе, а всё остальное было забыто за ненадобностью. Изменилась ли ситуация сейчас? Для ответа на этот вопрос нужно заглянуть в современные учебники по информатике. Для примера я возьму серию учебников для 5-9 классов (2013 год, автор Босова Л.Л.) и учебники для 10-11 классов (2013 год, автор Семакин И.Г.).
const n=5; var a:array[1..n,1..n] of integer; x:array[1..n] of double; i,j,k:byte; begin Randomize; Writeln('*** Исходный массив ***'); for i:=1 to n do begin for j:=1 to n do begin a[i,j]:=Random(51)-25; Write(a[i,j]:4) end; Writeln end; Writeln('*** Массив x ***'); for j:=1 to n do begin x[j]:=0; k:=0; for i:=1 to n do if a[i,j] mod 2=0 then begin x[j]:=x[j]+a[i,j]; Inc(k) end; if k>0 then x[j]:=x[j]/k; Write(x[j]:0:5,' ') end; Writeln end.
const
n=5;
var
a:array[1..n,1..n] of integer;
x:array[1..n] of double;
i,j,k:byte;
begin
Randomize;
Writeln('*** Исходный массив ***');
for i:=1 to n do begin
for j:=1 to n do begin
a[i,j]:=Random(51)-25;
Write(a[i,j]:4)
end;
Writeln
end;
Writeln('*** Массив x ***');
for j:=1 to n do begin
x[j]:=0; k:=0;
for i:=1 to n do
if a[i,j] mod 2=0 then begin
x[j]:=x[j]+a[i,j]; Inc(k)
end;
if k>0 then x[j]:=x[j]/k;
Write(x[j]:0:5,' ')
end;
Writeln
end.
Тестовое решение:
*** Исходный массив ***
-10 18 -8 -15 5
-21 -18 6 -2 9
-7 22 -4 3 14
21 16 -10 -18 -9
17 3 -14 -18 12
*** Массив x ***
-10.00000 9.50000 -6.00000 -12.66667 13.00000