Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Уроки программирования на Turbo Pascal


Информационный Канал Subscribe.Ru


Уроки программирования на Turbo Pascal #2

Подписчиков на 2002-07-18 - 574 человек(а).

Рассылка проекта "Олимпиада.com.ru".


Главная Архив задач Конкурс Рассылки Форум Гостевая книга Контакты

Здравствуйте, уважаемые подписчики!


Сегодня, пожалуй, самый теоретически насыщенный урок. Но без основных понятий и правил обойтись невозможно. Вашу программу будет выполнять машина, а она все делает буквально. Поэтому правила написания программы очень жестки, но их немного. Одно утешает, что правила русского языка намного сложнее.


Урок 2


Для начала рассмотрим программу, которая должна была у вас получиться при выполнении 3 задания предыдущего урока.

Program SUMMA;                    
Var     X,Y,K,Z: integer;                    
Begin                                
    Write('Введите три числа ');             
Readln(X,Y,K);                    
Z:=X+Y+K;                        
Write(Z);                        
End.                                

На этом примере видны
основные особенности записи программы:

1)всякая программа начинается с заголовка - слова PROGRAM и следующего за ним названия программы; (в последних версиях Паскаля это предложение писать не обязательно)
2)после заголовка располагается описательная часть программы;   
3)между служебными словами BEGIN и END записывается алгоритм решения задачи;
4)команды (операторы) разделяются точкой с запятой ;
5)Русский текст заключается в апострофы ' … ' ;
6)перечисляемые объекты разделяются запятой.

2.1 Имена и зарезервированные слова.
Текст программы записывается при помощи латинских букв, цифр и знаков. Буквы допускаются прописные и строчные, причем для компилятора записи VAR, vAR, VaR идентичны.

Особую роль в тексте программы играют имена и зарезервированные слова. Имена применяются для обозначения программы и ее объектов. Имя может состоять из любого количества букв или цифр, но должно начинаться с буквы. В имя можно включать знак подчеркивания (например Prim_1). В программе SUMMA пять имен: SUMMA, X, Y, K, Z. Программисты часто используют осмысленные имена в своих программах. Это всегда полезно, а в сложных программах совершенно необходимо.

Зарезервированные слова применяют для обозначения операторов (команд) и других элементов языка Паскаль. Их нельзя использовать в качестве имен и во всех программах они имеют одинаковый смысл. Зарезервированными словами в нашем примере являются слова: PROGRAM(программа), VAR(переменные), BEGIN(начало), READ(читать), WRITELN(писать), END(конец).

2.2. Константы и переменные.
Данные, которыми оперирует программа, могут быть определены в ней как неизменные, либо как способные изменять свое значение в ходе выполнения программы. Первые называются константами, а вторые переменными. И переменные и константы размещаются в памяти компьютера (в так называемой "ячейке памяти"). В программе переменные должны быть описаны в предложении VAR (от слова VARIABLE-переменная), а константы - в предложении CONST. У всякой величины имеется три основных свойства: имя, значение, тип.

2.3. Тип INTEGER (целый).
И в жизни и в программировании очень полезно использовать понятие типа. Предположим, вам сказали, что вы должны приобрести Джой. Больше ничего не известно - сколько у него ног, предмет это или животное и т.д. в то же время очень многое можно сообщить, добавив лишь одно слово, определяющее тип объекта по имени Джой, например, Джой - собака, или Джой - человек, или Джой - компьютер.

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

Значения величины типа INTEGER в Паскале не может быть меньше -32768 или больше 32767.

Константы целого типа записываются в виде последовательности цифр со знаком или без него.

Переменные должны быть перечислены в описательной части программы в предложении
VAR     имя _переменной:INTEGER;


Над величинами целого типа допустимы арифметические операции: +(сложение), -(вычитание), *(умножение), DIV(деление нацело), MOD(нахождение остатка от целочисленного деления).

Все операции вырабатывают результат целого типа. Например,
15 DIV 4 = 3, 25 MOD 4 = 1.

Над целыми разрешено и обычное деление, оно обозначается косой чертой "/" и дает результат вещественного типа.

