Добавил:
Лабы/курсовые по программированию (С++/Verilog HDL), Теория и Практика Помехоустойчивого Кодирования Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

1сем Дагаев / ЛР10 / Отчет

.docx
Скачиваний:
16
Добавлен:
09.03.2022
Размер:
271.49 Кб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»

(СПбГУТ)

Факультет инфокоммуникационных Сетей и систем (иксс)

кафедра программной инженерии и вычислительной техники

(пи и вт)

Дисциплина: «Программирование»

Лабораторная работа №10.

Тема: «Работа со строками»

вариант №20

Выполнил: Студент группы ИКВТ-03

Ситников Д.Г.

Подпись____________

Принял: к.т.н, доцент кафедры ПИиВТ

Дагаев А.В.

Подпись____________

«_____»________ 2020

Санкт-Петербург

2020г

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

Массив структур, содержащих сведения о музеях. Каждая структура должна содержать следующие поля: название музея, адрес, год основания, цена входного билета. Вывести на экран дисплея сведения о музеях, действующие более “k” лет.

Разработка алгоритма

Программа состоит из основной программы - функции main(), функции с заданием значений для массива структур, функции вывода значений элемента массива структур, а также структуры.

Рис.1 Описание структуры.

Рис.2 Две функции.

Рис.3 Основная программа.

В программе предусмотрены исходные данных элементов массива структур – данные о музеях; Ввод значения k; вывод информации о музеях, удовлетворяющих условию (старше k лет).

Таблица идентификаторов

Табл.1. Таблица идентификаторов

N

Обозначения в задаче

Идентификатор

Назначение

1

Ar[]

Ar

Исходные данные

N

N

2

k

k

3

i

i

Операторы инкремента

Описание программы

Программа разработана при помощи среды разработки Microsoft Visual Studio, в которой предоставлены все необходимые библиотеки, заголовки, необходимые компилятором C и C++ для работы в системе Windows, написана на языке C++. Программа собрана при помощи системы сборки компилятор C++ Visual Studio includes a command-line C, набора инструментов .NET Framework 4.5, тестировалась на Windows 10. Были подключены библиотеки iostream, windows.h; были использованы функции cout, system.

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

Далее предоставлены результаты выполнения программы.

Рис.4 Результат выполнения программы.

Контрольный расчет

Для тестирования программы выбираем контрольный набор исходных данных: k = 100. Вывод:

Рис.5 Контрольный счет.

Текст программы на C++

Lr10.cpp:

#include <iostream>

#include <windows.h>

#define N 9

using namespace std;

struct Museum {

char* Name;

char* Adress;

int YOsn;

int tPrice;

};

void OutputInf(Museum museum) {

cout << "Наименование: " << museum.Name

<< "\nГород: " << museum.Adress

<< "\nГод основания: " << museum.YOsn

<< "\t\tСтоимость билета: " << museum.tPrice << "\n\n";

}

inline void Spisok(struct Museum a[N]) {

a[0] = { "Эрмитаж", "г.Санкт-Петербург", 1764, 500 };

a[1] = { "Мраморный дворец", "г.Санкт-Петербург", 1768, 350 };

a[2] = { "Кунсткамера", "г.Санкт-Петербург", 1714, 100 };

a[3] = { "Исаакиевский собор", "г.Санкт-Петербург", 1710, 350 };

a[4] = { "Большой Петергофский дворец", "г.Санкт-Петербург", 1715, 450 };

a[5] = { "Лувр", "Париж", 1793, 1500 };

a[6] = { "Галерея Айвазовского", "г.Феодосия", 1845, 200 };

a[7] = { "Малая земля", "г.Новороссийск", 1982, 170 };

a[8] = { "Цементной промышленности", "г.Новороссийск", 1900, 60 };

}

void main()

{

setlocale(LC_ALL, "RUS");

int k;

struct Museum Ar[N];

system("cls");

Spisok(Ar);

cout << "Введите k: ";

cin >> k;

cout << "\nМузеи старше " << k << "лет :" << "\n\n";

for (int i = 0; i < N; i++) {

if ((2020 - Ar[i].YOsn) > k)

OutputInf(Ar[i]);

}

system("pause");

}

Выводы

В ходе выполнения работы были получены следующие результаты:

1. Изучены структуры;

2. Программа разработана для заданной выборки данных из массива структур на языке C++;

3. Использование функции обработки структур.

Соседние файлы в папке ЛР10