Компьютер — самый необычный инструмент из всех придуманных человеком. Он используется не в материальной, а в умственной, интеллектуальной деятельности людей разных профессий: экономистов, конструкторов, переводчиков, психологов, физиков, художников...
Возможности своего интеллектуального человек постоянно старается расширить. Для этого не только совершенствуется оборудование, «железо» компьютера, но и создаются новые компьютерные программы, программные средства. Эти программы составляются программистами — специалистами в области информатики.
Зачем нужны компьютерные программы? Компьютер часто называют «умной» машиной, однако он не обладает человеческим разумом. Человек действует, когда захочет этого сам, или по заданию других людей. Компьютер ничего не делает «по собственному хотению». Все действия он выполняет только по заданию человека. Для управления действиями компьютера и предназначены компьютерные программы.
Могут ли программисты составлять компьютерные программы без участия других специалистов? Пусть, например, программа предназначена для авиаконструктора или модельера-парикмахера, тогда программисту потребуется представителей этих профессий. Только специалисты смогут подробно рассказать, с какими предметами, персонажами и явлениями они имеют дело в своей работе, что может происходить со всеми этими объектами, как принимаются решения. На месте такого специалиста может оказаться в будущем любой из вас, какую бы профессию он ни выбрал.
Может ли человек, не изучавший информатику, рассказать о своей работе, учебе или любимой игре? Наверное, да. Но одно дело, когда рассказ предназначен для другого человека, и совсем другое, когда сведения нужны для создания компьютерной программы. Объясняя что-то людям, мы можем не вдаваться в какие-то подробности, полагаясь на их опыт, знания, сообразительность. В описаниях, которые составляются при создании компьютерных программ, не должно быть ничего лишнего, но в то же время они не могут полагаться на чей-то опыт или смекалку.
И еще: эти описания нужно представить не в форме устного рассказа или повести, а в виде наглядных и компактных схем, таблиц, списков. Составлению таких «компьютерных» описаний нужно специально учиться — изучать информатику. Полученные знания и умения можно использовать не только при создании компьютерных программ. Они пригодятся всем, кому приходится составлять описания, инструкции, объяснения. А ведь делать это приходится практически каждому человеку — в любом возрасте и в самых различных ситуациях.
{ Boland Pascal 7.01 } uses Crt; const n=20; var a,b:array[1..n] of integer; i,k:integer; begin ClrScr; Randomize; Writeln('*** Исходный массив ***'); k:=0; for i := 1 to n do begin a[i]:=Random(51)-25; Write(a[i]:4); if Odd(a[i]) and (a[i]>0) then begin Inc(k); b[k]:=a[i] end end; Writeln; if k>0 then begin Writeln('*** Сформированный массив ***'); for i:=1 to k do Write(b[i]:4); Writeln end else Writeln('Нет элементов для формирования выходного массива'); ReadKey end.
А вот для сравнения современный вариант программы: // PascalABC.NET 3.0, сборка 1088 begin var n:=ReadInteger('Размер массива='); var a:=ArrRandom(n,-25,25); Writeln('*** Исходный массив ***',#13#10,a); var b:=a.Where(x->(Odd(x) and (x>0))); If b.Count>0 then Writeln('*** Сформированный массив ***',#13#10,b) else Writeln('Нет элементов для формирования выходного массива') end.
Возможности своего интеллектуального человек постоянно старается расширить. Для этого не только совершенствуется оборудование, «железо» компьютера, но и создаются новые компьютерные программы, программные средства. Эти программы составляются программистами — специалистами в области информатики.
Зачем нужны компьютерные программы? Компьютер часто называют «умной» машиной, однако он не обладает человеческим разумом. Человек действует, когда захочет этого сам, или по заданию других людей. Компьютер ничего не делает «по собственному хотению». Все действия он выполняет только по заданию человека. Для управления действиями компьютера и предназначены компьютерные программы.
Могут ли программисты составлять компьютерные программы без участия других специалистов? Пусть, например, программа предназначена для авиаконструктора или модельера-парикмахера, тогда программисту потребуется представителей этих профессий. Только специалисты смогут подробно рассказать, с какими предметами, персонажами и явлениями они имеют дело в своей работе, что может происходить со всеми этими объектами, как принимаются решения. На месте такого специалиста может оказаться в будущем любой из вас, какую бы профессию он ни выбрал.
Может ли человек, не изучавший информатику, рассказать о своей работе, учебе или любимой игре? Наверное, да. Но одно дело, когда рассказ предназначен для другого человека, и совсем другое, когда сведения нужны для создания компьютерной программы. Объясняя что-то людям, мы можем не вдаваться в какие-то подробности, полагаясь на их опыт, знания, сообразительность. В описаниях, которые составляются при создании компьютерных программ, не должно быть ничего лишнего, но в то же время они не могут полагаться на чей-то опыт или смекалку.
И еще: эти описания нужно представить не в форме устного рассказа или повести, а в виде наглядных и компактных схем, таблиц, списков. Составлению таких «компьютерных» описаний нужно специально учиться — изучать информатику. Полученные знания и умения можно использовать не только при создании компьютерных программ. Они пригодятся всем, кому приходится составлять описания, инструкции, объяснения. А ведь делать это приходится практически каждому человеку — в любом возрасте и в самых различных ситуациях.
uses Crt;
const
n=20;
var
a,b:array[1..n] of integer;
i,k:integer;
begin
ClrScr;
Randomize;
Writeln('*** Исходный массив ***');
k:=0;
for i := 1 to n do begin
a[i]:=Random(51)-25;
Write(a[i]:4);
if Odd(a[i]) and (a[i]>0) then
begin Inc(k); b[k]:=a[i] end
end;
Writeln;
if k>0 then begin
Writeln('*** Сформированный массив ***');
for i:=1 to k do Write(b[i]:4);
Writeln
end
else Writeln('Нет элементов для формирования выходного массива');
ReadKey
end.
Тестовое решение:
*** Исходный массив ***
-3 -16 -9 20 18 11 -25 14 -22 -20 -11 15 -19 20 -16 19 -2 -4 -8 -17
*** Сформированный массив ***
11 15 19
А вот для сравнения современный вариант программы:
// PascalABC.NET 3.0, сборка 1088
begin
var n:=ReadInteger('Размер массива=');
var a:=ArrRandom(n,-25,25);
Writeln('*** Исходный массив ***',#13#10,a);
var b:=a.Where(x->(Odd(x) and (x>0)));
If b.Count>0 then Writeln('*** Сформированный массив ***',#13#10,b)
else Writeln('Нет элементов для формирования выходного массива')
end.
Тестовое решение:
Размер массива=20
*** Исходный массив ***
[-9,-1,8,-7,13,0,-22,20,18,-15,9,-14,16,15,0,1,9,-17,22,-13]
*** Сформированный массив ***
[13,9,15,1,9]
Исправлено: по " трудящихся" добавлена блок-схема.