Работа с ZX-Spectrum 1993 г.

Глава 7 - арифметические операции.


ГЛАВА 7

АРИФМЕТИЧЕСКИЕ ОПЕРАЦИИ

Краткое содержание: операции +, *, /.

Выражения, усл.обозначения, имена
переменных

Вы уже видели несколько примеров, в которых ZX SPECTRUM может
оперирова1ъ числами. Можно выполнять четыре арифметических операции:

*. / (помнитё, что * используется для умножения, а "/ " используется
для деления). И при этом определяется значение переменной, задаваемой
именем. Пример:

LET tax-sum*15/100

Отсюда видно, что вычисления могут быть комбинированными.
Комбинации такого типа, как
sum* 15/100

называются выражениями. Выражение - это самый короткий путь для
указания компьютеру на то, что вычисления надо делать одно за другим. В
нашем примере выражение
sum*15/100

указывает: возьми значение переменной с именем "sum", умножь его
на 1э и затем подели на 100. Если ыы не можете ещё этого сделать, реко-
мендуем просмотреть вводную часть этой книги, чтобы ознакомиться с тем.
как ZX SPECTRUM работает с числами и каков порядок, в котором выполня-
ются математические выражения.

Краткое повторение: Умножение и деление выполняются первыми.

Они имеют более высокий приоритет, чем
сложение и вычитание.

Относительно друг друга умножение и деление
имеют равные приоритеты.

Существует правило, по которому умножение и
деление выполняются последовательно слева
направо. Когда все они выполняются, то затем
будут выполняться сложение и вычитание по
порядку также слева направо.
Для задания приоритета в компьютере ZX SPECTRUM используются
числа в интервале от 1 до 16. Например, операции п*м и V имеют
приоритет 8, а, "+" и - 6. Этот порядок вычислений является жестким, но
его можно изменить при помощи скобок. Выражение в скобках вычисляется
первым, а затем подставляется в общее выражение как одно число.

Вы можете использовать операции сложение (и+м) для сцепления строк
(конкатенции) в выражениях.

Имя строковой переменной состоит из буквы с последующим знаком
"$", имя управляющей переменной в FOR - NEXT цикле должно состоять из
одной буквы. А имена обычных числовых переменных могут выбираться
произвольно. Они могут содержать несколько букв и цифр, но первой всегда
должна быть буква.

Вы можете вставлять в имена пробелы для удобства чтения, поскольку
компьютер не считает их частью имени. Запись имени прописными или за-
главными буквами не делает их различными.
Примеры допустимых имен переменных:
х

Т42

This name is so long that I shall never be able
to type it out again without
making a mistake

now we are six  эти два имени указывают на

одну

nOWWeaReSIX / и ту же переменную

Примеры недопустимых имен переменных:

2001 (начинается с цифры)

3 bears (начинается с цифры)

M*A*S*H (знак - не буква и не цифра)

Fotherington-Thomes (содержит знак

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

PRINT 2.34Е0
PRINT 2.34Е1
PRINT 2.34Е2 и т.д. до
PRINT 2.34Е15

Помните, что оператор PRINT даёт лишь 8 значащих цифр числа. Поп-
робуйте выполнить ещё:

PRINT 4294967295
PRINT 4294967295-429Е7
и Вы увидите, что компьютер может воспринять только цифры
4294967295.

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

PRINT 1Е10+1-1Е10,1Е10-1Е10М
1 ЕЮ и 1Е10 + 1 не различаются компьютером как разные числа (1Е10
усекается справа).

Ещё один, более наглядный пример:
PRINT 5Е9+1-5Е9

Погрешность в 5Е9 составляет около 1, а с прибавлением единицы
фактически округлится до 2.

Числа 5Е9 + 1 и 5Е9 + 2 для компьютера равны. Наибольшее целое, ко-
торое может воспринять компьютер, равно 2 ** 32 - 1 или (4 294 967 295).

Строка ,,м без единого символа называется пустой или нулевой стро-
кой. Не путайте её с пробелом. Наберите:

PRINT "Have you finished"Finnegans Wake"yet?"
Когда Вы нажмёте клавишу ENTER, Вы получите мерцающий знак воп-
роса, указывающий ошибочное место в строке. Когда при интерпретации
этой строки, компьютер найдет двойную кавычку, открывающую ' Finnegans
wake", то сочтёт её закрывающей кавычкой для строки "Have you finished" и
затем не сможет вывести "Finnegans wake". Здесь надо помнить специаль-
ное правило: если Вы хотите вывести кавычки внутри строки, они должны уд-
ваиваться. Например:

PRINT "Have you finished""Finnegans Wake""yet?"
В данном случае будет выведена фраза

Have you finished"Finnegans Wake"yet?




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Обозрение - Журналы, которые мы выбираем: ADVENTURER-6, AMAZING-2, AMIGA NEWS-1, CHAOS-1, DEJA VU-4, DEPTH-1,FLASH TIME-1,MIRACLE-1, OBERON-4, ODYSSEY-2, SPECCY-7,SPECTROPHOBY-,SPECTROFON-23, SPECTRUM PROGRESS-2 , ZX-FORMAT-7 , ZX-NEWS-3 , ZX-POWER-3, ZX-РЕВЮ.
Крышу снесло - DI:HALT не всегда вызывает зависание...Santa Claus.
Конец - Список Заслуженных Пользователей AC Edit.
Только хиты - Самые популярные шлягеры нашего времени только здесь и сейчас.
Список BBS - Список BBS. Открылся третий гейт с FidoNet.

В этот день...   4 октября