2.4. Тип REAL(вещественный).
Константы вещественного типа (числа с дробной частью) изображаются с десятичной точкой:
12.3, -1.5, -0.75 или в показательной форме: -0.45Е5, 6.7Е-10, 0.355Е6 (для получения числа в обычном виде надо перенести запятую на число разрядов указанных после Е вправо, если число положительное, влево, если отрицательное). Например, 6.7Е-10=0.00000000067.

Вещественные переменные требуют описания предложением
VAR     имя:REAL;
Над величинами вещественного типа допустимы арифметические операции: +(сложение), -(вычитание), *(умножение), /(деление).
2.5. Оператор присваивания

Оператор присваивания придает переменной конкретное значение, например:
Х:=2; Y:=5,
одновременно уничтожая старое. Редкая программа обходится без оператора присваивания.

Присваивать можно значение другой переменной или результат вычисления арифметического выражения: A:=B; A:+B+C; X:=Y+2-Z.
Формат команды:
<имя переменной>:=<выражение>

Исполнение команды присваивания происходит в таком порядке: сначала вычисляется <выражение>, затем полученное значение присваивается переменной.

Пример 1. Пусть переменная А имела значение 6. какое значение получит переменная А после выполнения команды: А:=2 х А - 1.

Решение. Вычисление выражения 2 х А - 1 при А=6 даст число 11. Значит новое значение переменной А будет равно 11.

Пример 2.
Поменяйте между собой значения двух переменных А и В, воспользовавшись третьей переменной R для временного хранения значения.

Решение.
Program prim2_2;
Var a, b, r: real;
    Write('Введите два числа ');
    Readln(a,b);
    R:=a;
    A:=b;
    B:=r;
    Write(' a=' , a, ' b=' , b);
End.

Задачи.
1) Определить конечное значение переменных X и Y в результате выполнения следующих алгоритмов:
а) Х:=2                     б)Х:=1.5
   Х:=Х х Х                   Х:=2 х Х + 1   
   Х:=Х х Х х Х               Y:=X/2
   Х:=Х х Х х Х х Х           Y:=X + Y
                               X:=X - Y

2) Поменяйте между собой значения трех переменных X, Y и Z по схеме тройного квартирного обмена:
Х®Y®Z®X.

3) Присвойте переменной N ее собственное значение, увеличенное в N раз.

4) Чему равно Х в результате выполнения программы:
Х:=2;
Х:=Х+Х;
Х:=Х-Х

5) Указать значения значения величин a и b после выполнения следующих операторов присваивания:
а) a:=5.8                     б)a:=0
   b:=-7.9                      b:=-9.99    
   b:= а                        b:=a
   a:=b                         a:=b

Желаю успехов!
Ганилова Татьяна Евгеньевна, school6@rikt.ru.


Реклама в рассылке:

RLE    

  


Подпишитесь на наши рассылки:

Новости проекта "Олимпиада.com.ru" [Алексей Шамис]
Новости проекта "Olimpiada.com.ru". Новые темы на форуме. Информация о пополнениях в архиве задач. Оперативно и своевременно!

Уроки программирования на Turbo Pascal [Ганилова Татьяна]
Хотите стать Великим Программистом? Начните свой путь к вершине славы с изучения языка Turbo Pascal. Он как нельзя лучше подходит для начинающих программистов и в то же время используется для разработки сложных "профессиональных" программ.

Олимпиадные задачи с решениями на Turbo Pascal [Шамис Алексей]
В рассылке публикуются решения интересных олимпиадных задач различного уровня. Содержит много теоретической информации. Периодичность - 2-3 раза в неделю.

Задача в неделю. Олимпиадные задачи по информатике [Алексеев Александр]
Каждый понедельник в рассылке публикуется задача, которую необходимо решить и в следующий понедельник прислать программу на тестирование. Решения проверяются, и в пятницу публикуется разбор и итоги тестирования.



Всегда рады видеть Вас на нашем сайте. Жду ваших предложений и замечаний, Алексей Шамис

Copyright © 2002 by Ganilova Tatyana.



http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное