Алгоритмические языки: использование множеств

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

Рубрика Программирование, компьютеры и кибернетика
Вид лабораторная работа
Язык русский
Дата добавления 03.10.2010
Размер файла 121,4 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

ЛАБОРАТОРНАЯ РАБОТА

по дисциплине “Основы программирования”

на тему

Алгоритмические языки: использование множеств

Цель работы: получение навыков работы с множествами.

Постановка задачи:

1. Изучить способы описания и использования множеств.

2. Разработать алгоритм и составить программу для решения задачи соответствующего варианта.

Задание к работе:

1. Найти в последовательности целых чисел такие, которые встречаются в ней ровно два раза.

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

3. Подобрать наборы тестовых данных.

Ход выполнения работы

Блок-схема:

Рисунок 1. Блок-схема программы.

-

+

Рисунок 2. Блок-схема элемента Code программы.

-

+

-

+

Рисунок 3. Блок-схема элемента Code2 программы.

Текст программы:

Program lab;

Uses crt;

Type

bin=byte;

maxlen=byte;

Const

max=100;

max_bin=255;

Var

a:array[1..max] of bin;

len:maxlen;

Procedure Vvod(Var a: array of bin;Var len:maxlen);

Var

x:maxlen;

begin

Write('Введите длинну последовательности: ');

Readln(len);

Writeln('Введите элементы последовательности: ');

for x:= 1 to len do

Begin

Write('a[',x,']=');

Readln(a[x]);

End;

End;

Procedure Code(a:array of bin;len:maxlen);

Var

x:maxlen;

b:array[1..max_bin] of byte;

Begin

for x:=1 to max_bin do b[x]:=0;

for x:=1 to len do inc(b[a[x]]);

for x:=1 to max_bin do if b[x]=2 then

Begin

Writeln('Число ',x,' повторяется ровно два раза');

End;

End;

Procedure Code2(a:array of bin;len:maxlen);

Var

b,c:set of bin;

x,y:maxlen;

k:byte;

Begin

y:=1;

b:=[];

c:=[];

for x:=1 to len do b:=b+[a[x]];

for y:=1 to len do

Begin

x:=0;

k:=0;

Repeat

Begin

inc(x);

if (a[x] in b)and(a[x]=a[y]) then inc(k);

End;

Until (x=len) or (k>2);

if k=2 then c:=c+[a[y]];

End;

for x:=1 to max_bin do if x in c then

Begin

Writeln('Число ',x,' повторяется ровно два раза');

End;

End;

Clrscr;

Begin

Vvod(a,len);

Writeln('Первый алгоритм: ');

Code(a,len);

Writeln('Второй алгоритм: ');

Code2(a,len);

End.

Результаты работы программы.

1) Введенные данные:

a[1]=1; a[2]=2; a[3]=3; a[4]=8; a[5]=10; a[6]=25; a[7]=44; a[8]=2; a[9]=9; a[10]=33;

Результаты работы программы

Первый алгоритм:

Числа повторяющиеся ровно два раза: 2;

Второй алгоритм:

Числа повторяющиеся ровно два раза: 2;

Рисунок 4. Результаты теста №1.

2) Введенные данные:

a[1]=1; a[2]=1; a[3]=2; a[4]=2; a[5]=3; a[6]=3; a[7]=4; a[8]=4;

Результаты работы программы

Первый алгоритм:

Числа, повторяющиеся ровно два раза: 1; 2; 3; 4;

Второй алгоритм:

Числа, повторяющиеся ровно два раза: 1; 2; 3; 4;

Рисунок 5. Результаты теста №2.


Подобные документы

  • Особенности работы с процедурами и двумерными массивами, последовательность вызова процедур. Способы описания и использования многомерных массивов, назначение процедур, их описание и обращение к ним. Набор программы, ее отладка и тестирование данных.

    лабораторная работа [112,1 K], добавлен 03.10.2010

  • Эскизный, технический и рабочий проект расчета основоположной задачи теории множеств, решение которой необходимо для доказывания теорем высшей математики. Разработка алгоритма и написание программы в среде Delphi 7 на языке программирования Delphi.

    курсовая работа [1,5 M], добавлен 21.09.2011

  • Основные аналитические соотношения. Блок схемы и алгоритм решения задачи. Проверка работоспособности алгоритма вручную. Таблица идентификации переменных. Формы входной и выходной печати. Разработка и отладка программы. Инструкция для работы с программой.

    курсовая работа [69,8 K], добавлен 13.02.2012

  • Содержательная и формальная (математическая) постановка задачи. Разработка алгоритма решения задачи. Структуры программы и алгоритмы программных модулей, их описание. Решение задачи на конкретном примере. Разработка системы тестов и отладка программы.

    курсовая работа [882,1 K], добавлен 24.11.2014

  • Разработка алгоритма синтеза пленочного резистора по заданным параметрам исходного резистора, программы реализации данного алгоритма на языке С++. Отладка и тестирование программы, составление документации и инструкции пользователя данной программой.

    курсовая работа [1,7 M], добавлен 08.06.2009

  • Структурное программирование, схема алгоритма. Программа на языке Си для int, float. Подпрограмма ввода и вывода целых чисел на Ассемблере IBM. Тестирование и отладка, инструкция пользователя. Язык программирования Си (для int и float), этапы трансляции.

    курсовая работа [1,5 M], добавлен 21.10.2014

  • Разработка программы, которая создает в отдельном потоке случайный массив целых чисел в заданном диапазоне и выводит на экран эти числа. Описание общего алгоритма, интерфейс программы. Методы решения и алгоритмы задач, реализуемых каждым потоком.

    курсовая работа [372,6 K], добавлен 17.04.2014

  • Формирование текстового документа с именем goto.cpp., содержимое которого взято из русифицируемой справки MSDN по оператору безусловного перехода. Выбор оптимального алгоритма решения задачи, разработка интерфейса, отладка и тестирование программы.

    курсовая работа [499,8 K], добавлен 10.11.2009

  • Символьные типы данных, работа со строками, составление блок-схемы алгоритма и программы для работы с массивами. Организация программы с использованием процедур и функций. Процедуры и функции, использующиеся при обработке файлов; компонентные файлы.

    контрольная работа [52,9 K], добавлен 03.10.2010

  • Программирование как процесс описания последовательности действий решения задачи средствами конкретного языка и оформление результатов описания в виде программы. Этапы разработки программы, требования к ее функциональности, направления использования.

    контрольная работа [79,7 K], добавлен 10.01.2016

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.