Студопедия
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Представление двумерного массива Паскаля в памяти

Читайте также:
  1. A) Постоянно находится в памяти.
  2. Double сохраняется в памяти 15-16 десятичных знаков.
  3. III. Распределение виртуальной памяти
  4. LINUX|| Структура памяти процесса в ОС Linux.
  5. LINUX|| Управление памятью в ОС Linux. Карта памяти
  6. Remembrance Day -День памяти.
  7. Swap MACRO a,b; a,b - параметры макро (ячейки памяти)
  8. Алгебраическое представление двоичных чисел
  9. Алгоритм вычисления количества элементов массива удовлетворяющих условию
  10. Алгоритмы и их свойства. Представление алгоритмов

Элементы абстрактного массива в памяти машины физически располагаются последовательно, согласно описанию. При этом каждый элемент занимает в памяти количество байт, соответствующее его размеру. Например, если массив состоит из элементов типа integer, то каждый элемент будет занимать по два байта. А весь массив займет S^2 байта, где S – количество элементов в массиве.

21. Строки в Паскале: понятие, описание, варианты представления и использования.

VAR a: String говорит о том, что переменная a обязана иметь строковое (текстовое) значение, то есть ее значением будет не число, а произвольная цепочка символов

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

Информация в ячейке памяти под строковую переменную может в процессе выполнения программы меняться точно так же, как и в ячейке для числовой переменной. Например, при выполнении фрагмента

Строковую переменную можно задавать не только оператором присваивания, но и оператором ReadLn. Пример:

VAR a: String;

BEGIN

WriteLn ('Введите какое-нибудь слово');

ReadLn (a);

WriteLn ('Вы ввели слово ',a)

END.

Исходные данные Операция Результат Пояснение
s1:='Мото'; s2:='роллер' s3:=s1+s2 s3='Мото-роллер' Операция + над двумя строками просто соединяет две строки в одну
s5:='Мото-роллер' k:=Pos('рол',s5) k=5 Функция Pos возвращает позицию, на которой находится строка 'рол' в строке s5
s3:='Мото-роллер' l:=Length(s3) l=10 Функция Length (длина) выдает (возвращает) количество символов в строк
s3:='астро-ном' s4:=Copy(s3,3,4) s4= ‘трон’ Функция Copy возвращает часть строки длиной 4, начиная с третьего символа
s5:='Коро-бочка'; Delete(s5,4,2) s5='Коро-чка' Процедура Delete удаляет из строки s5 два символа, начиная с четвертого
s6:='Рука'; s7:='баш'; Insert(s7,s6,3) s6='Руба-шка' Процедура Insert вставляет в строку s6 строку s7, начиная с третьего символа
x:=2.73284 Str(x:4:2,s8) s8='2.73' Процедура Str преобразует число в строку. 4:2 – это желаемый формат числа (см. Ошибка: источник перёкрестной ссылки не найден)
s8='2.73' Val(s8,x,Osh) x=2.73 Процедура Val преобразует строку в число. Параметр Osh должен иметь тип Integer. Он имеет смысл при анализе ошибки в преобразовании

Если задана строка s:='Банка', то считается автоматически заданным массив символов с тем же именем: s[1]=’Б’, s[2]=’а’, s[3]=’н’, s[4]=’к’, s[5]=’а’. Тогда после выполнения оператора s[3]:=’р’ мы получим s='Барка'.

Строки можно сравнивать. Условие s1=s2 считается выполненным, если обе строки абсолютно одинаковы, включая и пробелы. Сравнение идет посимвольно слева направо. Поэтому считается, что ‘панк’ < ‘парк’, так как первый несовпадающий символ ‘р’ имеет больший номер, чем ‘н’.

Строкой в Паскале называется последовательность из определенного количества символов. Количество символов последовательности называется длиной строки.

var s: string[n];var s: string;

n - максимально возможная длина строки - целое число в диапазоне 1..255. Если этот параметр опущен, то по умолчанию он принимается равным 255.

Строковые константы записываются как последовательности символов, ограниченные апострофами. Допускается формирование строк с использованием записи символов по десятичному коду (в виде комбинации # и кода символа) и управляющих символов (комбинации ^ и некоторых заглавных латинских букв).

Пример:

'Текстовая строка'#54#32#61
'abcde'^A^M

Пустой символ обозначается двумя подряд стоящими апострофами. Если апостроф входит в строку как литера, то при записи он удваивается.

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

Выражения типа char можно присваивать любым строковым переменным.

Над строковыми данными определена операция слияния (конкантенации), обозначаемая знаком +. Например:

a:= 'Turbo';b:= 'Pascal';c:= a + b;

В этом примере переменная c приобретет значение 'TurboPascal'.

Кроме слияния над строками определены операции сравнения <,>,=,<>,<=,>=. Две строки сравниваются посимвольно, слева направо, по кодам символов. Если одна строка меньше другой по длине, недостающие символы короткой строки заменяются символом с кодом 0.

 




Дата добавления: 2014-12-19; просмотров: 119 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2025 год. (0.007 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав