Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
933.3 Кб
Скачать

4.7. Заключительные замечания

Если в состав выражения входят операнды разных типов, то, если возможно, выполняется автоматическое их преобразование к единому типу, а затем выполняется оператор. Правило преобразования: результат имеет тип операнда с большей точностью представления значения, т.е. преобразование не допускает потери информации. Такие преобразования называют расширяющими. Преобразования в обратном направлении, обычно при присваивании, называют сужающими или неявными. О них позже.

Для языка Basic последовательность преобразования следующая: SByteIntegerLongSingleDouble. Исключение: если один операнд имеет тип Single, второй – тип Long, то результат получает тип Double. В случае невозможности преобразования к единому типу возникает ошибка: Type mismatchнесогласование типов.

Пример.

Dim Operand1 As Sbyte, Orerand2 As Single, Operand3 As Long, Operand4 As Double

.................................................................................................................................

Operand1 + Operand2 Single

Operand2 + Operand3 Double

Operand1 + Operand3 Long

Operand2 + Operand4 Double

Для языка C схема автоматических арифметических преобразований аналогична. Исключение: данные float всегда преобразуются к типу double с тем, чтобы вычисления выполнялись с максимально возможной точностью.

Вопросы для самопроверки и контроля

Вопросы для самопроверки

1. Чему равно выражение: -7\2? На каком языке оно написано?

2. Известно целое значение n. Как определить младшую цифру числа?

3. Как следует записать на языке C соотношение a<b<c?

4. Как на языке Basic записать условие попадания т.M(x,y) в квадрат с ценром в начале координат и стороной a?

Контрольные вопросы

1. В чем суть оператора ++?

2. Что означает оператор %? Как записывается аналогичный оператор в другом изучаемом языке?

3. В каком языке все операторы сравнения имеют одинаковый приоритет, а в каком нет?

4. Как кратко записать условие, показывающее, что выражения x и y имеют одинаковый знак?

5. Различаются ли правила обращения к функции в языках Basic и C?

5. ОСНОВНЫЕ ИНСТРУКЦИИ

Инструкция – это синтаксически завершенная единица языка, выражающая либо действие, либо объявление (декларацию).

Инструкции выполняются в порядке их следования, если отсутствуют инструкции перехода.

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

5.1. Объявления

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

C

Для этой цели используются инструкции описания типа: int, short, float, double, char и другие.

Пример.

int Kol, Volume, ChisloStudentsOfCourse[5];

float Dlina, Weight, Matrix[10][10];

char Mistake[50], Message[100];

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

Basic

В этом языке есть несколько инструкций для объявления. Пока введем только одну.

Формат:

Dim <список>

<список>:=<элемент>[,<элемент>...]

<элемент>:={<переменная>|<массив>} [As <тип>]

Пример.

Dim Kol As Integer, Volume As Integer, ChisloStudents(1 To 5 ) As Integer

Dim Dlina As Single, Weight As Single, Matrix(1 to m, 1 to n) As Single

Dim Mistake As String, Message As String

Замечание 1. В отличие от предыдущих версий данные не позволяют объявлять строки фиксированной длины вида Message As String*20.

Замечание 2. В отличие от языка С в одной инструкции могут быть объявлены переменные и массивы разных типов, причем для переменных одного типа, записанных через , (запятая) подряд, можно указывать тип только для последней переменной списка. Если для переменной или массива не указан тип, то она принимает тип Object. О них речь пойдет позже.

Пример.

Dim x,y As Single, ChisloStudents(1 To 5 ) As Integer, b

Здесь x и y имеют тип Single, ChisloStudents(1 to 5) – тип Integer, b – тип Object.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]