Языки и методы программирования Преподаватель – доцент каф. ИТиМПИ Кузнецова Е.М. Лекция 4.

Презентация:



Advertisements
Похожие презентации
Чувашия, с.Моргауши, МБОУ "Моргаушская СОШ" - Павлинова Раиса Мефодьевна, г. Тема: Паскаль «строковые переменные». Обработка строк текста МБОУ.
Advertisements

Множества. Множество- ограниченный, неупорядоченный набор различных элементов одного типа. Примеры множеств: Множество арабских цифр. Множество знаков.
«Типы данных». Целочисленные типы данных Тип ДиапазонТребуемая память (байт) byte shortint integer word longint
Множественный тип данных А+В А*В. Множество - конечная совокупность элементов, принадлежащих некоторому базовому типу. Базовый тип –перечислимые типы.
Множественный тип данных Множество в языке Паскаль – это ограниченный набор различных элементов одного (базового) типа, которые рассматриваются как единое.
Структурные типы данных 1.Массивы 2.Строки 3.Записи 4.Множества 5.Файлы.
«Программирование с использованием множеств» Delphi. Тема 8:
СТРОКИ Строковой называется последовательность символов определённой длины. Идентификатор типа – слово String Примеры описания: Var Str1 : String[10];
Строки – последовательность символов, к которой можно обращаться как к единому целому и к каждому элементу по отдельности. Строка.
О СНОВЫ АЛГОРИТМИЗАЦИИ И ПРОГРАММИРОВАНИЯ. П ЛАН 1. Символьные и строковые величины. Операции над символьными и строковыми величинами. 2. Символьный тип.
Основные принципы работы с символьными величинами Шутилина Л.А.,
Система типов данных в языке Паскаль Перечисляемый тип, тип- диапазон, множество.
Множества. Внутреннее представление.. Механизм внутреннего представления Каждое значение базового типа представляется одним битом. В память заносится.
Для добавления текста щелкните мышью Структурированные типы данных. Множества 11 класс.
Пять основных классов типов данных: Простые типы; Структурированные типы; Ссылочные типы; Процедурные типы; Объектные типы;
ОБЩИЕ СВЕДЕНИЯ О ЯЗЫКЕ ПРОГРАММИРОВАНИЯ ПАСКАЛЬ НАЧАЛА ПРОГРАММИРОВАНИЯ.
СТРОКИ Строковой называется последовательность символов определённой длины. Идентификатор типа – слово String Примеры описания: Var Str1 : String[10];
Обработка строк Строка- упорядоченная последовательность символов. Строковый тип данных- структурированный тип в Турбо-Паскале. Каждый символ.
Познакомиться с основными принципами работы с символьными величинами Научиться применять процедуры и функции для их обработки.
Массивы Структура типов данных типы простые структурированные 1.Целые (integer, longint) 2.Вещественные (real) 3.Логические (boolean) 4.Символьные (string,
Транксрипт:

Языки и методы программирования Преподаватель – доцент каф. ИТиМПИ Кузнецова Е.М. Лекция 4

Содержание ПРОСТЫЕ ТИПЫ ДАННЫХ СТРУКТУРИРОВАННЫЕ ТИПЫ ДАННЫХ МАССИВ МНОЖЕСТВО ЗАПИСЬ

ПРОСТЫЕ И СТРУКТУРИРОВАННЫЕ ТИПЫ

Структуры данных ПРОСТЫЕ (НЕСТРУКТУРИРОВАННЫЕ) признак, по которому можно определить величину простого типа, таков: одно имя - одно значение. СТРУКТУРИРОВАННЫЕ

ПРОСТЫЕ (НЕСТРУКТУРИРОВАННЫЕ) ТИПЫ ДАННЫХ Числовые типы данных: Типы целых чисел: Целый типДиапазон значенийОбъем памяти (байт) примечания Shortint Integer Longint Byte Word Сomp-9.2e e

ПРОСТЫЕ ТИПЫ ДАННЫХ Числовые типы данных: Типы вещественных чисел: Целый типДиапазон значенийОбъем памяти (байт) Число цифр мантис сы Real2.9e e Single1.5e e Double5.0e e Extended3.4e e

ПРОСТЫЕ ТИПЫ ДАННЫХ Логический – boolean применимы основные операции логики высказываний: конъюнкция (логическое «и» - «and»), дизъюнкция (логическое «или» - «or»), отрицание (логическое «не» - «not»). Иногда можно использовать операции импликации («если»), эквиваленции («если и только если») и т.п.

ПРОСТЫЕ ТИПЫ ДАННЫХ Символьный – char Способы записи символьных констант в программе: ` * # # # ` - символ между штрихами # # # #60 – десятичный код символа после #### # # # #$30 – шестнадцатеричный код символа после #### символьные величины (тип char) являются упорядоченными 'А' < 'В'< 'С'

ПРОСТЫЕ ТИПЫ ДАННЫХ перечисляемый type = type operator = (plus, minus, multi, divide); color = (white, red, blue, yellow, purple, green); ord(x), pred(x), succ(x) и операции отношения.

Программа для перевода английских названия дней недели на русский язык

ПРОСТЫЕ ТИПЫ ДАННЫХ Интервальный тип - это подмножество другого уже определенного ординального типа, называемого базовым. type days = (mon, tue, wed, thu, fri, sat, sun); workdays=mon.. fri; index=1..30; letter='a'..'z'; var a:1..100; b: ;

СТРУКТУРИРОВАННЫЕ ТИПЫ ДАННЫХ В разных языках возможности структуризации переменных на уровне сложных структур не совпадают, но многие структуры давно стали традиционными и реализованы в большинстве практически используемых языков программирования. Структурированные типы данных классифицируют по следующим основным признакам: однородная - неоднородная, упорядоченная - неупорядоченная, прямой доступ - последовательный доступ, статическая - динамическая.

СТРУКТУРИРОВАННЫЕ ТИПЫ ДАННЫХ Однородная структура - если все элементы, образующие структуру, однотипны (например - целые числа или символы); неоднородная структура - если элементы разной природы «перепутаны» (например, числа чередуются с символами), то. Упорядоченная структура - если между ее элементами определен порядок следования. Наличие индекса в записи элементов структуры уже указывает на ее упорядоченность (хотя индекс для этого не является обязательным признаком).

СТРУКТУРИРОВАННЫЕ ТИПЫ ДАННЫХ По способу доступа упорядоченные структуры - прямого и последовательного доступа. При прямом доступе каждый элемент структуры доступен пользователю в любой момент независимо от других элементов. статическая структура - если размер структуры (длина, количество элементов) не может быть изменен «на ходу», а фиксирован заранее; Программные средства информатики иногда позволяют не фиксировать размер структуры, а устанавливать его по ходу решения задачи и менять при необходимости. Такую структуру называют динамической.

Массив Массивом называют однородный набор величин одного и того же типа, называемых компонентами массива, объединенных одним общим именем (идентификатором) и идентифицируемых (адресуемых) вычисляемым индексом. type = array [ ] оf type vector = array [1.. 10] of real; table = array ['A'..'Z',1..5] of integer; var a,b : vector; с: table;

Пример: упорядочить члены числовой последовательности по возрастанию метод «пузырька» Будем просматривать пары соседних элементов последовательно справа налево и переставлять элементы в паре, если они стоят неправильно: 5,3,2,4,1 5,3,2,1,4 5,3,1,2,4 5,1, 3,2,4 1,5,3,2,4 p:=true; если при просмотре пар была хотя бы одна перестановка, изменим значение логической переменной на противоположное: p:=false; это означает, что последовательность еще не была упорядочена и просмотр пар надо повторить. Цикл просмотров заканчивается, если после очередного просмотра выполняется условие: p=true.

program bubble; const a:array[l..10] of integer=(19,8,17,6,15,4,13,2,11,0); var b,i:integer; p :boolean; begin c1rscr; for i:=l to 10 do write(a[i]:3); writeln; writeln; repeat p:=true; for i:=10 downto 2 do if a[i]

Строчный тип (строки) используется для описания строк длиной от 0 до 255 символов. Строковые переменные, как и строковые константы, занимают n+1 байт, (нулевой байт предназначен для хранения текущей длины строковой переменной) type word : string[20]; var a,b,c : word; var a,b,c : string[20]; d : string[30]; const l: string[11]='информатика';

операции со строками логических операций, =, некоммутативная операция соединения, обозначаемая знаком плюс: а:='кол'+'о'+'кол'; (в результате а='колокол'). стандартные функции: concat(sl,s2,...,sk) copy(s,i,k) а:=сору('крокодил',4,3); (в результате а='код'). length(s). b:=length('каникулы'); (b=8). pos(s,t) с:=роs('ом','компьютер'); (с=2).

стандартные процедуры для обработки строковых величин: delete(s,i,k) - из строки s удаляется k символов, начиная с i-того символа. s:='таракан'; delete(s,5,2); (в результате S='таран'). insert(s,t,i) - строка s вставляется в строку t, начиная с позиции i: t:='таран'; insert ('ka',t,5); (t='таракан'). Процедура преобразования числа в строку символов - str(k,s). str(564,s); (s='564'). Процедура преобразования строки из цифр в число - val(s,k,i). val('780',k,i); (k=780; i=0).

Множество Множество - это неупорядоченная совокупность отличных друг от друга однотипных элементов. ограничения: Число элементов множества не должно превышать 256. Элементами множества могут быть только данные простых типов (кроме вещественных). Элементы, входящие в состав множества должны быть определены заранее. Порядок элементов множества произвольный.

type = set of type t=set of byte; var a:t; var code: set of 0..7; digits: set of '0'..'9'; type up=set of 'A'..'Z'; low=set of 'a'.. "z"; const upcase : up=['A'.. 'Z']; vocals :low=['a', 'e', 'i', 'o', "u", 'y']; delimiterset of char=[ '..' /',':'..' ? ']; Можно совместить описание множественного типа и соответствующих переменных Можно описать переменную множественного типа и задать ее первоначальное значение в разделе описания констант, как констант- множество.

операции со множествами операции объединения, пересечения и дополнения множеств, обозначаемые в Паскале +, * и -, а также отношения равенства множеств (А=В), неравенства (АВ), включения (А =В). Логическая операция принадлежности х in А принимает значение true, если элемент х принадлежит множеству А и false в противном случае.

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

type имя типа записи = record имя поля 1 : тип; имя поля 2 : тип; имя поля N: тип end; type address = record index : string[6]; city: string[20]; street : string[20]; haus, flat: integer end;

const : = type point = record х, у, z: integer end; const o: point = (x:0; y:0; z:0); x.haus := 52; х.street:='пр.Мира'; x.city:= 'Красноярск'; x.flat:= 135; x.index :='б60049' запись о начале координат