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.


 

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

71699. Модуляция 1.88 MB
  Передаваемая информация заложена в управляющем (модулирующем) сигнале, а роль переносчика информации выполняет высокочастотное колебание, называемое несущим. Модуляция, таким образом, представляет собой процесс «посадки» информационного колебания на заведомо известную несущую.
71701. Технология помехоустойчивого кодирования 64.71 KB
  При передаче информации в пространстве или во времени имеет место где вектор ошибки знак обозначает суммирование по модулю 2. 3 Вектор в 3 называемый синдромом будет равен вектору нуль только в двух случаях: либо ошибки нет либо имеет место так называемая необнаруживаемая ошибка.
71702. Модуляция гармонических колебаний 540.84 KB
  Под модуляцией понимают процесс изменения одного или нескольких параметров физического процесса по закону передаваемого сообщения. Так, например, если моделью физического процесса является функция f(a, b, c, d, t), то параметры a, b, c, d можно использовать для осуществления модуляции.
71703. ПРОЦЕССЫ 503.52 KB
  В головном процессе создаются/открываются два файла: текстовый (несколько строк) и двоичный (ряд арифметических данных). Информация об открытых файлах (дескрипторы) передается в дочерние процессы на этапе их создания через командную строку.
71704. Решение задачи классификация и регрессии с помощью деревьев решений 136.54 KB
  Цель работы: изучение алгоритмов построения деревьев решений; создание и исследование классификационных и регрессионных моделей с помощью деревьев решений Индивидуальное задание: seeds Data Set Attribute Information: To construct the data, seven geometric parameters of wheat...
71706. Модуляция 602 KB
  Определить зависимость качества модуляции сигнала от уровня шума. Исходные данные На рисунке 1 представлена Sмодель: Модуляция гармонических колебаний которая позволяет изменять тип модуляции ее параметры например частоту а также параметры канала связи...
71707. Доступ к базам данных из программ на языке Java 378 KB
  Операции с данными в SQL Операции с данными позволяют получить значения одно нескольких или всех полей базы данных а также добавлять или удалять записи строки из таблицы либо изменять значения полей таблицы.