36559

Понятие о языках программирования

Контрольная

Информатика, кибернетика и программирование

Мы все несомненно имеем некоторое представление о языке как средстве общения. Русский английский или японский язык это естественные языки общения людей созданные в процессе длительной эволюции. Однако наряду с естественными языками современная цивилизация широко использует так называемые искусственные или формальные языки.

Русский

2013-09-22

31.5 KB

5 чел.

Понятие о языках программирования.

Мы все, несомненно, имеем некоторое представление о языке, как средстве общения. Русский, английский или японский язык - это естественные языки общения людей, созданные в процессе длительной эволюции. Однако наряду с естественными языками современная цивилизация широко использует так называемые искусственные (или формальные) языки. Примерами формальных языков являются язык дорожных знаков, язык арифметических формул и многие другие. В общем случае язык - это не просто набор символов, слов или предложений. Язык всегда имеет внутреннюю структуру (синтаксис), т.е. правила построения своих конструкций (слов, фраз) и семантику, определяющую смысл конструкций языка.

В естественных языках семантика определяется неформально, так что смысл слова или фразы зависит, в том числе и от "окружения", т.е. от соседних слов и фраз и сформулировать семантические правила практически невозможно.

В формальных языках и синтаксис и семантика характеризуются строгими правилами (например, дорожный знак "кирпич" имеет точный смысл - запрет въезда). С точки зрения семантики формальные языки проще естественных. Компьютеры (точнее компьютерные программы) способны "понимать" только формальные языки, поскольку только формальная семантика может дать алгоритм "приписывания смысла" любой языковой конструкции.

Любая программа общается с пользователем на некотором формальном языке, даже если он называется "подмножеством естественного языка". Система команд компьютера также является формальным языком. Этот язык носит название машинного языка. Процессор компьютера способен понимать непосредственно только машинный язык (который для него является "естественным").

Каждая команда - некоторый достаточно длинный набор цифр, которые кодируют название операции, адреса операндов и результата операции. Писать безошибочно последовательности таких команд весьма сложно и малопроизводительно. Поэтому уже на заре программирования весьма актуальным вопросом стало создание языков программирования более высокого уровня.

Программисты обычно пишут тексты программ на языке программирования высокого уровня. Это также формальный язык, однако, занимающий промежуточное положение между естественным языком человека и машинным языком. Он более удобен для человека, чем машинный язык, однако, его неспособен непосредственно понимать процессор. Процессор оказывается примерно в такой же ситуации, как Вы, приехав в страну, где говорят на языке, который Вы не понимаете. Какой выход из этого положения? Очевидно, необходим переводчик с языка программирования на машинный язык. Таким переводчиком является специальная программа (входящая в состав программного обеспечения компьютера), называемая транслятором. Транслятор переводит текст программы с языка программирования на машинный язык. Все программы, написанные на языке высокого уровня, обычно проходят предварительно трансляцию в машинный код, который затем исполняется на процессоре. Такой транслятор называется компилятором. Транслятор - основная часть системы программирования, в которую обычно входят также средства редактирования, отладки, оптимизации, документирования программ.

Существует много различных языков программирования высокого уровня - Бейсик, Фортран, С, Паскаль и др. и соответствующих систем программирования. Мы в дальнейшем будем иметь дело исключительно с языком Паскаль - одним из лучших и популярных языков программирования.

Задача 4.2.6(27)

program Project27;

type mas=array[1..5,1..5] of Integer;

mass=array[1..5]of integer;

var a:mas;

b:mass;

i,j:Integer;

procedure p(x:mas; e:Integer; var y:integer);

var i,j,k:Integer;

begin

k:=0;

for i:=1 to 5 do

if x[i,e]<=x[e,e] then k:=k+1;

if k=5 then y:=1

else y:=0;

end;

begin

for i:=1 to 5 do

for j:=1 to 5 do

read(a[i,j]);

writeln;

for i:=1 to 5 do

begin

p(a,i,b[i]);

write(b[i],' ');

end;

 Readln;

end.


 

А также другие работы, которые могут Вас заинтересовать

72601. Права работников антимонопольного органа при проведении проверок соблюдения антимонопольного законодательства. Обязанность представления информации в антимонопольный орган 12.97 KB
  При осуществлении контроля за соблюдением антимонопольного законодательства работники антимонопольного органа в соответствии с возложенными на них полномочиями при предъявлении ими служебных удостоверений и приказа руководителя антимонопольного органа о проведении проверки соблюдения...
72602. Сущность монополии. Монополия и юридическое лицо 17.61 KB
  Господство в экономике служит основой того влияния которое монополии оказывают на все сферы жизни страны. Следовательно главным признаком монопольного образования монополии является занятие монопольного положения.
72603. Сочетание монополии и конкуренции. Основные типы монополий 16.5 KB
  Монополией называют чаще всего крупную корпорацию, которая сосредоточивает в своих руках значительную долю производства и сбыта товаров и господствует на рынке с целью извлечения высокой прибыли. В данном случае речь идет о хозяйственной монополии.
72604. Понятие и виды монополистической деятельности. Монополистическая деятельность и свобода предпринимательства 16.23 KB
  Понятие и виды монополистической деятельности на товарном рынке Под монополистической деятельностью понимаются противоречащие антимонопольному законодательству действия бездействие хозяйствующих субъектов или федеральных органов исполнительной власти органов исполнительной власти субъектов...
72605. Запрет на ограничивающие конкуренцию соглашения или согласованные действия хозяйствующих субъектов 19 KB
  Речь идет о положениях ч. 1 комментируемой статьи, согласно которым запрещаются соглашения между хозяйствующими субъектами или согласованные действия хозяйствующих субъектов на товарном рынке, если такие соглашения или согласованные действия приводят или могут привести к: установлению или поддержанию цен...
72606. Допустимость «вертикальных» соглашений 13.05 KB
  Допускаются вертикальные соглашения в письменной форме за исключением вертикальных соглашений между финансовыми организациями если эти соглашения являются договорами коммерческой концессии. Допускаются вертикальные соглашения между хозяйствующими субъектами за исключением вертикальных...
72607. Комиссия по рассмотрению дел о нарушении антимонопольного законодательства. Акты, принимаемые комиссией 14.22 KB
  Состав комиссии и ее председатель утверждаются антимонопольным органом. Председателем комиссии может быть руководитель антимонопольного органа или его заместитель. Количество членов комиссии не должно быть менее чем три человека. Замена члена комиссии осуществляется на основании мотивированного...
72608. Сделки с акциями (долями), активами финансовых организаций и правами в отношении финансовых организаций с предварительного согласия антимонопольного органа 13.72 KB
  С предварительного согласия антимонопольного органа осуществляются следующие сделки с акциями долями активами финансовой организации или правами в отношении финансовой организации: приобретение лицом группой лиц голосующих акций акционерного общества если такое лицо группа лиц получает право...
72609. Особенности государственного контроля за экономической концентрацией, осуществляемой группой лиц 14.13 KB
  Закон о защите конкуренции устанавливает упрощенные правила контроля за экономической концентрацией для сделок иных действий которые совершаются лицами входящими в одну группу. Основание для упрощения правил – наличие между лицами входящими в одну группу тесной организационной...