Студопедия Главная Случайная страница Обратная связь

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

Примеры программ с использованием множеств





 

При разработке алгоритмов и программ с множествами необходимо учесть, что Паскаль не обеспечивает ввод или вывод множеств непосредственно с помощью операторов Read или Write. Формирование множества, элементы которого вводятся с клавиатуры, можно выполнить, используя операцию присоединения, следующим образом.

 

Один из алгоритмов ввода множества

1. Множество: =[ ].

2. Повторять

2.1. Ввести элемент;

2.2. Множество: = Множество + [элемент].

Пока не надоест.

 

Вывод содержимого множества осуществляется путем тестирования. При этом в цикле перечисляются все возможные значения его элементов и те из них, которые входят в множество, выводятся на экран.

 

Один из алгоритмов вывода множества

1. Для Элемента от Первого_значения до Последнего_значения выполнить

Если Элемент принадлежит (In) Множеству, то

Вывести Элемент.

 

Рассмотрим примеры алгоритмов и программ, использующих множества.

 

Пример 1. Сформировать и вывести на экран множество из n символов латинского алфавита (n< 20). Если вводимая буква уже есть в множестве, выдать соответствующее сообщение.

 

Program Mnog_Sim;

Const

N=20;

Var

S: Set Of Char;

B: Char;

I: Integer;

Begin

S: = [];

For I: =1 To N Do

Begin

Writeln (’Введите букву’);

Readln(B);

If B In S Then

Writeln(’Буква ’, B, ’ уже есть’)

Else

S: =S+[B];

End;

Writeln(’Буквы, входящие в множество’);

For B: =’A’ To ’z’ Do

If B In S Then

Write(B: 2);

End.

 

Обратите внимание, что вводимые буквы могут быть и прописными, и строчными, поэтому при выводе в цикле For параметр цикла принимает все значения для букв латинского алфавита от A до z.

 

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

Program Glasn;

Var

P: String; {предложение}

Gl: Set Of Char; {множество гласных}

B: Char;

K, I, N: Integer;

Begin

Gl: = [];

B: = ’#’;

While B < > ’! ’ do

Begin

Writeln (’Введите гласную, конец ввода –! ’);

Readln(B);

If B < > ’! ’ then

Gl: = Gl+[B];

End;

Writeln (’Введите предложение’);

Readln(P);

K: = 0;

N: = Length(P);

For I: = 1 To N Do

If P[I] In Gl Then

K: = K+1;

Writeln (’Количество гласных в предложении - ’, K);

WriteLn(’Нажмите клавишу ENTER...’);

ReadLn;

End.

Пример 3. Составить программу продажи билетов на пароход. Пусть места на пароходе нумеруются (для простоты) от 1 до n (n < 250). Покупатель заказывает номера мест. Если они свободны, то ему выдаются билеты, и номера мест исключаются из числа свободных. В противном случае предлагаются номера свободных мест. Если все билеты проданы, то начинается путешествие.

 







Дата добавления: 2014-12-06; просмотров: 1316. Нарушение авторских прав; Мы поможем в написании вашей работы!




Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...


Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...


Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...


Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Случайной величины Плотностью распределения вероятностей непрерывной случайной величины Х называют функцию f(x) – первую производную от функции распределения F(x): Понятие плотность распределения вероятностей случайной величины Х для дискретной величины неприменима...

Схема рефлекторной дуги условного слюноотделительного рефлекса При неоднократном сочетании действия предупреждающего сигнала и безусловного пищевого раздражителя формируются...

Уравнение волны. Уравнение плоской гармонической волны. Волновое уравнение. Уравнение сферической волны Уравнением упругой волны называют функцию , которая определяет смещение любой частицы среды с координатами относительно своего положения равновесия в произвольный момент времени t...

ТЕХНИКА ПОСЕВА, МЕТОДЫ ВЫДЕЛЕНИЯ ЧИСТЫХ КУЛЬТУР И КУЛЬТУРАЛЬНЫЕ СВОЙСТВА МИКРООРГАНИЗМОВ. ОПРЕДЕЛЕНИЕ КОЛИЧЕСТВА БАКТЕРИЙ Цель занятия. Освоить технику посева микроорганизмов на плотные и жидкие питательные среды и методы выделения чис­тых бактериальных культур. Ознакомить студентов с основными культуральными характеристиками микроорганизмов и методами определения...

САНИТАРНО-МИКРОБИОЛОГИЧЕСКОЕ ИССЛЕДОВАНИЕ ВОДЫ, ВОЗДУХА И ПОЧВЫ Цель занятия.Ознакомить студентов с основными методами и показателями...

Меры безопасности при обращении с оружием и боеприпасами 64. Получение (сдача) оружия и боеприпасов для проведения стрельб осуществляется в установленном порядке[1]. 65. Безопасность при проведении стрельб обеспечивается...

Studopedia.info - Студопедия - 2014-2025 год . (0.014 сек.) русская версия | украинская версия