Иллюстрированный самоучитель по Basic, вводный курс › Язык Бейсик › Операторы DATA и READ [страница — 24] | Самоучители по программированию
Операторы DATA и READ
Существует другой способ ввода данных. Он применяется в том случае, если эти данные заранее известны. Тогда мы организуем в программе некое подобие склада (с помощью оператора data), а потом при помощи оператора read последовательно считываем эти данные в запрашиваемые переменные, в которых они хранятся и обрабатываются. Удобство этого способа в том, что не приходится каждый раз при запуске программы вводить исходные данные (особенно, когда их много), а также в простоте изменения исходных данных.
Приведем пример программы.
DATA 13, 17, 19 READ A ? А READ A ? а READ А ? А
На «складе» data хранятся три числа – 13, 17 и 19. Первый оператор read читает со «склада» число 13 и записывает его в переменную а, а затем оператор print выводит ее значение на экран. Потом считывается второе число – 17, вместо старого значения 13 в переменную а записывается новое – 17, которое тоже выводится на экран. Аналогичные действия происходят и в третий раз с последним числом со «склада»
Предупреждение
В программе можно использовать несколько операторов data, причем они могут быть расположены в любых местах программы. Все они рассматриваются как единый «склад». А данные считываются все равно последовательно сверху вниз и слева направо.
Еще пример, только теперь считываться будут сразу две переменные, что никак не скажется на исполнении программы.
DATA 1, 2, 4 READ А, В DATA 8 ? А, В READ А, В ? А, В READ А, В ? А, В DATA 16, 32
При выполнении оператора data может возникнуть сообщение об ошибке типа «Нет данных». Подобная ошибка возникает при попытке чтения уже закончившихся данных. Если данных во всех операторах data шесть, то и считать их можно только шесть раз.
Можно восстановить все данные, хранящиеся в data командой RESTORE.
А теперь маленькие задания.
74. Напишите программу, рисующую три закрашенных прямоугольника с заданными координатами диагоналей и цветами.
75. Задайте в операторах data четыре строки любого стихотворения и напишите программу, выводящую их на экран.
Еще ряд заданий на операторы data и read мы выполним, когда научимся пользоваться оператором цикла.
3. Управляющие операторы языка Бейсик
Оператором называется лексически законченная конструкция языка, которая воспринимается системой как самостоятельный элемент программы. Если на одной строке указывается несколько операторов. то они разделяются между собой двоеточиями.
Виды операторов. Все операторы можно разделить на выполняемые и невыполняемые. Выполняемые операторы предназначены для выполнения определенных операций над операндами или изменения порядка выполнения операторов в программе. Эти операторы в свою очередь можно подразделить на две группы: вычислительные и невычислительные. Вычислительные операторы — это операторы, которые выполняют арифметические, логические операции, операции преобразования данных и присваивают полученные значения переменным. Невычислительными операторами являются операторы переходов, которые изменяют только порядок выполнения операторов в программе. К невыполняемым операторам в первую очередь относятся операторы управления трансляцией. Операторы управления трансляцией определяют начало и конец программы (или подпрограммы), объявляют массивы и т.д. Примером оператора управления трансляцией является оператор конца программы END. Оператор DIM, например, определяет массивы.
Комментарий отделяется от операндов одиночным апострофом. Он размещается в конце предложения.
Если в строке указывается только комментарий, то она называется предложением-комментарием, например:
P=A*C ‘Начало вычисления
Оператор REM (REMark — комментарий). Этот оператор является строкой комментария. Он относится к невыполняемым операторам. Формат записи оператора REM:
REM [комментарий]
Комментарий записывается с помощью любых знаков и используется для пояснения операторов в программе.
Если оператору REM передается управление с помощью операторов GOTO или GOSUB. то выполнение программы продолжается с оператора, следующего за оператором REM.
3.1. Оператор присваивания
Переменной, имя которой указано в левой части выражения, присваивается значение правой части выражения.
Общая форма записи оператора присваивания:
LET <имя переменной> = <выражение>
Все элементы данных, входящие в состав выражения в правой части, должны быть определены к моменту выполнения оператора присваивания.
При записи оператора LET необходимо соблюдать следующие правила:
если слева стоит числовая переменная, то справа должна быть числовая константа, переменная или арифметическое выражение;
-
если слева стоит символьная переменная, то справа должна быть символьная константа или переменная.
В противном случае система выдает сообщение об ошибке
НЕСООТВЕТСТВИЕ ТИПОВ
Служебное слово LET в большинстве версий языка можно опускать.
Ниже приведены примеры правильного присваивания значений переменным с помощью оператора LET:
A%=25 ‘Целочисленной переменной А% присваивается значение 25
A%=12. 8 ‘Целочисленной переменной А% присваивается значение 13, т.к. число 12.8 округляется до 13
А&=350000 ‘Целочисленной длинной переменной А& присваивается значение 350000
А!=899.99 ‘Переменной с плавающей десятичной точкой A! присваивается выражение 899.99
A$=’ИТОГ’ ‘Символьной переменной А присваивается выражение ИТОГ.
Visual Basic 6.0. Основные навыки — Глава 3
Лабораторная работа №3
Организация принятия решений
Цель работы: освоить использование операторов принятия решений (If-Then-Else), познакомится с конструированием сложных условий.
Теоретическое введение.
Большинство операторов являются операторами присваивания, но есть и другие операторы, предназначенные для решения более сложных задач. Они известны как управляющие.
К управляющим операторам относятся, в частности, условные операторы. Они используются для выполнения различных фрагментов программы в зависимости от выполнения некоторого условия. Характерным оператором, позволяющим решить практически все задачи, является «If-Then-Else».
Для проверки истинности условий в Visual Basic предназначены два типа операторов «If» – однострочный и блочный.
Однострочный оператор «If» состоит из одной строки и используется для выполнения одной команды:
If condition Then command1 Else command2
Здесь «condition» представляет собой любое выражение или функцию, истинность которой будет оцениваться:
· Условие, построенное с помощью операторов сравнения;
· Переменная логического типа;
· Любая функция логического типа.
«Command1» – команда, которую необходимо выполнить, если «condition» будет иметь значение «True» (истина). А «command2» – команда, выполняющаяся при «condition» равным «False» (ложь). При этом обе команды никогда не выполнятся одновременно!
Если при некотором условии необходимо выполнить не одну, а сразу несколько команд, можно использовать блочный оператор «If»:
If condition Then
Command1
.
Commandn
Else
Command01
…
Commandm
End if
Принцип действия блочного и однострочного операторов условия полностью аналогичны. Единственное отличие – наличие в каждом из блоков нескольких команд.
Помимо этого существует так называемая краткая форма оператора «If». Она заключается в том, что блок «Else» является необязательным:
Блочная форма: | Однострочная форма: |
If condition Then Command1 Command2 … Commandn End if | If condition Then command1 |
При этом принцип работы остается неизменным. При «condition» равным «False» управление буде передано следующему оператору, стоящим следом за оператором «If».
Если нужно проверить какое-либо условие при выполнении другого условия используют вложенные операторы «If». Формат вложенного оператора следующий:
If condition Then
If condition Then
Command1
Else
Command2
End if
End if
Расширить возможность всех условных операторов можно с помощью логических выражений, являющимися полными аналогами условий. Такие условия принято называть составными. Для записи подобных выражений используются ряд логических функций:
Таблица 6
Некоторые логические функции в Visual Basic
Функция | Описание | Пример синтаксиса |
Not | Отрицание («не»): возвращает True, если логическое выражение имеет значение False и наоборот. | Not(Expression) |
And | Логическое умножение двух выражений («и»): возвращает False, если хотя бы одно выражение имеет значение False. | Expression1 And Expression2 |
Or | Логическое сложение двух выражений («или»): возвращает True, если хотя бы одно выражение имеет значение True. | Expression1 Or Expression2 |
Xor | Исключающее «или» («либо»): возвращает True, если только одно выражение имеет значение True. | Expression1 Xor Expression2 |
Все выражения в приведенных выше функциях обязательно должны быть логическими. Применяя операторы сравнения (< , > , = ), можно вставлять математические выражения в логические:
a * b < c and b + c
Порядок выполнения расчетов в таких выражениях полностью подчиняется правилу приоритета (см. работу № 2). Область применения подобных выражений очень широка при написании сложных условий для операторов принятия решений. Применение составных и вложенных условий позволяет решать самые запутанные задачи.
Задание. Составить программу для вычисления некоторых выражений с применением операторов принятия решений (задание №7 и №8, методичка 279, вариант тот же). Ввод и вывод информации осуществить аналогично работе №2. Расчеты вести через промежуточные переменные.
Ход работы.
Ход работы полностью аналогичен работе № 2. Программный код модуля должен содержать вложенные или составные условия. Обосновать их использование.
Операторы управления Visual Basic | Piter Melnikov
Операторы управления языка служат для управления работой программы. К ним относятся:
— операторы передачи управления;
— операторы выбора;
— операторы циклов.
Операторы передачи управления применяются в программе для реализации безусловных алгоритмических конструкций. Они выполняют переход с одного участка программы на любой другой без какого-либо условия. Оператор перехода имеет следующий вид:
GoTo идентификатор
где
— GoTo – ключевое слово;
— идентификатор – одна из меток программы.
Метка – это идентификатор, помещаемый слева от программного оператора и отделенный от него двоеточием. Например:
m1: Text1.Text = «это метка»
Оператор перехода для перехода к оператору с меткой m1 будет иметь вид:
GoTo m1
Следует сказать о том, что для получения хорошего стиля программирования следует избегать применения оператора GoTo, так как в этом случае ухудшается читаемость и понимание программы.
Операторы выбораОператоры выбора используются в программе для реализации условных алгоритмических конструкций, которые вызывают выполнение различных частей программы в соответствии с условиями, существующими на момент выполнения этих операторов. Одним из важных элементов программного оператора выбора является выражение условия, значением которого может быть Истина (True) или Ложь (False). Такие выражения условия записываются с помощью операторов отношения.
В Visual Basic есть два основных типа операторов выбора: операторы условия If … Then и переключатели, реализуемые оператором Select Case.
Операторы If . . . Then
В Visual Basic есть два типа операторов If . . . Then – линейный и блочный.
Линейный оператор If . . . Then используется для того, чтобы выполнить какой — либо один оператор, если некоторое условие будет истинным. Условие является выражением или функцией, истинность которого оценивается. Синтаксическая конструкция линейного оператора имеет две формы — безальтернативную и альтернативную:
Безальтернативная форма:
If условие Then Выражение
Альтернативная форма:
If условие Then Выражение_1 Else Выражение_2
В безальтернативной форме при значении условия True сначала выполняется выражение, следующее за ключевым словом Then, а затем следующий в последовательности оператор. Если условие принимает значение False, то выражение следующее за словом Then не выполняется, а выполняется следующий оператор.
Примеры линейного оператора If . . . Then безальтернативной формы:
If intNamber<3 Then intResult = 10*2 ‘ Если переменная intNamber_
содержит значение меньше трех, то переменной _
intResult будет присвоено значение 20
If optAddition.Value = True Then z = x + y
Пример линейного оператора If . . . Then . . . Else:
If intNamber<3 Then intResult = 10*2 Else intResult =30
В результате выполнения последнего оператора переменной nResult будет присвоено значение 20, если переменная nNamber содержит значение меньше трех, в противном случае переменной nResult будет присвоено значение 30.
Блочный оператор If . . . Then используется тогда, когда в случае истинности условия необходимо выполнить несколько программных операторов (блок операторов). Блочный оператор также может быть безальтернативным и альтернативным. Структура безальтернативного блочного оператора следующая:
If Условие Then
Программный оператор 1
Программный оператор 2
. . .
Программный оператор n
End If
Здесь End If указывает на окончание блока оператора If.
Альтернативный блочный оператор If применяется в тех случаях, когда при выполнении условия необходимо выполнить один набор программных операторов, а при невыполнении — другой. Это реализуется с помощью оператора If . . . Then . . . Else, синтаксис которого следующий:
If условие Then
Блок программных операторов, выполняемых при значении условия True
Else
Блок операторов, выполняемых при значении условия False
End If
Операторы If могут быть вложенными друг в друга. Такое вложение операторов применяется, если нужно проверить какое-либо условие при другом условии, которое является истинным (например, если фамилия Иванов и он торговый агент). Формат вложенного оператора If следующий:
If условие_1 Then
If условие_2 Then
Блок операторов 1
Else
Блок операторов 2
EndIf
EndIf
Пример применения вложенного оператора If:
If Name = “Иванов” Then
If Rang = “Торговый агент” Then
Text1.Text = Name & Rang
Else
Text1.Text=”Агента с указанной фамилией в списке нет”
EndIf
EndIf
В этом примере условие первого оператора If проверяет соответствует ли значение переменной Name значению неименованной строковой константы “Иванов”. Если результат этой операции True, то вложенный оператор If сделает проверку, является ли Иванов торговым агентом. В случае истинности результата в текстовое поле будет выведено значение “Иванов торговый агент”. В противном случае – “Агента с указанной фамилией в списке нет”.
При использовании вложенных операторов If важно не перепутать варианты сочетания условий. Нужно помнить правило: альтернатива Else считается принадлежащей ближайшему оператору If, не имеющему ветви Else.
В Visual Basic также предусмотрена конструкция для работы с несколькими операторами If. Несколько операторов If применяются в случаях, когда необходимо рассмотреть еще несколько условий в дополнение к исходному. Для этого служит конструкция If … Then … ElseIf. В отличие от вложенных операторов конструкция с несколькими операторами If позволяет проверить дополнительное условие, если исходное условие принимает значение False. Форма записи нескольких операторов If имеет следующую синтаксическую конструкцию:
If выражение_условия_1 Then
Программный оператор 1
ElseIf выражение_условия_2 Then
Программный оператор 2
Else
Программный оператор 3
EndIf
Например:
If CorrectAnsver. Text >=8 Then
Ball.Text = ”Отлично”
ElseIf CorrectAnsver.Text >=6 Then
Ball.Text = “Хорошо”
ElseIf CorrectAnsver.Text >=4 Then
Ball.Text = “Удовлетворительно”
Else Ball.Text = “Неудовлетворительно”
EndIf
Приведенный код программы определяет количество правильных ответов и выставляет оценку. Он работает следующим образом. Сначала проверяется значение условия в операторе If. Если оно принимает значение True, то выполняется оператор (или блок операторов), следующий непосредственно за ключевым словом Then, после чего программа перейдет к выполнению оператора, следующего за EndIf. Если первое условие принимает значение False, то программа перейдет к выполнению первого оператора ElseIf, чтобы проверить выполнение его условия. Если оно имеет значение True, то выполнится оператор Ball = 4 и программа перейдет к выполнению оператора, следующего за EndIf. В противном случае эта последовательность действий повторится для следующего оператора ElseIf и так до тех пор, пока не будут проверены все из них.
ПереключателиПереключатели в Visual Basic реализуются оператором Select Case, который позволяет сделать выбор из нескольких альтернативных вариантов в зависимости от значения условного выражения. Синтаксис его следующий:
Select Case Выражение
Case Значение_1 ‘ Оператор, выполняемый при совпадении_
Значения_1 и значения Выражение.
Case Значение_2 ‘ Оператор, выполняемый при совпадении_
Значения-2 и значения Выражение.
. . .
Case Значение_N ‘Оператор, выполняемый при совпадении _
Значения_N и значения Выражение.
End Select
В операторе Select Case можно использовать операции отношения. Для этого надо включить в выражение ключевое слово Is или ключевое слово To.
Ключевое слово Is дает указание компилятору сравнить значение проверяемой переменной со значением выражения, следующего за ключевым словом Is. Ключевое слово To задает диапазон значений. Например, следующий код фрагмента программы, использующий оператор Select Case позволяет выставить оценку исходя из общего количества набранных баллов:
Select Case ПравильныйОтвет.Text
Case 8 To 10 ‘ Если сумма баллов в диапазоне 8-10
Балл.Text = «Отлично»
Case 6 To 7 ‘ Если сумма баллов в диапазоне 6-7
Балл.Text = «Хорошо»
Case 4 To 5 ‘ Если сумма баллов в диапазоне 4-5
Балл.Text = «Удовлетворительно»
Case Is < 4 ‘ Если сумма баллов меньше 4
Балл.Text = «Неудовлетворительно»
End Select
Операторы If и Else на Visual Basic
У меня возникли проблемы с определением того, в каком порядке эти операторы if и else должны быть расположены в Visual Basic 2010 Express. Как вы, вероятно, можете сказать из кода, когда он работает правильно, программа должна отображать данные, найденные в текстовом файле внешне. Если эти данные не найдены, то должно появиться сообщение об ошибке в метке. Спасибо за помощь.
Код:
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim filename As String = "..\..\usernamepassword.txt"
Dim objreader As New System.IO.StreamReader(filename)
Dim contents As String
Dim check As String
Dim checkfile As New System.IO.StreamReader("..\..\checkfile.txt")
check = checkfile.ReadToEnd
For i As Integer = 1 To check
contents = objreader.ReadLine
Dim data As New List(Of String)(contents.Split(","))
If forename.Text = data(2) Then
'first if statement is here \/
If surname.Text = data(3) Then
fullname.Text = (data(2) & " " & data(3))
dob.Text = data(4)
phone.Text = data(5)
address.Text = data(6)
password.Text = data(1)
'else statement \/
Else
Label2. Text = "Sorry, no result found for this student."
Label5.Text = "Please note this system is caps sensitive."
End If
End If
Next i
Dim s As String = ""
forename.Text = s
surname.Text = s
End Sub
End Класса
vb.net if-statementПоделиться Источник Alfie F 11 марта 2017 в 14:09
2 ответа
- Операторы If внутри else if
Это может быть очень простой вопрос, но, пожалуйста, может ли кто-нибудь ответить на него? Можно ли использовать операторы if внутри else if? Это разрешено? if(conditionA)) { //do A stuff } else if(conditionB)) { if(conditionB1) //do B1 if(conditionB2) //do B2 if(conditionB3) //do B3 }
- If…Then…Else Visual Basic 2012
Я пытаюсь создать приложение в Visual Basic 2012, я изо всех сил пытаюсь заставить его соответствовать параметрам. Что я делаю не так? Каждый раз, когда я пытаюсь добавить еще, он говорит, что перед ним должно быть If. Проблема: Напишите программу для приемной комиссии колледжа. Создайте…
0
Вы должны обращаться с этим так
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim filename As String = "..\..\usernamepassword.txt"
Dim found as Boolean = False
Dim objreader As New System.IO.StreamReader(filename)
Dim contents As String
Dim check As String
Dim checkfile As New System.IO.StreamReader("..\..\checkfile.txt")
check = checkfile.ReadToEnd
For i As Integer = 1 To check
contents = objreader.ReadLine
Dim data As New List(Of String)(contents.Split(","))
If forename.Text = data(2) Then
'first if statement is here \/
If surname.Text = data(3) Then
fullname.Text = (data(2) & " " & data(3))
dob. Text = data(4)
phone.Text = data(5)
address.Text = data(6)
password.Text = data(1)
found = True
Exit For
End If
End If
Next i
If found = False Then
Label2.Text = "Sorry, no result found for this student."
Label5.Text = "Please note this system is caps sensitive."
End If
Dim s As String = ""
forename.Text = s
surname.Text = s
End Sub
Поделиться Sniper 11 марта 2017 в 15:37
0
Проверка была объявлена как строка, когда она должна быть целым числом. Набор параметров строгим и определить в положение Off
Поделиться minimalist 11 марта 2017 в 15:48
Похожие вопросы:
PHP функции и операторы if/else
Я пытаюсь написать сценарий, который включает в себя операторы if/else и функции. некоторые предпосылки $parts первый символ должен иметь букву N Предполагается, что $desc должен быть длиной не…
Есть ли надстройка для Visual Basic 6, которая помогает управлять операторами if/else и loop?
Visual Studio имеет возможность сворачивания кода и, по крайней мере, имеет справку по коду, которая позволяет вам держать ваши операторы if/else и циклы в порядке, указывая, где они начинаются и…
Как вложить несколько операторов IF в Visual Basic 6?
Как я могу использовать if в другом if в Visual Basic 6? Например, в C++ я могу начать свои операторы с { и закончить их с } , и я могу использовать другой if в первом операторе. Например: if m>3…
Операторы If внутри else if
Это может быть очень простой вопрос, но, пожалуйста, может ли кто-нибудь ответить на него? Можно ли использовать операторы if внутри else if? Это разрешено? if(conditionA)) { //do A stuff } else…
If. ..Then…Else Visual Basic 2012
Я пытаюсь создать приложение в Visual Basic 2012, я изо всех сил пытаюсь заставить его соответствовать параметрам. Что я делаю не так? Каждый раз, когда я пытаюсь добавить еще, он говорит, что перед…
Visual basic If и else не работает 2015
Я новичок, и у меня возникли некоторые проблемы с функциями ‘if’ и ‘else’ visual basic. Я добавил кнопку с надписью Save, ее код приведен ниже: Private Sub Button5_Click(ByVal sender As…
Использование оператора IF в Visual Basic 2008
Я могу закодировать следующую проблему в Visual Basic 2008, используя структуру IF-THEN-ELSE. Но я хочу знать, как закодировать его с помощью оператора IF в Visual Basic 2008. Напишите программу,…
jQuery: if и else if операторы с &&?
Я пытаюсь создать операторы if и else if , используя jQuery, и у меня будет два условия в операторах if и else if, поэтому я также использую && . Однако каждый раз, когда я использую if и…
Обновление до последней версии Visual Basic в VS2015
У меня есть проект VB.NET MVC, который я разработал в Visual Studio 2012 и который сейчас использую в Visual Studio 2015. Я хотел бы начать использовать такие вещи, как условные операторы null. Но…
Visual Basic 6 и Visual Basic в Visual studio
Мне было интересно, совпадает ли код, используемый в visual studio для visual basic, с кодом для visual basic 6? Visual basic 6 IDE больше не поддерживается, поэтому я не могу получить доступ к этой…
Books:Basic-256 — ALT Linux Wiki
Джеймс М. Рено
Хотите научиться программировать?
Библиотека ALT Linux
Ссылка | статус | |
---|---|---|
Электронная версия | Syw2l2p_b256_freeRussianEbook.pdf | |
Печатная версия | магазин Альт Линукс | ALT Linux, 6/10/2011, ISBN 9785905167065 Формат: A5. Тираж: 100 экз. 320 стр. |
Рекомендуемый дистрибутив | Альт Линукс 4.0/5.0 Школьный |
Книга является переводом James M. Reneau, M.S. «So You Want to Learn to Program?» издательство Createspace Print ISBN: 978-1456329044 www.basicbook.org
В книге изложены основы программирования в применении к языку BASIC-256 (клон BASIC) а также справочная информация по операторам и синтаксису языка. Рекомендуется учителям информатики и любопытным школьникам, умеющим читать.
Язык BASIC-256 достаточно хорошо развит и позволяет программировать как быстро движущиеся графические объекты, так и интерфейс к базе данных (SQLite) и даже сетевые приложения.
В книге приведено более сотни примеров программ.
Переводчики: С. Ирюпин, В. Черный.
Скачать программы, входящие в книгу: Файл:Prg.7z
Лицензия Creative Commons Attribution-Noncommercial-Share Alike 3.0
Содержание[править]
Глава 1. Знакомство с BASIC-256 — скажи «Привет» Глава 2. Рисуем основные фигуры Глава 3. Звуки и музыка Глава 4. Мыслить как программист Глава 5. Программа задает вам вопросы Глава 6. Сравнения, сравнения, сравнения Глава 7. Циклы и счетчики — повторяем снова и снова Глава 8. Графика на заказ — создание фигур своими руками Глава 9. Подпрограммы — повторное использование кода Глава 10. Управляем мышкой, перемещаем объекты Глава 11. Использование клавиатуры Глава 12. Картинки, музыка и спрайты Глава 13. Массивы — коллекции данных Глава 14. Математика — развлечемся с числами Глава 15. Работаем со строками Глава 16. Файлы. Сохраним информацию на будущее Глава 17. Стеки, очереди, списки и сортировка Глава 18. Ловушки для ошибок времени исполнения Глава 19. Программирование баз данных Глава 20. Сетевые соединения Приложение A. Установка BASIC-256 на компьютер Приложение B. Справочник по языку. Операторы Приложение C. Справочник по языку. Функции Приложение D. Справочник по языку. Операторы и константы Приложение E. Стандартные цвета Приложение F. Ноты Приложение G. Коды клавиш Приложение H. Unicode значения символов Приложение I. Зарезервированные слова Приложение J. Коды ошибок Приложение K. Словарь терминов Список иллюстраций Список программ
Скачать программы, входящие в книгу: Файл:Prg.7z
Описание языка Turbo Basic для студентов всех специальностей
ОСНОВЫ ПРИКЛАДНОЙ ИНФОРМАТИКИ
Раздел: Описание языка Турбо-Бейсик
Справочное пособие для студентов всех специальностей
АННОТАЦИЯ
Настоящее пособие содержит описание основных средств языка Турбо-Бейсик, а также необходимые сведения по среде Турбо-Бейсика.
Пособие в основном ориентировано на использование при выполнении практикума по курсу «Основы прикладной информатики». Может также использоваться в качестве справочника по языку Турбо-Бейсик.
С О Д Е Р Ж А Н И Е
- Основные средства языка
- Структура программы
- Типы данных
- Массивы
- Выражения
- Стандартные функции
- Основные операторы
- Операторы цикла
- Подпрограммы, функции и процедуры
- Цвет и графика
- Файлы. Работа с файлами данных последовательного и прямого доступа
- Файлы последовательного доступа
- Файлы прямого доступа.
- Движущиеся изображения, звуковые эффекты и нестандартный ввод с клавиатуры
- Оператор DRAW
- Операторы GET и PUT.
- Оператор BEEP
- Оператор SOUND
- Оператор PLAY
- Функция INKEY$
- Библиотека стандартных процедур в Турбо-Бейсике
- Рекомендуемый порядок работы на ПЭВМ при создании и выполнении программ на языке Турбо-Бейсик
ОСНОВНЫЕ СРЕДСТВА ЯЗЫКА
- Структура программы
- Типы данных
- Массивы
Программа состоит из строк. Одна строка содержит один или несколько операторов, разделенных двоеточием. Например, a=1: b=1 Перенос оператора на другую строку допускается. В этом случае используется знак переноса Например, a=1: b_ =1 Строки могут нумероваться (но это не обязательно) . Ссылка в нужное место программы может осуществляться также по метке.
Метка размещается в отдельной строке, начинается с буквы и содержит любое количество букв и цифр. После метки ставится двоеточие. Например, aaa: x=x+1…
GOTO aaa Если первым символом в строке является апостроф («) , то строка воспринимается как комментарий.
Имя образуется из букв от A до Z (или от a до z) , знака подчеркивания и цифр от 0 до 9, начинается с буквы. Имя используется для обозначения переменных, меток, процедур и т.п.
Целый (значения от -32767 до 32767, занимает 2 байта) ; длинный целый (от 2я5-31 до 2я531,4 байта) ; вещественный (4 байта) ; вещественный двойной точности (8 байт) ; символьный (последовательность любых символов, каждый символ занимает 1 байт) .
Тип переменной определяется типом данных, которые она представляет. Указание типа переменной задается соответствующим знаком после имени.
a$ — символьный a% — целый a& — длинный целый — 5 a! — вещественный обычной точности а# — вещественный двойной точности Если знак после имени отсутствует, то эта переменная считается по умолчанию вещественной обычной точности. То есть a! =1.1 и а=1.1 одно и то же.
Описание массивов осуществляется с помощью оператора DIM с указанием размеров. Например, оператор DIM a(10) , b(10: 20,25: 45) описывает одномерный массив a, элементы которого имеют индексы от 0 до 10, и двухмерный массив b, элементы которого имеют индексы: первый от 10 до 20, второй от 25 до 45.
Если нижняя граница индексов в описании не указана, то она считается равной 0.
Используя оператор OPTION BASE n., можно задать нижнюю границу индексов равной n. Например, OPTION BASE 1 DIM a(10) В этом случае индекс элементов массива a будет принимать значения, начиная с 1. Если описание массива отсутствует, то по умолчанию верхний индекс равен 10 (нижний — 0) . В описании массива вместо константы может использоваться переменная. Например, DIM a(n) Значение n должно быть предварительно определено.
Используя оператор ERASE., можно освободить память, выделенную под массив, и вернуть ее для дальнейшего использования. ) 2. Умножение, деление (*, /) 3. Деление нацело () (например, 52 равно 2) 4. Вычисление остатка от деления (MOD) (например, 45 MOD 19 равно 7) 5. Сложение, вычитание (+, -) 1.5. Стандартные функции Запись на Бейсике Математическая запись ABS (x) іxі SIN (x) sin x COS (x) cos x TAN (x) tg x ATN (x) arctg x EXP (x) eя5x LOG (x) ln x LOG2(x) log42 x LOG10(x) lg x INT (x) целая часть х SGN (x) знак х (+1 при х > 0,0 при х=0, -1 при x < 0) SQR (x) квадратный корень из х — 7 LEN (а$) количество символов а$ LEFT$(a$, n) выбирает из a$ n символов, начиная с первого MID$ (a$, m, n) выбирает из a$ n символов, начиная с m-го RIGHT$ (a$, n) выбирает n символов а$, начиная с последнего STR$ (x) преобразует число к символьному виду VAL (a$) определяет числовое значение а$ ASC (a$) определяет код первого символа а$ TAB (n) указывает номер позиции для вывода следующего элемента в списке вывода оператора PRINT SPC (n) вывод n пробелов, используется в списке вывода оператора PRINT RND [(x) ] выдает случайное число из интервала (0,1) Замечания. 1. [] обозначают необязательный параметр.
2. Если х=0, то повторяется последнее сгенерированное число; если х < 0, то для каждого x генерируется новая последовательность случайных чисел; если x > 0 или отсутствует, то генерируется очередное случайное число, но при повторном запуске последовательность повторяется. Можно использовать оператор RANDOMIZE (перед первым использованием функции RND) , чтобы при новом запуске программы получать новую последовательность случайных чисел.
Операции отношения: <, <=, >, >=, <>.
Левая и правая части отношения — это числовое или символьное выражение (в последнем случае сравниваются числовые коды символов) . Если отношение удовлетворяется (является истинным) , то его значение равно -1, если не удовлетворяется (является ложным) , то его значение 0. Отношения могут быть использованы также в числовых выражениях. Например, при выполнении оператора PRINT 5 > 6,5 < 6, (5 < 6) * 15 будет напечатано 0, -1 и -15.
Логические операции: AND (логическое и) , OR (логическое или) , XOR (исключающее или) , EQV (эквивалентность) , IMP (импликация) .
Логические операции осуществляются над целыми числами -1 (TRUE) и 0 (FALSE) . -1, если A = -1, B = -1 A AND B 0, в остальных случаях 0, если A = 0, B = 0 A OR B -1, в остальных случаях -1, если A и B не совпадают A XOR B 0, если A и B совпадают -1, если A и B совпадают A EQV B 0, если A и B не совпадают 0, если A = -1, B = 0 A IMP B -1, в остальных случаях 1.6. Основные операторы Оператор присваивания имеет вид переменная = выражение Оператор безусловного перехода имеет вид GOTO метка Условный оператор имеет вид IF условие THEN операторы [ELSE операторы] Например, IF a < b THEN t=15: V=16 ELSE t=17 В качестве условия может использоваться целое выражение, которое интерпретируется как FALSE, если его значение равно 0, и TRUE, если не равно 0.
Если после THEN или после ELSE располагается целая группа операторов, то можно использовать IF блок, который имеет следующую структуру IF условие THEN операторы ELSE операторы END IF При этом ELSE и операторы за ним могут отсутствовать, т. е. возможна конструкция IF условие THEN операторы END IF Если после ELSE необходима проверка условия, то используется оператор ELSEIF IF условие THEN операторы ELSEIF условие THEN операторы ELSE операторы END IF Оператор конца END используется для окончания выполнения программы. Может использоваться в программе несколько раз. Используется также с IF, SUB, DEF, SELEСT (см. ниже) Оператор очистки экрана CLS обычно располагается в начале программы для очистки экрана перед выводом результатов программы.
Оператор ввода INPUT имеет вид INPUT [;] [поясняющий текст], список переменных Поясняющий текст заключается в кавычки. Переменные в списке отделяются друг от друга запятыми. «;» после INPUT означает, что курсор останется на той же строке, когда будет нажат «Ввод».
Оператор вывода PRINT имеет вид PRINT [список вывода] Элементы списка разделяются «, » или «;» или пробелом. В первом случае вывод следующего элемента начинается в новую зону (строка экрана условно разделена на 5 зон по 14 позиций каждая) , во втором — через пробел (для чисел) или непосредственно вслед (для символьных строк) за предыдущим элементом. — вывод будет осуществляться в показательной форме.
Для символьных строк: » » — (два пробела) — будет выведено четыре символа «\» (без пробела) — будет выведено два символа Вообще количество выведенных символов будет равно числу пробелов между двумя наклонными линиями + 2. «! » будет выведен один символ «&» — будут выведены все символы Например, A$= «КОТ»: GA= 6.5 B$= «СОБАКА»: GB= 15.3
PRINT USING «& ВЕСИТ #. #, ВЕСИТ ##. # КГ»;A$, GA, B$, GB При выполнении этого оператора на экране появится КОТ ВЕСИТ 6.5, СОБАКА ВЕСИТ 15.3 КГ Оператор определения положения курсора LOCATE i, j устанавливает координаты (номер строки i и номер столбца j) , в которые начнется вывод данных оператором PRINT.
1.7. Операторы цикла 1. FOR i=iя4нач to iя4кон [STEP ih] операторы NEXT i i, iя4нач, iя4кон, ih — соответственно, управляющая переменная цикла, ее начальное, конечное значения и шаг изменения. Если ih=1, то шаг можно опустить. Например, FOR i=1 to 10….
NEXT i FOR i=1 to 10 FOR j=1 to 20. …
NEXT j: NEXT i — 11 или FOR i=1 to 10 FOR j=1 to 20….
NEXT j, i 2. DO WHILE 1условие 1операторы LOOP или WHILE условие операторы WEND (операторы выполняются, пока выполняется условие) 3. DO UNTIL условие операторы LOOP (операторы выполняются до тех пор, пока не будет выполнено условие. Как только условие будет выполнено, осуществляется выход из цикла) .
4. DO операторы LOOP Выход из цикла в этом случае осуществляется оператором EXIT.
Оператор EXIT (выход) используется с SELECT, DEF, FOR, IF, LOOP, SUB, WHILE. Например, EXIT FOR осуществляет выход из цикла, организованного операторами FOR/NEXT до его завершения EXIT IF — выход из любого места IF блока EXIT LOOP — выход из цикла, заканчивающегося оператором LOOP или WEND.
Остальные случаи использования EXIT будут рассмотрены вместе с соответствующими операторами.
Операторы выбора ON/GOTO и ON/GOSUB ON n GOTO метка [, метка… ] n может принимать значения от 0 до 255. Переход осуществляется на метку, определяемую значением n. Например, при n = 2 переход осуществляется на вторую метку в списке. Если n = 0 или n больше количества меток в списке, то выполняется следующий по порядку оператор.
ON n GOSUB 1метка [, метка… ] n принимает значения от 0 до 255. Переход осуществляется к одной из возможных подпрограмм (см. ниже) , определяемых метками в списке, в зависимости от значения n.
После выполнения подпрограммы возврат осуществляется к оператору, следующему за ON/GOSUB.
1.8. Подпрограммы, функции и процедуры Подпрограммая. — помеченная последовательность операторов, заканчивающаяся оператором RETURN. Выполняется, когда достигнут GOSUB.
GOSUB aa….
END aa: операторы RETURN Оператор RETURN осуществляет возврат к оператору, непосредственно следующему за GOSUB.
Функция может быть определена одной строкой (оператор-функция) или несколькими строками (подпрограмма-функция) .
DEF FN 1им [(список параметров0) ] = выражение (это определение оператора-функции) .
Здесь список параметров может включать 0не более 16 параметров.
DEF FN 1им [(список параметров0) ] описание переменных операторы [EXIT DEF]….
[FN 1им = выражение0] END DEF (это определение подпрограммы-функции) .
Обращение к функции записывается там, где нужно получить ее значение. При этом параметры заменяются их фактическими значениями.
Например, DEF FNF (x, y) = x * x + y * y — 13 a = 3: b = 4 P = FNF (a, b) или P = FNF (3,4) Функция возвращает одно значение, тип которого определяется именем функции. Определение функции может располагаться в любом месте программы (обычно в начале или в конце) . Например, F = FNa (1.5) PRINT F DEF FNa (x) FNa = x*x END DEF END или F = FNa (1.5) PRINT F END DEF FNa (x) FNa = x*x END DEF В результате будет напечатано 2.25.
Список параметров оператора-функции может включать только имена переменных.
Процедура — это последовательность строк программы, расположенная между операторами SUB и END SUB и выполняемая при обращении к ней при помощи оператора CALL.
SUB имя [(список параметров) ] описание переменных операторы [EXIT SUB] END SUB Имя может содержать до 31 символа. Список параметров (не более 16) может включать имена переменных и массивов. Для массивов в скобках указывается размерность. Например, 1 — для одномерного массива, 2 — для двухмерного и т.д.
В обращении к процедуре за именем фактического массива следуют пустые скобки. Например, SUB SUM (x (1) , n, S) S = 0 — 14 FOR I=1 to n S = S + x (I) NEXT I END SUB DIM A (3) A (1) = 1: A (2) = 2: A (3) = 4 CALL SUM (A () , 3, S) S = S/3 PRINT S END Эта программа вычисляет среднее значение элементов массива A, процедура SUM суммирует элементы массива.
Основные отличия процедуры от подпрограммы-функции: 1 — процедура не обязана возвращать значение, она не имеет типа; 2 — вызывается оператором CALL, а не из выражения.
Отдельные переменные, используемые в процедуре (или подпрограмме-функции) , могут быть объявлены локальными, т.е. действующими только в данной подпрограмме (оператор LOCAL) , общими, т.е.
действующими как в подпрограмме, так и в основной программе (оператор SHARED) и статическими, т.е. действующими в данной подпрограмме как LOCAL, но сохраняющими полученные значения до следующего обращения (оператор STATIC) . По умолчанию в подпрограмме-функции переменная является SHARED, а в процедуре STATIC.
DEF FNF1 LOCAL i, S FOR i =1 to 10 S = S + i NEXT i FNF1 = S END DEF После выхода из подпрограммы-функции переменные i и S теряют свои значения (при входе в подпрограмму всегда S = 0) . Эти же имена могут использоваться в программе для обозначения других величин.
DEF FNF2 LOCAL i SHARED S FOR i = 1 to 10 S = S + i NEXT i — 15 FNF2 = S END DEF В этом случае S сохраняет значение после выхода из подпрограммы и имеет один и тот же смысл во всех частях программы.
DEF FNF3 LOCAL i STATIC S FOR i = 1 to 10 S = S + i NEXT i FNF3 = S END DEF В этом случае S сохраняет значение после выхода из подпрограммы до следующего обращения к ней, т.е. после первого обращения значение функции FNF3 будет 55, после второго — 110 и т.д. (S нельзя изменять в основной программе) .
2. ЦВЕТ И ГРАФИКА В графическом режиме экран рассматривается как решетка, точки в узлах которой могут быть включены (белым или другим возможным цветом) или выключены. Точка идентифицируется координатами x, y; x — номер позиции по горизонтали (от 0 до 319 или до 639 в зависимости от режима) , y — номер позиции по вертикали (от 0 до 199 или до 349 в зависимости от режима) . Точка с координатами 0,0 находится в верхнем левом углу экрана.
Графический режим устанавливается (или отменяется) оператором SCREEN.
SCREEN i[, j] i = 0, j = 0 черно-белый текстовый режим i = 0, j = 1 цветной текстовый режим i = 1, j = 0 цветная графика при средней разрешающей способности (320 позиций по горизонтали, 200 по вертикали) i = 1, j = 1 черно-белая графика при средней разрешающей способности i = 2 черно-белая графика при высокой разрешающей способности (640 позиций по горизонтали, 350 по верти кали) После выполнения оператора SCREEN точка устанавливается в середину экрана.
Оператор COLOR устанавливает цвет фона экрана и палитру (из трех цветов) для окрашивания точек (для текстового режима — еще и цвет рамки) .
Существует две палитры цветов: 0 и 1, следующего состава: Палитра 0я. Палитра 1 1 — зеленый 1 — голубой 2 — красный 2 — сиреневый 3 — желтый 3 — белый Для фона можно выбрать один из 16 цветов (0 — черный, 1 — синий, 2 — зеленый, 3 — бирюзовый, 4 — красный, 5 — лиловый, 6 коричневый, 7 — белый, 8 — серый, 9 — голубой, 10 — ярко-зеленый, 11 ярко-бирюзовый, 12 — ярко-красный, 13 — ярко-лиловый, 14 — желтый, 15 — ярко-белый) Оператор COLOR имеет вид COLOR i, j[, k] — 17 где i — цвет фона, j — номер палитры, k — цвет рамки.
Например, операторы SCREEN 1,0 COLOR 9,0 устанавливают цветной графический режим при средней разрешающей способности; цвет фона — голубой; последующие операторы должны использовать цвета из 0-й палитры.
В графическом режиме (для получения на экране неподвижных изображений) могут использоваться следующие операторы: PSET(PRESET) — включает (или выключает) точку; LINE- чертит линию; CIRCLE- чертит окружность или ее часть; PAINT- закрашивает указанную часть экрана.
Более сложные операторы для получения движущихся изображений (DRAW, GET, PUT) рассматриваются в п. 4.
Оператор PSET (x, y) включает точку с координатами x, y.
Оператор PSET STEP (x, y) включает точку, отстоящую на x позиций по горизонтали и на y позиций по вертикали от текущей точки. Например, если в предыдущем положении точка имеет координаты (60,75) , то оператор PSET (10,20) определяет точку с координатами (10,20) , а оператор PSET STEP (10,20) определяет точку с координатами (70,95) .
Операторы PSET (x, y) , 0 или PRESET(x, y) стирают точку (x, y) с экрана.
Оператор LINE позволяет начертить отрезок прямой, указав его начало (x1, y1) , конец (x2, y2) и цвет k LINE[(x1, y1) ]-(x2, y2) , k Если начальная точка отсутствует, то линия будет прочерчена, начиная с точки, в которой остановился предыдущий оператор.
С помощью оператора LINE можно также чертить и закрашивать прямоугольники LINE (x1, y1) (x2, y2) , [k], B[F] Точки (x1, y1) и (x2, y2) трактуются при этом как левая нижняя и — 18 правая верхняя вершины прямоугольника. Если цвет k отсутствует, то прямоугольник будет начерчен 3-м цветом палитры. При наличии параметра F площадь внутри прямоугольника будет закрашена. Например, оператор LINE (80,175) — (100,25) , 2, BF закрашивает красным цветом прямоугольник, расположенный между 80-ой и 100-ой позициями по горизонтали и 175-ой и 25-ой позициями по вертикали.
Оператор CIRCLE позволяет строить окружности, дуги, секторы и эллипсы.
Оператор CIRCLE(x, y) , r, k чертит окружность радиуса r с центром в точке (x, y) цветом k.
После вычерчивания окружности последней использованной точкой считается ее центр.
Оператор CIRCLE (x, y) , r, k, ALPHA1, ALPHA2 вычерчивает дугу, имеющую начало под углом ALPHA1 и конец под углом ALPHA2.
Например, оператор (при PI = 3.1416) CIRCLE (160,100) , 80,2, PI/2, PI строит дугу от PI/2 до PI окружности радиуса 80 с центром в точке (160,100) вторым цветом палитры.
Если использовать знак » — » перед начальной и конечной точками дуги, то будет нарисован сектор, т.е. конечные точки дуги будут соединены с центром. Например, CIRCLE (160,100) , 80,2, PI/2, — PI Можно изобразить сплюснутую (или наоборот вытянутую) окружность, добавив в оператор CIRCLE еще один параметр. Если значение этого параметра меньше 1, то окружность будет сплюснута по вертикали, если больше 1, то — по горизонтали. Например, CIRCLE (160,100) , 80,2,,, 3/4 Все параметры оператора CIRCLE задаются в определенном порядке и разделяются запятыми. Обязательными являются только параметры, указывающие положение центра и радиус окружности. Остальные параметры необязательны, однако, запятые должны быть оставлены, если пропущены параметры в середине списка.
Оператор PAINT позволяет закрашивать большие области экрана.
Для закрашивания необходимо указать произвольную точку внутри закрашиваемой области (x, y) , цвет, которым нужно закрасить область (k1) и цвет границы, которую нельзя пересекать при закрашивании (k2) , k1 и k2 могут совпадать. Оператор PAINT имеет вид — 19 PAINT (x, y) , k1, k2 Например, оператор PAINT (160,100) , 2,2 закрасит окружность нарисованную последним оператором CIRCLE, красным цветом, как и цвет окружности, использованный в операторе CIRCLE. &! — _ / » ~ Полное имя файла в MS DOS содержит весь путь по дереву от корневой директории к нужному файлу. Например, C: STLABwork. bas, где C — имя диска, ST — имя директории на диске, LAB — имя поддиректории директории ST, work. bas — имя программы на Бейсике.
Далее речь пойдет только о файлах данных.
3.1. Файлы последовательного доступа Последовательный файл состоит из записей, доступ к которым осуществляется последовательно, т.е. n-я запись следует за (n 1) -ой как при формировании файла, так и при считывании из него.
Создание последовательного файла включает следующие шаги: открытие файла (оператор OPEN) , вывод данных в файл (операторы PRINT#, WRITE#, или PRINT# USING) и закрытие файла (оператор CLOSE) .
Считывание из последовательного файла включает следующие шаги: открытие файла, ввод данных из файла (операторы INPUT#, INPUT$, LINE INPUT#) , закрытие файла.
Оператор OPEN подготавливает файл для чтения из файла (INPUT) или записи в файл (OUTPUT, если создается новый файл, APPEND, если добавляются записи в уже существующий файл) .
INPUT OPEN имя файла FOR OUTPUT AS #номер файла APPEND Оператор CLOSE я. закрывает файл, т.е. делает невозможным чтение или запись.
CLOSE [#номер файла] Оператор CLOSE без параметров закрывает все открытые файлы.
Единицей информации, которая передается при записи в файл или чтении из файла, является запись (логическая запись) я2. Запись делится на поля. Каждое поле связано с одним элементом данных.
Могут быть созданы два типа последовательных файлов: 1) с разделителями полей, когда каждое поле автоматически отделяется специальным символом (например, запятой) . Для создания такого файла используется оператор WRITE#, для чтения из него оператор INPUT#.
Данные в файле хранятся в таком виде, как если бы они набирались на клавиатуре при выполнении оператора INPUT, т.е. разделены запятыми и каждая запись заканчивается переводом строки.
Оператор INPUT# имеет вид INPUT #номер файла, список переменных, где переменные в списке по типу должны соответствовать данным в файле.
2) поля не разделены, и каждая запись точно такая же, как если бы эти данные отображались на экране или печатались на принтере. Для создания такого файла используется оператор PRINT#, для чтения из него — операторы INPUT$ или LINE INPUT#. Оператор INPUT$я. передает из файла сразу всю строку (запись) указанной длины n в символьную переменную, например, ST$ ST$я2 = INPUT$ (n, #номер файла) Оператор LINE INPUT# передает в указанную переменную ST$ всю строку независимо от ее длины LINE INPUT #номер файла, ST$ Пример (с разделителями полей) : OPEN «SEQU. DAT» FOR OUTPUT AS #1 ST$ = » ИВАНОВ » INT% = 1972 FLOT! = 75.3
«теперь записываем строку в файл WRITE #1, ST$, INT%, FLOT!
ST$ = » ПЕТРОВ » INT% = 1975 FLOT! = 62.5
«записываем другую строку в файл WRITE #1, INT%, ST$, FLOT!
CLOSE #1 END Созданный файл будет следующим » ИВАНОВ «, 1972,75.3
1975, » ПЕТРОВ «, 62.5
Следующая программа читает из этого файла: OPEN «SEQU. DAT» FOR INPUT AS #1 ST$ = » » INT% = 0 FLOT! = 0 «теперь читаем строку текста из файла INPUT #1, ST$, INT%, FLOT!
PRINT ST$, INT%, FLOT!
ST$ = » » INT% = 0 FLOT! = 0 «читаем другую строку INPUT #1, INT%, ST$, FLOT!
PRINT INT%, ST$, FLOT!
CLOSE #1 END Пример (без разделителей полей) : OPEN «SEQUEN.»; INT%, ST$, FLOT!
CLOSE #1 END Содержание созданного файла будет таким: ИВАНОВ 1972 73.1
1975 ПЕТРОВ 6.43Е+01 — 23 Следующая программа читает из этого файла: OPEN «SEQUEN. DAT» FOR INPUT AS #1 ST$ = » » ST$ = INPUT$ (80, #1) PRINT ST$ LINE INPUT #1, ST$ PRINT ST$ CLOSE #1 END 3.2. Файлы прямого доступа Файл прямого доступа состоит из записей, доступ к которым возможен в произвольном порядке по номеру записи.
Создание файла прямого доступа включает следующие шаги: открытие файла (оператор OPEN) ; задание структуры записи файла, или разметка буфера (оператор FIELD) ; передача записи в буфер (операторы LSET или RSET) ; пересылка содержимого буфера в файл (оператор PUT) , при этом если номер записи в операторе PUT не указан явно, буфер помещается на место текущей записи, при открытии файла указатель текущей записи равен 1, после каждой операции ввода или вывода указатель сдвигается на следующую запись; закрытие файла (оператор CLOSE) .
Записи передаются в виде строк символов. Поэтому необходимо использовать соответствующие функции преобразования данных в строку символов и обратно.
Ниже перечислены функции и осуществляемые ими преобразования.
MKI$ (MKL$) — целое (длинное целое) в 2-х (4-х) байтовую строку; MKS$ (MKD$) — вещественное (вещественное двойной точности) в 4-х (8-ми) байтовую строку.
CVI(CVL) — 2-х (4-х) байтовую строку в целое (длинное целое) ; CVS(CVD) — 4-x (8-ми) байтовую строку в вещественное (вещественное двойной точности) .
Считывание из файла прямого доступа включает также пять шагов: открытие файла; разметка буфера; передача записи из файла в буфер (оператор GET) ; обработка данных буфера (переменные буфера доступны из программы) ; закрытие файла.
Если вывод в файл и ввод из файла осуществляются в одной программе, то открытие и закрытие файла осуществляется один раз перед началом и после окончания всех операций с файлом.
Оператор OPEN имеет вид OPEN имя файла AS #номер файла LEN= длина записи (отсутствие указания режима ввода или вывода означает, что файл прямого доступа) .
Оператор FIELD имеет вид FIELD #номер файла, n1ASим [я2, n2ASимя2,… ], где n1, n2,… — длина поля в байтах под переменные им, имя2,… (им, имя2, символьные переменные) .
Операторы LSET, RSET имеют вид LSET имя=символьное выражение RSET имя=символьное выражение Оператор LSET (RSET) заполняет одно поле записи в буфере (оператор LSET — с начала, RSET — с конца, оставшиеся позиции заполняются пробелами) .
Оператор PUT имеет вид PUT#номер файла[я2, номер записи] Этот оператор передает содержимое буфера в файл на место записи с указанным номером (или текущей, если номер не указан) .
Оператор GET имеет вид GET#номер файла[, номер записия2и] Этот оператор передает содержимое записи с указанным номером в буфер (если номера нет, передается текущая запись) .
В качестве примера приводится программа, которая формирует файл прямого доступа из записей следующей структуры: N п/п Фамилия Год рождения В программе переменные обозначены n%, nam$, dat%; для соответствующих полей буфера используются обозначения np$ (2 байта) , nm$ (10 байт) , dt$ (6 байт) .
OPEN «GSR. DAT» AS #1 LEN = 18 FIELD #1,2 AS np$, 10 AS nm$, 6 AS dt$ FOR i%=1 to 3 INPUT n%, nam$, dat% LSET np$ = MKI$ (n%) LSET nm$ = nam$ LSET dt$ = MKI$ (dat%) — 25 PUT #1, i% NEXT i% CLOSE #1 END Следующая программа осуществляет ввод данных из файла GSR. DAT и их печать в обратном порядке.
OPEN «GSR. DAT» AS #1 LEN = 18 FIELD #1,2 AS np$, 10 AS nm$, 6 AS dt$ FOR i% = 3 to 1 STEP -1 GET #1, i% n% = CVI (np$) dat%=CVI (dt$) PRINT n%, nm$, dat% NEXT i% CLOSE #1 END — 26 4. ДВИЖУЩИЕСЯ ИЗОБРАЖЕНИЯ, ЗВУКОВЫЕ ЭФФЕКТЫ И НЕСТАНДАРТНЫЙ ВВОД С КЛАВИАТУРЫ 4.1. Оператор DRAW При помощи оператора DRAW можно чертить (рисовать) на экране различные фигуры (предметы) , используя параметры Un, Dn, Ln, Rn для перемещения на n позиций от текущей точки вверх (U) , вниз (D) , влево (L) или вправо (R) ; En, Fn, Gn, Hn для перемещения по диагонали на n точек вверх и вправо (E) , вниз и вправо (F) , вниз и влево (G) , вверх и влево (H) ; M h, V для перемещения в точку с координатами h и V; M я7+h, я7+V для относительного перемещения на h позиций вправо (+) или влево (-) и на V позиций вниз (+) или вверх (-) . Кроме того, параметр An устанавливает угол n, где n=0 (0 градусов) , 1 (90 градусов) , 2 (180 градусов) или 3 (270 градусов) ; TAn — поворачивает на угол n, где n меняется от -360 до 360 градусов. При n>0 поворот осуществляется против часовой стрелки, при n<0 — по часовой стрелке; Cn — устанавливает цвет n из текущей палитры; Sn — определяет масштаб n/4, n может меняться от 1 до 255 (по умолчанию n=4) ; B — подавляет высвечивание точек по пути перемещения в соответствии с командой С (по умолчанию путь перемещения высвечивается в виде линий, С содержит какие-либо из перечисленных параметров) ; N означает возврат в исходную позицию после выполнения команды перемещения С.
Последовательность параметров, определяющая режим и порядок перемещений, заключается в кавычки и указывается в операторе DRAW.
Например, оператор DRAW «M 160,100» осуществляет перемещение от текущей позиции в позицию (160,100) , оставляя при этом след в виде закрашенных точек. Оператор DRAW «BM160,100» осуществляет то же перемещение, но не оставляя следа. Оператор DRAW «L10 U10 R10 D10» прочерчивает линию на 10 позиций влево, на 10 позиций вверх, на 10 позиций вправо и на 10 позиций вниз, т.е. образует квадрат.
Пробелы, разделяющие параметры, необязательны и используются для наглядности. Оператор DRAW «BM 180,20 NU10 ND10 NL10 NR 10» осуществляет перемещение без обозначения пути в точку (180,20) , а затем чертит крест (знак +) .
В операторе DRAW можно использовать не только символьные константы (см. выше) , но и символьные переменные, в которых заранее заготавливаются отдельные фрагменты рисунка (или весь рисунок) , что позволяет воспроизводить их многократно различными операторами DRAW. Например, SQAR$ = «L10U10R10D10″ DRAW SQAR$ Аргументы перемещения n, k, V могут быть заданы константами, как в приведенных выше примерах операторов DRAW, или переменными. В последнем случае нужно использовать функцию VARPTR$. Например, операторы DRAW » E15 » и a = 15 DRAW » E = » + VARPTR$ (a) выполняют одно и то же действие. Это же относится и к операторам I% = 1 DRAW » M = » + VARPTR$ (I%) + «, 40″ и DRAW » M = 1,40″ Но в первом случае (при использовании переменной I%) оператор DRAW может выполняться при различных ее значениях, например, в цикле.
Замечание. Выполнение оператора DRAW возможно только в графическом режиме (переход при помощи оператора SCREEN) .
4.2. Операторы GET и PUT Операторы GET и PUT позволяют создавать движущиеся изображения.
При выполнении оператора GET текущее состояние части экрана запоминается. При выполнении оператора PUT изображение, сохраненное оператором GET, воспроизводится в другом указанном месте экрана, т.е. изображение как бы движется.
Оператор GET запоминает изображение заданной области экрана в массиве, который должен быть заранее описан. Оператор GET имеет вид — 28 GET (x1, y1) — (x2, y2) , B (x1, y1) , (x2, y2) определяют верхнюю левую и нижнюю правую границы запоминаемой области, B — имя числового массива, в котором сохраняется копия этой части экрана.
Существует формула, определяющая требуемую длину массива (в байтах) , исходя из размера запоминаемой области и режима работы экрана. Так при средней разрешающей способности для сохранения n1 точек по горизонтали и n2 точек по вертикали необходимый размер массива N вычисляется по формуле N = 4 + INT((n1*2+7) /8) * n2 при высокой разрешающей способности N = 4 + INT((n1 + 7) /8) * n2 При использовании массива целого типа (один элемент равен двум байтам) необходимо предусмотреть размер INT((N + 1) /2) .
Оператор PUT помещает копию части экрана, сохраненную оператором GET в любую часть экрана, левый верхний угол которой задан точкой (x, y) . Этот оператор имеет вид PUT (x, y) , B 4.3. Оператор BEEP Этот оператор вызывает звуковой сигнал определенной частоты и длительности 0,25 секунды. Используется, когда нужно привлечь внимание при выполнении какой-либо части программы.
4.4. Оператор SOUND Этот оператор вызывает звуковой сигнал частоты x (от 37 до 32767 Гц) и длительности в «тиках» (1/18 секунды) y SOUND x, y Оператор SOUND с нулевой длительностью прерывает работу предыдущего оператора SOUND, даже если тот не отзвучал до конца. Используется для специальных звуковых эффектов (сирена и пр.) .
4.5. Оператор PLAY Этот оператор позволяет создавать музыку. Общий вид оператора PLAY символьное выражение — 29 где символьное выражение задает порядок звучания нот, их длительность, номер октавы и т.д., используя следующие параметры: буквы C, D, E, F, G, A, B (ноты от «до» до «си») , A#, или A+, обозначает A диез, A- обозначает A бемоль, аналогично — для остальных нот; On означает играть в октаве n (n изменяется от 0 до 6, октава начинается с ноты «до» (буква C) , по умолчанию n = 4) . Например, PLAY » O3 FGA O4 ABC » В этом примере в 3-ей октаве звучат ноты F, G, A, в четвертой октаве ноты A, B, C. Если перед нотой используется знак > или <, например, > A, < C то это означает, что номер текущей октавы увеличивается или уменьшается на 1.
Можно вместо номера октавы и символа ноты задать ее порядковый номер (от 1 до 84) , указав перед ним букву N. Например, PLAY » O4G » аналогично оператору PLAY » N44 » Длительность ноты устанавливается параметром Ln, где n может принимать значения от 1 до 64 и обозначает долю полной ноты, т.е.
L1 обозначает полную ноту, L2 обозначает половинную, L4 четвертную ноту и т.д.
Пауза задается параметром Pn (n — длина паузы, измеряется в длительностях, установленных параметром L) .
Темп задается параметром Tn, где n — число четвертных нот в минуту, может принимать значения от 32 до 255 (по умолчанию n = 120) . Параметры MS, MN или ML определяют долю времени звучания каждой ноты от длительности, определенной параметром L: MS — в 3/4 этой длительности (стаккато) , MN — в 7/8 (обычное, нормальное звучание) , ML — полное время (легато) .
Режим звучания может быть основным, когда следующий оператор программы не будет выполняться, пока оператор PLAY не завершен (параметр MF) , или фоновым, когда выполнение оператора PLAY не препятствует выполнению остальных операторов программы (параметр MB) . Например, PLAY «L8 MF MS O3 GG L4 AG O4 C O3 L2 B» Отдельные музыкальные отрезки можно описать предварительно в виде символьных строк и использовать их затем в операторе PLAY.
Например, — 30 A$=»EDE»: B$ = «CDE»: PLAY A$ + B$ 4.6. Функция INKEY$ Функция INKEY$ действует аналогично оператору INPUT, однако при вводе на экране не высвечивается вводимый символ и не требуется нажатие клавиши «Ввод». Программа при этом не прерывает работу, как при выполнении оператора INPUT. При выполнении оператора X$ = INKEY$ символ, соответствующий нажатой клавише, присваивается переменной X$.
Рассмотрим в качестве примера программу: PRINT «Задайте направление: 1-север, 2-юг, _ 3-запад, 4-восток» aa: D$ = INKEY$ IF D$ = «» THEN aa ON VAL (D$) GOTO nn, ww, ee, ss PRINT «Неправильная клавиша»: GOTO aa nn:… ww:…
Здесь, пока не будет нажата какая-либо клавиша, 3-й и 4-й операторы выполняются в цикле, обеспечивая режим ожидания. Когда клавиша «1», «2», «3», или «4» нажата, соответствующее значение присваивается переменной D$. Далее в операторе ON осуществляется ее преобразование к числовому значению и переход к указанной метке для соответствующей обработки.
5. БИБЛИОТЕКА СТАНДАРТНЫХ ПРОЦЕДУР В ТУРБО-БЕЙСИКЕ 1. Решение систем линейных алгебраических уравнений (SIMQ. BAS) 2. Интерполирование функций (ALI. BAS) 3. Обращение матрицы и вычисление определителя (MINV. BAS) 4. Умножение матриц (GMPRD. BAS) 5. Вычисление корня уравнения (RTMI. BAS) 6. Решение систем нелинейных уравнений (SNEN. BAS) 7. Вычисление корней полинома (POLRT. BAS) 8. Вычисление производной (DCAR. BAS) 9. Вычисление интеграла (QATR. BAS) 10. Экстремум функции (FMCG. BAS) 11. Решение систем обыкновенных дифференциальных уравнений (RKGS. BAS) 12. Сглаживание функций (SG13. BAS) 13. Аппроксимация функций (APFS. BAS) 14. Упорядочивание значений (используется при интерполировании функций) (ATSG. BAS) 15. Вычисление полиномов Чебышева (используется при аппроксимации функций) (APCH. BAS) Подключение библиотечной процедуры осуществляется оператором $INCLUDE «имя библиотечной процедуры» Пример использования библиотечной процедуры QATR. BAS $INCLUDE «QATR. BAS» CLS PRINT «ВЫЧИСЛЕНИЕ ИНТЕГРАЛА» CALL QATR(0,1,. 0001,24, INTEGRAL, IER%) PRINT «ИНТЕГРАЛ =»; PRINT USING «###. ####»; INTEGRAL PRINT «КОД ОШИБКИ =»; IER% DEF FNFCTN (X) = LOG (1 + X) / (1 + X * X) END — 32 6. РЕКОМЕНДУЕМЫЙ ПОРЯДОК РАБОТЫ НА ПЭВМ ПРИ СОЗДАНИИ И ВЫПОЛНЕНИИ ПРОГРАММ НА ЯЗЫКЕ ТУРБО-БЕЙСИК 1. Войти в Турбо-Бейсик. Для этого набрать tb в командной строке и нажать клавишу «Ввод». Еще раз нажать «Ввод».
В верхней строке экрана высвечивается главное меню.
2. Для первоначального ввода или исправления программы войти в редактор (пункт меню EDIT) .
3. После того, как программа составлена (или внесены исправления) , ее необходимо записать в память на диск или дискету (пункт главного меню FILE, подпункт SAVE или клавиша F2) .
Замечание. Рекомендуется после набора каждых 10 строк записывать программу на диск (простым нажатием клавиши F2) , чтобы в случае сбоя ПЭВМ программа не пропала.
4. Выполнить программу (пункт RUN главного меню) , переход на большой экран для анализа результатов — команда ALT/F5.
5. Выйти из Турбо-Бейсика (пункт FILE, подпункт EXIT или команда ALT/X) .
Замечание. В каждом режиме в нижней строке экрана указано назначение функциональных клавиш. Например, если курсор находится в главном меню, то нажатие клавиши F1 (Help) вызывает появление на экране сведений по использованию соответствующего режима, переход к следующей странице «Ввод». Нажатие F5 (Zoom) вызывает раскрытие текущего окна на весь экран, повторное нажатие F5 возврат в исходное положение; F6 (Next) — переход к следующему окну; F7 (Goto) — переход в режим редактирования; ALT/X (Exit) выход из Турбо-Бейсика.
В режиме редактирования: F1 — Help (см. выше) , F2 — Save (запись на диск или дискету) ; F3 — New (загрузка новой программы, имя вводится в появившееся окно) и т.д.
! Логический оператор | Указывает или операция в логическом выражении. | |
# Оператор отношения | Означает, что не равно . | |
и логический оператор | Указывает, что оба компонента логического выражения должны быть истинными. | |
* Арифметический оператор | Математический оператор, указывающий на операцию умножения. | |
* = Оператор присвоения | Умножает a числовое выражение и присваивает его переменной. | |
+ арифметический оператор | Выполняет сложение или указывает положительное числовое значение. | |
+ = Оператор присвоения | Добавляет заданное числовое выражение и присваивает его данной переменной. | |
— Арифметический оператор | Обозначает операция вычитания или для обозначения отрицательного числового значения. | |
\ Арифметический оператор | Рассчитывает остаток от деления дивиденда на делитель (иначе известный по модулю).Арифметический оператор | Альтернативный средства индикации операции возведения в степень на конкретном числовое выражение. |
— = Оператор присвоения | Уменьшает a переменная числовым выражением. | |
/ Арифметический оператор | Осуществляет деление. | |
/ = Оператор присвоения | Делит переменную числовым выражением и присваивает его данной переменной. | |
: Оператор отношения | Конкатенаты строки в операторе присваивания или, когда: отображается в конце print или crt выражение, подавляет автоматическую комбинацию CR / LF, таким образом удерживая текущее положение печати / отображения. | |
: = Оператор присвоения | Конкатенаты строку переменной и присваивает ее обратно данной переменной. | |
<= реляционный Оператор | Меньше или равно оператору. | |
<> Оператор отношения | представляет собой не равно оператору. | |
= Оператор присвоения | Представляет либо оператор присваивания в операторе присваивания или реляционном оператор в условном выражении. | |
> Оператор отношения | больше чем оператор . | |
> < Оператор отношения | Не равный оператор. | |
> = Отношения Оператор | Больше чем или равно оператору. | |
и логический оператор | Указывает, что оба компонента логического выражения должны быть истинными. | |
Оператор отношений cat | Конкатенаты строки в выражении. | |
Оператор присвоения экв. | Представляет либо оператор присваивания в операторе присваивания или реляционном оператор в условном выражении. | |
ge Оператор отношений | обозначает большее условие чем или равно между двумя элементами. | |
gt Оператор отношения | обозначает большее чем условие между двумя элементами. | |
le Оператор отношения | Представляет меньше или равно (<=) условие. | |
Оператор отношения lt | Используется в условных выражения как альтернативная форма условия меньше (<). | |
Оператор отношения соответствия | Проверяет строку и определяет, соответствует ли он предопределенному шаблону алфавитного, числовые, подстановочные или буквенные символы. | |
ne Оператор отношения | представляет собой не равно условию в реляционных выражениях. | |
или логический оператор | Указывает, что только один из компонентов логического выражения должен быть истинным чтобы выражение оценивалось как истинное. |
Учебники и примечания по основам работы с операторами | Базовое программирование
Операторы — это символы, которые говорят компилятору выполнять определенные математические или логические манипуляции. В этом руководстве мы постараемся охватить наиболее часто используемые операторы в программировании.
Во-первых, давайте классифицируем их:
1. Арифметика
2. Реляционная
3. Побитовая
4. Логическая
5. Присваивание
6.Прирост
7. Разное
Арифметические операторы :
Символ | Эксплуатация | Использование | Пояснение |
+ | дополнение | х + у | Добавляет значения по обе стороны от оператора |
– | вычитание | х-у | Вычитает правый операнд из левого операнда |
* | умножение | х * у | Умножает значения по обе стороны от оператора |
/ | отдел | х / у | Делит левый операнд на правый операнд |
% | модуль | х% у | Делит левый операнд на правый и возвращает остаток |
Операторы отношения : Эти операторы используются для сравнения.Они возвращают либо истинных , либо ложных в зависимости от результата сравнения. Оператор ‘==’ не следует путать с ‘=’. Операторы отношения следующие:
Символ | Эксплуатация | Использование | Пояснение |
== | равно | х == у | Проверяет, совпадают ли значения двух операндов. равно или нет, если да, то условие выполняется. |
! = | не равно | х! = У | Проверяет, совпадают ли значения двух операндов. равно или нет, если значения не равны, условие становится истинным. |
> | больше | х> у | Проверяет, равно ли значение левого операнда больше значения правого операнда, если да, то условие выполняется |
< | менее | х <у | Проверяет, меньше ли значение левого операнда чем значение правого операнда, если да, то условие становится истинным. |
> = | больше или равно | х> = у | Проверяет, равно ли значение левого операнда больше или равно значению правого операнда, если да, то условие становится истинным. |
<= | меньше или равно | х <= у | Проверяет, меньше ли значение левого операнда чем или равно значению правого операнда, если да, то условие становится истинным. |
Побитовые операторы : Эти операторы очень полезны, и у нас есть некоторые приемы, основанные на этих операторах.Эти операторы преобразуют заданные целые числа в двоичные, а затем выполняют требуемую операцию и возвращают результат в десятичном представлении.
Символ | Эксплуатация | Использование | Пояснение | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
и | побитовое И | x & y | Устанавливает бит результата, если он установлен в обоих операндах. y $$ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
>> | сдвиг вправо | x >> y | Значение левого операнда перемещается вправо на количество битов, заданное правым операндом.$$ y $$ = 0011 0001 = 49 ~ $$ x $$ = 1101 0101 $$ x << 2 $$ = 1010 1000 = 168. Обратите внимание, что биты сдвинуты на 2 единицы влево, а новые биты заполняются нулями. $$ x >> 2 $$ = 0000 1010 = 10 $$. Обратите внимание, что биты сдвигаются на 2 единицы вправо, а новые биты заполняются нулями. Для получения дополнительной информации о том, как работают эти операторы, см .: Bit Manipulation
Пусть x = 10 затем после y = x ++ ; y = 10 и x = 11, это потому, что x присваивается y перед его приращением. но если бы мы написали y = ++ x ; y = 11 и x = 11, потому что x присваивается y после его приращения. То же самое и для операторов декремента. Условный оператор : похож на if-else : x = (условие)? а: б Правила приоритета : Правила приоритета определяют, какой оператор оценивается первым, когда два оператора с разным приоритетом являются смежными в выражении. Правила ассоциативности : Правила ассоциативности определяют, какой оператор вычисляется первым, когда два оператора с одинаковым приоритетом являются смежными в выражении. Приоритет операторов : В следующей таблице описан порядок приоритета операторов, упомянутых выше. Здесь операторы с наивысшим приоритетом отображаются вверху, а операторы с самым низким — внизу. В любом данном выражении первыми будут оцениваться операторы с более высоким приоритетом.
Предоставил: Шубхам Гупта Основные операторы в Python с примерамиОператоры — это символы, которые указывают интерпретатору выполнить определенную операцию, такую как арифметика, сравнение, логика и т. Д. Различные типы операторов в Python перечислены ниже:
Рассмотрим выражение «a = 2 + 3» .Здесь
Примечание. Чтобы получить результат с плавающей точкой, один из операндов также должен иметь тип с плавающей запятой. Операторы отношенияОператор отношения используется для сравнения двух операндов для определения отношения между ними. Он возвращает логическое значение (истина или ложь) в зависимости от условия.
Поразрядные операторыПоразрядный оператор выполняет операции с операндами бит за битом Рассмотрим a = 2 (в двоичной записи 10) и b = 3 (в двоичной записи 11) для следующих применений.11 = 01) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
~ | Выполняет побитовую операцию НЕ над операндом. Переворачивает каждый бит в операнде | ~ a = -3 (двоичный: ~ (00000010) = (11111101)) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
>> | Выполняет побитовый сдвиг вправо. Сдвигает биты левого операнда вправо на количество бит, указанное как правый операнд | a >> b = 0 (двоичный: 00000010 >> 00000011 = 0) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
<< | Выполняет побитовый сдвиг влево.Сдвигает биты левого операнда влево на количество бит, указанное как правый операнд | a << b = 16 (двоичный: 00000010 << 00000011 = 00001000) |
Операторы присваивания
Оператор присваивания используется для присвоения значений переменной. Обычно это сочетается с другими операторами (такими как арифметические, побитовые), где операция выполняется с операндами, а результат присваивается левому операнду.
Рассмотрим следующие примеры:
a = 18 .Здесь =
— оператор присваивания, а результат сохраняется в переменной a.
a + = 10 . Здесь + =
— оператор присваивания, а результат сохраняется в переменной a. Это то же самое, что a = a + 10.
Оператор | Описание |
---|---|
= | a = 5. Значение 5 присваивается переменной a |
+ = | a + = 5 эквивалентно a = a + 5 |
— = | a — = 5 эквивалентно a = a — 5 |
* = | a * = 3 эквивалентно a = a * 3 |
/ = | a / = 3 эквивалентно a = a / 3 |
% = | a% = 3 эквивалентно a = a% 3 |
** = | a ** = 3 эквивалентно a = a ** 3 |
// = | a // = 3 эквивалентно a = a // 3 |
& = | a & = 3 эквивалентно a = a & 3 |
| = | a | = 3 эквивалентно a = a | 3 |
^ = | a ^ = 3 эквивалентно a = a ^ 3 |
>> = | a >> = 3 эквивалентно a = a >> 3 |
<< = | a << = 3 эквивалентно a = a << 3 |
Логические операторы
Логический оператор используется для принятия решения на основе нескольких условий.В Python используются логические операторы и
, или
и , а не
.
Оператор | Описание | Использование |
---|---|---|
и | Возвращает True, если оба операнда истинны | а и б |
или | Возвращает истину, если любой из операндов истинен | а или б |
не | Возвращает True, если операнд ложный | , а не |
Операторы членства
Оператор членства используется для идентификации членства в любой последовательности (списки, строки, кортежи).
в
и не в
являются операторами членства.
в
возвращает True, если указанное значение найдено в последовательности. В противном случае возвращает False.
not in
возвращает True, если указанное значение не найдено в последовательности. В противном случае возвращает False.
a = [1,2,3,4,5]
# 3 в списке а?
print 3 in a # печатает True
# 12 нет в списке а?
print 12 not in a # printts True
str = "Привет, мир"
# Содержит ли строка str World?
print "World" в str # printts True
# Содержит ли строка str world? (примечание: с учетом регистра)
print "world" в str # prints False
print "code" не входит в str # print True
Операторы идентификации
Оператор идентификации используется для проверки того, разделяют ли две переменные одно и то же место в памяти.
- это
, а - не
— операторы идентификации.
is
возвращает True, если операнды относятся к одному и тому же объекту. В противном случае возвращает False.
is not
возвращает True, если операнды не относятся к одному и тому же объекту. В противном случае возвращает False.
Обратите внимание, что два значения, когда они равны, не обязательно должны означать, что они идентичны.
а = 3
б = 3
с = 4
print a is b # выводит True
print a is not b # печатает False
print a is not c # печатает True
х = 1
у = х
г = у
print z равно 1 # печатает True
print z is x # печатает True
str1 = "FreeCodeCamp"
str2 = "FreeCodeCamp"
print str1 is str2 # выводит True
print "Код" - str2 # выводит False
а = [10,20,30]
b = [10,20,30]
print a is b # печатает False (поскольку списки изменяемы в Python)
Операторы | Функции и операторы | Руководство пользователя | Поддержка | Epi Info ™
АРИФМЕТИЧЕСКИЙ
Описание
Эти основные арифметические операторы можно использовать в сочетании с другими командами.Результат — числовое значение.
Синтаксис
[Выражение] <Оператор> [Выражение]
- [Выражение] — числовое значение или переменная, содержащая данные в числовом формате.
Комментарии
Результаты выражаются в числовом формате. Основные математические операторы, которые можно использовать в Epi Info, следующие:
- Сложение + Основной арифметический оператор, используемый для сложения; Результатом арифметического оператора обычно является числовое значение (т.е., EX. 3 + 3).
- Вычитание — (Используется для вычитания или отрицания.) Основной арифметический оператор, используемый для вычитания или отрицания; Результатом арифметического оператора обычно является числовое значение (например, Пример 3 — 1).
- Умножение * (звездочка) Основной арифметический оператор, используемый для умножения; Результатом арифметического оператора обычно является числовое значение.
- Деление / Основной арифметический оператор, используемый для деления; Результатом арифметического оператора обычно является числовое значение.
- Модуль или остаток MOD
Арифметические операторы показаны в порядке убывания приоритета. Круглые скобки могут использоваться для управления порядком, в котором оцениваются операторы. Однако порядок по умолчанию часто дает правильный результат.
Хотя можно выполнять математические вычисления с датами, считающимися количеством дней (например, IncubationDays = SymptomDateTime — ExposureDateTime), поведение служб базы данных, лежащих в основе Epi Info, делает более эффективным использование функций временных интервалов (например, IncubationDays = SymptomDateTime — ExposureDateTime).2 СПИСОК var1 var2 var3 var4 var5 var6
Базовые операторы — язык программирования Эликсир
Начало работы
В предыдущей главе мы видели, что Elixir предоставляет +
, -
, *
, /
в качестве арифметических операторов, а также функции div / 2
и rem / 2
для целочисленного деления и остатка.
Эликсир также предоставляет ++
и -
для управления списками:
iex> [1, 2, 3] ++ [4, 5, 6]
[1, 2, 3, 4, 5, 6]
iex> [1, 2, 3] - [2]
[1, 3]
Конкатенация строк выполняется с <>
:
iex> "foo" <> "bar"
"фубар"
Elixir также предоставляет три логических оператора: или
, и
и , а не
.Эти операторы являются строгими в том смысле, что они ожидают что-то, что оценивается как логическое ( истинно
или ложно
) в качестве своего первого аргумента:
iex> правда и правда
правда
iex> false или is_atom (: пример)
правда
Предоставление не-логического значения вызовет исключение:
iex> 1 и верно
** (BadBooleanError) ожидал логическое значение слева от "and", получил: 1
или
и и
— это операторы короткого замыкания.Они выполняют только правую часть, если левой части недостаточно для определения результата:
iex> false и raise («Эта ошибка никогда не возникает»)
ложный
iex> истина или повышение («Эта ошибка никогда не возникает»)
правда
Помимо этих логических операторов, Elixir также предоставляет ||
, &&
и !
, которые принимают аргументы любого типа. Для этих операторов все значения, кроме false
и nil
, будут иметь значение true:
# или
iex> 1 || правда
1
iex> false || 11
11
# а также
iex> ноль && 13
ноль
iex> истина && 17
17
# нет
iex>! правда
ложный
iex>! 1
ложный
iex>! ноль
правда
Как правило, используйте и
, или
и , а не
, если вы ожидаете логические значения.Если какой-либо из аргументов не является логическим, используйте &&
, ||
и !
.
Elixir также предоставляет ==
, ! =
, ===
, ! ==
, <=
, > =
, <
и >
в качестве операторов сравнения:
iex> 1 == 1
правда
iex> 1! = 2
правда
iex> 1 <2
правда
Разница между ==
и ===
в том, что последний более строгий при сравнении целых чисел и чисел с плавающей запятой:
iex> 1 == 1.0
правда
iex> 1 === 1.0
ложный
В Elixir мы можем сравнить два разных типа данных:
Причина, по которой мы можем сравнивать разные типы данных, - это прагматизм. Алгоритмам сортировки не нужно беспокоиться о разных типах данных для сортировки. Общий порядок сортировки определен ниже:
число <атом <ссылка <функция <порт
На самом деле вам не нужно запоминать этот порядок; достаточно знать, что такой порядок существует.
Для получения справочной информации об операторах (и порядке заказа) проверьте справочную страницу об операторах.
В следующей главе мы обсудим сопоставление с образцом с помощью оператора сопоставления =
.
Основные операторы в Python | Наука о данных о Земле
Цели обученияВ конце этого упражнения вы сможете:
- Объяснять, как операторы используются в Python для выполнения определенных вычислений или операций.
- Напишите код Python для выполнения различных операций с данными, включая математические вычисления и условные подмножества.
Что такое операторы в Python?
Операторы - это символы в Python, которые выполняют определенные вычисления или операции. Значение или условие, с которым работает оператор, называется операндом. Операндом может быть переменная, такая как jan_precip_in
, которая имеет некоторое значение (скажем, 0.70) или структуру данных, например список, содержащий месяцев
.Операнд также может быть условным выражением или оператором.
Например, вы можете проверить, что список месяцев
содержит значение января
. Если список содержит января
, возврат по чеку будет Истинный
(январь существует в списке месяцев
). Если он не содержит январь
, возврат будет Ложь
(январь отсутствует в списке месяцев
). В Python существует множество различных типов операторов, включая:
Оператор | Использование | Пример |
---|---|---|
Арифметика | для выполнения математических вычислений | boulder_precip_in *.4 |
Назначение | для присвоения новых значений (обычно в результате арифметических вычислений) | boulder_precip_in * = 25,4 |
Сравнительный или реляционный | для сравнения операндов символа > ) | boulder_precip_in> phoenix_precip_in |
Identity | , чтобы проверить, совпадают ли операнды | boulder_precip_in, не содержится ли другой член phoenix_precip_in | 9006 9000
Логический | для проверки истинности операндов | «Январь» в месяцах И «Январь» в месяцах |
Арифметические операторы в Python
В 9033 Python , есть много арифметических операций дополнения, которые могут быть выполнены, включая операторы для:
- сложения (
+
) - вычитания (
-
) - умножения (
*
) - деления (
/
) - показателей (
**
)
Просмотрите ячейки ниже, чтобы изучить математические операторы в Python .
# Добавить два значения
а = 2
б = 3
а + б
Примеры использования математических операторов в Python - преобразование единиц
Для научных рабочих процессов эти арифметические операторы очень полезны для преобразования единиц измерения, например, из дюймов в миллиметры (1 дюйм = 25,4 мм) для осадков значения. В приведенном ниже примере показано преобразование среднего значения осадков для Боулдера, CO в январе, из дюймов в миллиметры.
jan_precip_inches = 0.70
дюймы_то_мм = 25,4
jan_precip_inches * дюймы_to_mm
Задача - Типы данных и математикаИнтерактивное действие
Создайте две переменные:
-
march_precip_in
, который содержит числовое значение1.85
, которое представляет среднее количество осадков в Боулдере в марте. -
in_to_mm
, который содержит значение25,4
, которое представляет значение для преобразования дюймов в мм.
Используя только эти переменные и арифметические операторы, создайте третью переменную march_precip_mm
, которая представляет значение march_precip_in
(среднее количество осадков в Боулдере), преобразованное в миллиметры (мм).Наконец, ответьте на вопрос:
- Какой тип
()
объекта:march_precip_mm
?
Операторы присваивания в Python
Хотя арифметические операторы очень полезны для вычислений, они не изменяют исходные значения используемых переменных.
Например, при запуске:
jan_precip_inches = 0.70
дюймы_то_мм = 25,4
jan_precip_inches * дюймы_to_mm
переменная jan_precip_inches
по-прежнему сохранит значение 0.7
(измерение в дюймах) даже после выполнения вычисления для преобразования в миллиметры.
Комбинирование присвоения с арифметическими операторами: арифметическое присвоение
Если вы хотите присвоить новое значение в результате вычисления, вы можете использовать оператор присваивания, который объединяет арифметический оператор (например, *
) с присваиванием =
, чтобы установить новое значение. Например, вы можете объединить *
и =
, чтобы умножить значение и установить результат, равный самому себе, плюс новое значение.
jan_precip = 0.70
дюймы_то_мм = 25,4
jan_precip * = дюймы_до_ мм
jan_precip
Напомним, что на предыдущей странице, посвященной работе со списками, вы также использовали оператор присваивания для добавления элементов в конец списка. Это работает, когда ваш список содержит строки. Это частный случай оператора присваивания сложения + =
, потому что он фактически не выполняет математическую операцию над списком. Он просто добавляет значения как новые элементы в конец списка.
месяцев = [«январь», «февраль»]
месяцы
месяцев + = [«март», «апрель»]
месяцы
[«январь», «февраль», «март», «апрель»]
Однако не все операторы присваивания могут использоваться для всех типов объектов. Например, следующий код приведет к ошибке, потому что Python не знает, как обрабатывать переназначение каждого значения в списке.
boulder_precip_in = [0,70, 0,75, 1,85]
boulder_precip_in * = 25.4
Совет по данным: Вы можете просмотреть документацию Python по типам и операциям, чтобы узнать, какие операции могут выполняться с разными типами объектов.
ЗадачаСоздайте две переменные:
-
year_avg_precip_nyc
, что равно42,65
Обратите внимание, что это значение представляет собой общее среднегодовое количество осадков для Нью-Йорка. Однако отсутствует значение количества осадков в декабре. Вы собираетесь это исправить! -
dec_avg_precip_nyc
, что равно3.58
Используя оператор + =
(сложение), добавьте de December_precip_nyc
к year_avg_precip_nyc
, чтобы Annual_avg_precip_nyc
представляло полное среднегодовое количество осадков в Нью-Йорке.
Вывод операторов арифметического присваивания не распечатывается автоматически
Обратите внимание, что вывод не распечатывается автоматически при использовании операторов арифметического присваивания. Это связано с тем, что используется присваивание (вы используете знак равенства, поэтому выходное значение переназначается переменной).
Помните, что это:
jan_precip = 0.70
jan_precip * = 25,4
совпадает с:
jan_precip = 0.70
jan_precip = 25,4 * jan_precip
jan_precip = 0,70
jan_precip * = 25,4
Чтобы увидеть новое значение, вы можете вызвать имя переменной (например, jan_precip
) или использовать оператор печати (например, print (jan_precip)
) для отображения нового значения. Использование оператора печати может быть очень полезным, потому что тогда вы можете распечатать несколько значений.Например, обратите внимание, что при вызове только имен переменных (например, a
, jan_precip
, b
) отображается только значение последней переменной.
Используя print ()
, вы можете распечатать столько вещей, сколько захотите.
печать (а)
печать (jan_precip)
печать (б)
Вы даже можете комбинировать переменные с текстовой строкой в операторе печати, включив текстовую строку «текст»
в оператор печати. Для этого просто отделите текстовую строку от печатаемого объекта запятой ,
.
print ("Январские осадки:", jan_precip)
Осадки в январе: 17.779999999999998
Обратите внимание, что слово print
не отображает вывод. Вместо этого вы просто видите результат без скобок или кавычек для текстовой строки. Теперь вы использовали свою первую функцию Python - print ()
! Функции в Python - это команды, которые могут принимать входные данные, которые используются для создания выходных данных.Вы узнаете больше о функциях позже в этих упражнениях, и вы будете часто использовать функцию print
, так как она может быть очень удобна для просмотра результатов и для передачи статуса вашего кода.
Операторы отношения в Python
Часто в Python вам нужно сравнить два значения друг с другом. Для этого вы можете проверить оператор, например 3 <4
, и получить одно из двух значений из Python : True
или False
.Они называются логическими значениями и могут быть очень полезными в рабочих процессах сценариев. Логическое значение - это либо 1 (Истина), либо 0 (Ложь). Подобно строкам
или целым числам
, логические значения являются их собственным типом данных.
В Python можно использовать множество реляционных операций, включая операторы для:
- равно (
==
) - не равно (
! =
) - больше чем (
>
) - больше или равно (
> =
) - меньше или меньше (
<
) - меньше или равно (
<=
)
Просмотрите ячейки ниже, чтобы узнать, что эти операции возвращают в различных обстоятельствах.
# Какой тип объекта - `True`?
# Обратите внимание, что букву T нужно писать с заглавной буквы! type (true) работать не будет!
тип (True)
Операции отношения возвращают логическое значение.
# Значение 3 меньше 4?
3 <4
# Значение 3 больше 4?
3> 4
# 3 НЕ равно 4?
3! = 4
# 3 меньше или равно 4?
3 <= 4
# 3 меньше или равно 3?
3 <= 3
# 3 больше или равно 4?
3> = 4
Подобно другим типам типов переменных, переменной можно присвоить bool
значений.
Подсказка по данным: Вам не нужно помещать операцию ниже (3> 2)
в скобки, как это сделано ниже. Однако это немного упрощает чтение кода.
is_greater = (3> 2)
лучше
Операторы отношения могут оказаться чрезвычайно мощными, если вы начнете разрабатывать более сложные сценарии. Например, вы можете проверить, имеет ли переменная определенное значение. Если это так (условие истинно), вы говорите скрипту выполнить определенную операцию.
Пример:
осадков = 3
если количество осадков> 2:
# Выполните некоторые вычисления
Вы узнаете больше об условиях в главе 17 введения в учебник по земным данным.
Операторы членства в Python
Оператор членства, такой как в
, проверяет, содержит ли один элемент другой элемент. Это может быть полезно для строк, списков или других объектов хранения данных, о которых вы узнаете в последующих уроках, таких как фреймы данных.
осадков = "Осадки"
# Символы `Precip` в объекте называются осадками?
"Осадки" в осадках
temp_1 = [70, 68, 74]
68 в temp_1
# Вы также можете объединить с, чтобы не проверять, не является ли членство
69 не в temp_1
Логические операторы
Логические операторы могут использоваться для проверки комбинаций логических значений. Наиболее распространенными логическими операторами являются и
и или
. и
проверит, что оба проверяемых утверждения верны. Истина и Истина
вернет Истина
, но Истина и Ложь
вернет Ложь
. или
проверит, что одно из проверяемых утверждений верно. В отличие от и
, True или True
вернет True
, а True или False
также вернет True
. False и False
и False или False
вернут False
.
# Верно и верно
68 в temp_1 и 70 в temp_1
# Истина или ложь
68 в temp_1 и 69 в temp_1
# Верно или верно
68 в temp_1 или 70 в temp_1
# Верно или неверно
68 в temp_1 или 69 в temp_1
Операторы идентификации в Python
Оператор идентификации, например is
, проверяет, ссылаются ли две переменные на один и тот же объект.Он похож на оператор ==
, за исключением того, что он не только проверяет идентичность значений двух переменных, но и проверяет, что они ссылаются на одно и то же в Python . Это тонкое различие, но может быть очень полезным.
Совет по данным: Распределение памяти в Python
Чтобы понять разницу между ,
и ==
, сначала вам нужно немного узнать о том, как Python хранит данные.В Python при объявлении переменной на вашем компьютере есть определенное место, зарезервированное для хранения этих данных. У этого места есть адрес в памяти.
В Python вы можете увидеть идентификатор памяти переменной с помощью функции id ()
. Это распечатает длинное целое число, которое Python идентифицирует объект. Это то, что Python использует для поиска переменной в памяти компьютера.
Когда вы создаете переменную, скажем, a = 3
, если вы запустите id (a)
или id (3)
, вы получите тот же результат.
У меня это было 94641000121024
. Это адрес памяти, где Python хранит переменную 3
для вашего скрипта.
Когда вы создаете список, для вашего списка создается новый идентификатор
, поскольку это новая переменная в Python . Допустим, вы составили такой список: list1 = [1, 2, 3]
. Этому списку будет присвоен новый идентификатор, например 140657632719088
.
Если вы создадите идентичный список вроде этого: list2 = [1, 2, 3]
и проверите его id
, он будет сохранен в другом месте, например 140657632694912
.Это потому, что список - это новая переменная, которая хранится в новом месте в памяти.
Из-за этого list1 == list2
вернет True
, потому что их значения равны. Однако list1 is list2
вернет False
, поскольку они хранятся в разных частях памяти вашего компьютера.
Однако, если вы составите список, назначив его старому списку, также известному как list1 = list2
, они оба будут иметь адрес памяти list1
, 140657632719088
.Это потому, что вы не создавали новую переменную и, следовательно, не создавали новый адрес памяти.
Вместо этого вы указывали на старый адрес памяти при создании list2
. Из-за этого list1 == list2
вернет True
, потому что их значения равны, И list1 is list2
также вернет True
, поскольку они хранятся в одном месте.
# Создание переменных для сравнения
temp_1 = [70, 68, 74]
temp_2 = [70, 68, 74]
# Создайте новую переменную temp_3 из temp_1
temp_3 = temp_1
# Проверить, что temp_3 совпадает с temp_1
temp_1 это temp_3
# Пока temp_1 и temp_2 содержат одинаковые значения...
temp_1 == temp_2
# Созданы независимо
temp_1 это temp_2
В этом примере вы легко можете увидеть различие между == и is. Несмотря на то, что temp_1 и temp_2 содержат одинаковые значения, технически это не один и тот же список. То есть они не хранятся в одной и той же области памяти на вашем компьютере. Однако, поскольку temp_3 был установлен равным temp_1, они точно такие же.
Вы также можете объединить -
с , а не
, чтобы проверить, что две переменные НЕ совпадают.
Как и все другие типы логических значений, выходы этих операций также могут быть присвоены переменным.
is_the_same = (temp_1 is temp_2)
та же
Задача: проверьте свои знания Ниже приведены переменные, присвоенные выходным данным реляционных, идентификационных, членских или логических операций. В настоящее время каждая операция возвращает False
. Измените операции так, чтобы все они возвращали True
.
# Изменить реляционную операцию, чтобы назначенная переменная возвращала True
относительный = (3 <= 2)
# Измените операцию идентификации, чтобы присвоенная переменная возвращала True
идентичность = (4 из 3)
# Измените операцию членства, чтобы назначенная переменная возвращала True
членство = (72 в temp_1)
# Изменить логическую операцию, чтобы присвоенная переменная возвращала True
temp_1 = [70, 68, 74]
логический = (68 в temp_1 и 69 в temp_1)
<>: 5: SyntaxWarning: "есть" с литералом.Вы имели в виду "=="?
<>: 5: SyntaxWarning: "is" с литералом. Вы имели в виду "=="?
: 5: SyntaxWarning: "is" с литералом. Вы имели в виду "=="?
идентичность = (4 из 3)
# Сейчас все эти объекты возвращают True.
# Измените приведенный выше код, чтобы все они возвращали True!
печать (реляционная, идентичность, членство, логическая)
<>: 7: SyntaxWarning: "есть" с литералом. Вы имели в виду "=="?
<>: 7: SyntaxWarning: "is" с литералом.Вы имели в виду "=="?
: 7: SyntaxWarning: "is" с литералом. Вы имели в виду "=="?
идентичность = (4 из 4)
Операторы Python - GeeksforGeeks
Операторы Python
Операторы обычно используются для выполнения операций со значениями и переменными в Python. Это стандартные символы, используемые для логических и арифметических операций. В этой статье мы рассмотрим различные типы операторов Python.
- Арифметические операторы: Арифметические операторы используются для выполнения математических операций, таких как сложение, вычитание, умножение и деление.
Оператор Описание Синтаксис + Сложение: добавляет два операнда x + y - Вычитание: вычитает два операнда 000 *0009000x - y Умножение: умножение двух операндов x * y / Деление (с плавающей запятой): делит первый операнд на второй x / y // Деление (пол): делит первый операнд на второй x // y % Modulus: возвращает остаток, когда первый операнд делится на второй x% y ** Power: возвращает первое возведение в мощность второй x ** y 00a
=
9
b
=
4
добавить
=
a
+
b
sub
=
00 00 00 муль
=
a
*
b
div1
=
a
/
b
00 00 00 00 00 00 00 9117 /
/
b
мод
=
a
%
b
911 911 911 911 911 911 911 911 9117 *
b
печать
(добавить) 9114 1
print
(sub)
print
(mul)
print
(div1)
print
(div2)
8 9000 print
9000 print
печать
(p)
Выход:
13 5 36 2.25 2 1 6561
Пожалуйста, обратитесь к Различия между / и // , чтобы узнать некоторые интересные факты об этих двух операторах. - Операторы отношения: Операторы отношения сравнивают значения. Он либо возвращает True , либо False в зависимости от условия.
Оператор Описание Синтаксис > Больше чем: Истина, если левый операнд больше правого x> y Менее: Истина, если левый операнд меньше правого x == Равно: Истина, если оба операнда равны x == y ! = Не равно - Истина, если операнды не равны x! = Y > = Больше или равно: Истина, если левый операнд больше или равен правому x> = y Меньше или равно: Истина, если левый операнд меньше или равен правый x a
=
13
b
=
33
0 печать 911
печать
(a
печать
(a
=
=
b)
!
=
b)
печать
(a>
=
b)
печать
Выход:
Ложь Правда Ложь Правда Ложь Правда
- Логические операторы: Логические операторы выполняют логические операции И , Логические операции ИЛИ и Логические операции НЕ .
Оператор Описание Синтаксис и Логическое И: Истина, если оба операнда верны x и y или Логическое ИЛИ: Истина, если любой из операндов истинен x или y не Логическое НЕ: Истинно, если операнд ложный не x a
=
Истинно
печать
(a
и
b)
печать
(a
или печать
00 9114 9114
9114
9114
00 b (
, а не
a)
Выход:
Ложь Правда Ложь
- Побитовые операторы: Побитовые операторы воздействуют на биты и выполняют побитовую операцию. b)
печать
(a >>
2
)
9000 печать<<
2
)
Выход:
0 14 -11 14 2 40
- Логические операторы: Логические операторы выполняют логические операции И , Логические операции ИЛИ и Логические операции НЕ .
- Операторы присваивания: Операторы присваивания используются для присвоения значений переменным.
Оператор Описание Синтаксис = Присвойте значение правой части выражения левому операнду x = y + z + = Добавить И: Добавить правый операнд с левым операндом, а затем назначить левому операнду a + = b a = a + b - = Вычесть И: вычесть правый операнд из левого операнда и затем присвоить левому операнду a- = b a = ab * = Умножить И: умножить правый операнд на левый операнд и затем присвоить левому операнду a * = b a = a * b / = Разделить И: разделить левый операнд с правым операндом, а затем присвоить левому операнду a / = b a = a / b % = Модуль И: принимает модуль с использованием левого и правого операнда и присваивает результат левому операнду a% = b а = а% б 900 09 // = Разделить (пол) И: разделить левый операнд на правый и затем присвоить значение (пол) левому операнду a // = b a = a // b * * = Экспонент И: вычислить значение экспоненты (увеличить степень) с использованием операндов и присвоить значение левому операнду a ** = b a = a ** b & = Выполняет побитовое И для операндов и присваивает значение для левого операнда a & = b a = a & b | = Выполняет побитовое ИЛИ для операндов и присваивает значение левому операнду a | = b a = a | b ^ = Выполняет побитовое исключающее ИЛИ для операндов и присваивает значение левому операнду a ^ = b a = a ^ b >> = Выполняет побитовый сдвиг вправо для операндов и присваивает значение левому операнду a >> = b a = a >> b Выполняет побитовый сдвиг влево для операндов и присваивает значение для левого операнда a - Специальные операторы: Есть несколько специальных типов операторов, таких как-
a1
=
3
b1
0 = a2
=
'GeeksforGeeks'
b2
=
'GeeksforGeeks'
a3
=
[
b3
=
[
1
,
2
,
3
]
0 0 0 0 не
b1)
печать
(a2
9 1140 isb2)
print
(a3
is
b3)
Выход:
Ложь Правда Ложь
00 9114x
=
«Вундеркинды для вундеркиндов»
и
=
{
3
:
40 '911 911 911 911 4 940 940 911'b'
}
печать
(
'G'
дюйм
x)
1 00 0 00 Компьютерщики ' не
в
x)
печать
(
' Компьютерщики
не
в
x
0 00 9114
9114
9114 (
3
дюйм
y)
печать
(
'b'
дюйм
y)
Выход:
Правда Правда Ложь Правда Неверно
- Приоритет и ассоциативность операторов: Приоритет и ассоциативность операторов, поскольку они определяют приоритеты оператора.
- Приоритет оператора: Используется в выражении с более чем одним оператором с разным приоритетом, чтобы определить, какую операцию выполнить в первую очередь.
expr
=
10
+
20
*
30
0 печать 9118 9118 9118 9118 9118 =
"Alex"
возраст
=
0
если
имя
=
=
"Alex40=
«Джон»
и
возраст>
=
2
:
печать
(
«Здравствуйте! Добро пожаловать.«
)
еще
:
печать
(
« До свидания !! »
)
35 Выход:
35 610 Привет! Добро пожаловать.
- Ассоциативность операторов: Если выражение содержит два или более операторов с одинаковым приоритетом, для определения используется ассоциативность операторов. Это может быть как слева направо, так и справа налево.
000 9000печать
(
100
/
10
*
10
)
40
40
40
840
0 2
+
3
)
печать
(
5
-
(
2
печать
(
2
*
*
3
*
*
2
)
Выход 100.0 6 0 512
Оператор Описание Ассоциативность () Круглые скобки 0009 слева-по- 0 ** справа налево
* /% Умножение / деление / модуль слева направо + - Сложение / вычитание слева направо << >> Поразрядный сдвиг влево, Поразрядный сдвиг вправо слева направо <<=
>> =Относительное значение меньше / меньше или равно
Отношение больше / больше или равнослева направо ==! = Отношение равно / не равно слева направо 90 008
Внимание компьютерщик! Укрепите свои основы с помощью курса Python Programming Foundation и изучите основы.
- Специальные операторы: Есть несколько специальных типов операторов, таких как-