Оптимизирующие компиляторы. Лабораторные работы №1-3. Вариант №1.
Состав работы
|
|
|
|
|
|
|
|
Описание
ЛАБОРАТОРНАЯ РАБОТА №1
«ОПРЕДЕЛЕНИЕ ВРЕМЕНИ РАБОТЫ ПРИКЛАДНЫХ ПРОГРАММ»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать размерность массива N такой, чтобы время работы программы более медленным алгоритмом было порядка 5 секунд.
4. Оценить (на 5-10 тестах) относительное быстродействие алгоритмов.
№ Алгоритм 1 Алгоритм 2
1 Пузырьком Шелла
ЛАБОРАТОРНАЯ РАБОТА №2.
«ИЗУЧЕНИЕ ОПТИМИЗИРУЮЩЕГО КОМПИЛЯТОРА»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать значение параметра N таким, чтобы время работы программы было порядка 30-60 секунд.
4. Программу скомпилировать компилятором GCC с уровнями оптимизации -O0, -O1, -O2, -O3, -Os, -Ofast, -Og под архитектуру процессора x86.
5. Для каждого из семи вариантов компиляции измерить время работы программы при нескольких значениях N.
№ Алгоритм 1 Алгоритм 2
1 Пузырьком Шелла
Лабораторная работа № 3.
Оптимизация временной сложности алгоритма
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. В соответствии с вариантом задания, реализовать алгоритмы так, чтобы их временная сложность соответствовала требуемой в постановке задачи или были проведены иные оптимизации (см. табл. 2). Решения представить в виде работающих программ на C++.
Варианты заданий взять из табл. 2.
Таблица 2. Варианты заданий
№ вар. Алгоритм 1 Алгоритм 2
1 1 10
Таблица 2. Варианты задания
№ Алгоритм Реализация на C++ Текущая временная сложность кода Требуемая временная сложность кода и/или улучшение алгоритма
1 Выбор элементов главной диагонали квадратной матрицы A[n,n] for (int i=0; i<n; i++)
for (int j=0;j<n; j++)
if (i==j)
cout << a[i][j] << " "; O(n2) O(n)
10 Поиск в массиве натуральных чисел a[n] пары элементов со значениями item1 и item2, расстояние между которыми минимально const int n=10;
int a[n] = {
3,5,10,8,4,12,5,3,0,7
};
int item1=3,item2=8,min=n;
for (int i=0; i<n; i++)
for (int j=0; j<n; j++)
{
if (a[i]==item1 &&
a[j]==item2 &&
abs(i-j)<min) {
min = abs(i-j);
}
}
cout << min; O(n2) O(n)
«ОПРЕДЕЛЕНИЕ ВРЕМЕНИ РАБОТЫ ПРИКЛАДНЫХ ПРОГРАММ»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать размерность массива N такой, чтобы время работы программы более медленным алгоритмом было порядка 5 секунд.
4. Оценить (на 5-10 тестах) относительное быстродействие алгоритмов.
№ Алгоритм 1 Алгоритм 2
1 Пузырьком Шелла
ЛАБОРАТОРНАЯ РАБОТА №2.
«ИЗУЧЕНИЕ ОПТИМИЗИРУЮЩЕГО КОМПИЛЯТОРА»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать значение параметра N таким, чтобы время работы программы было порядка 30-60 секунд.
4. Программу скомпилировать компилятором GCC с уровнями оптимизации -O0, -O1, -O2, -O3, -Os, -Ofast, -Og под архитектуру процессора x86.
5. Для каждого из семи вариантов компиляции измерить время работы программы при нескольких значениях N.
№ Алгоритм 1 Алгоритм 2
1 Пузырьком Шелла
Лабораторная работа № 3.
Оптимизация временной сложности алгоритма
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. В соответствии с вариантом задания, реализовать алгоритмы так, чтобы их временная сложность соответствовала требуемой в постановке задачи или были проведены иные оптимизации (см. табл. 2). Решения представить в виде работающих программ на C++.
Варианты заданий взять из табл. 2.
Таблица 2. Варианты заданий
№ вар. Алгоритм 1 Алгоритм 2
1 1 10
Таблица 2. Варианты задания
№ Алгоритм Реализация на C++ Текущая временная сложность кода Требуемая временная сложность кода и/или улучшение алгоритма
1 Выбор элементов главной диагонали квадратной матрицы A[n,n] for (int i=0; i<n; i++)
for (int j=0;j<n; j++)
if (i==j)
cout << a[i][j] << " "; O(n2) O(n)
10 Поиск в массиве натуральных чисел a[n] пары элементов со значениями item1 и item2, расстояние между которыми минимально const int n=10;
int a[n] = {
3,5,10,8,4,12,5,3,0,7
};
int item1=3,item2=8,min=n;
for (int i=0; i<n; i++)
for (int j=0; j<n; j++)
{
if (a[i]==item1 &&
a[j]==item2 &&
abs(i-j)<min) {
min = abs(i-j);
}
}
cout << min; O(n2) O(n)
Дополнительная информация
зачтено в декабре 2019, Зырянов Кирилл Игоревич
С++ Qt
С++ Qt
Похожие материалы
Оптимизирующие компиляторы. Лабораторная работа 1. Вариант 1.
nik200511
: 12 февраля 2020
ЛАБОРАТОРНАЯ РАБОТА №1
«ОПРЕДЕЛЕНИЕ ВРЕМЕНИ РАБОТЫ ПРИКЛАДНЫХ ПРОГРАММ»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать размерность массива N такой, чтобы время работы программы более медленным алгоритмом было порядка 5 секунд.
4. Оценить (на 5-10 тестах) относительное быстродействие алгоритмов.
№ Алгоритм 1 Алгоритм 2
1
322 руб.
Оптимизирующие компиляторы. Лабораторные работы №№1-3. Вариант №1.
SNF
: 12 февраля 2020
ЛАБОРАТОРНАЯ РАБОТА №1
«ОПРЕДЕЛЕНИЕ ВРЕМЕНИ РАБОТЫ ПРИКЛАДНЫХ ПРОГРАММ»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать размерность массива N такой, чтобы время работы программы более медленным алгоритмом было порядка 5 секунд.
4. Оценить (на 5-10 тестах) относительное быстродействие алгоритмов.
№ Алгоритм 1 Алгоритм 2
1
2343 руб.
Оптимизирующие компиляторы. Лабораторная работа №3. Вариант №1.
nik200511
: 12 февраля 2020
Лабораторная работа № 3.
Оптимизация временной сложности алгоритма
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. В соответствии с вариантом задания, реализовать алгоритмы так, чтобы их временная сложность соответствовала требуемой в постановке задачи или были проведены иные оптимизации (см. табл. 2). Решения представить в виде работающих программ на C++.
Варианты заданий взять из табл. 2.
Таблица 2. Варианты заданий
№ вар. Алгоритм 1 Алгоритм 2
1 1 10
Таблица 2. Варианты задания
№ Алгоритм Реализация на
322 руб.
Оптимизирующие компиляторы. Лабораторная работа №2. Вариант №1.
nik200511
: 12 февраля 2020
ЛАБОРАТОРНАЯ РАБОТА №2.
«ИЗУЧЕНИЕ ОПТИМИЗИРУЮЩЕГО КОМПИЛЯТОРА»
ЗАДАНИЕ К ЛАБОРАТОРНОЙ РАБОТЕ
1. Написать программу на языке C или C++, которая реализует выбранный алгоритм из задания.
2. Проверить правильность работы программы на нескольких тестовых наборах входных данных.
3. Выбрать значение параметра N таким, чтобы время работы программы было порядка 30-60 секунд.
4. Программу скомпилировать компилятором GCC с уровнями оптимизации -O0, -O1, -O2, -O3, -Os, -Ofast, -Og под архитектуру проце
322 руб.
Оптимизирующие компиляторы. Контрольная работа. Вариант 1.
nik200511
: 12 февраля 2020
Вопросы по теме 1
1. В чём заключается разница между компилятором и интерпретатором?
2. Какие действия производятся в фазе синтаксического анализа?
3. Какие стратегии используются компилятором для принятия решений?
Вопросы к теме 2
4. Что представляет собой предиктивный анализ?
5. Что означает термин «алфавит языка»?
6. Из каких частей состоят продукции грамматики?
7. Что представляют собой узлы синтаксического дерева?
Вопросы к теме 3
8. Для чего производится сборка мусора?
9. Какие соглашения
435 руб.
Оптимизирующие компиляторы. Билет №11
IT-STUDHELP
: 5 июля 2020
Билет №11
Тема 1
2. Интерпретатор ...
Как правило, работает быстрее, чем другие виды трансляторов
Непосредственно выполняет операции, указанные в исходной программе, над входными данными, предоставляемыми пользователем.
Транслирует (переводит) исходный текст его в эквивалентный текст на другом языке – целевом.
Является основным средством отладки приложений
16. Лексемы можно определить, как...
директивы, подключающие дополнительные внешние библиотеки
значащие последовательности символов исходн
440 руб.
Оптимизирующие компиляторы. Билет №25
IT-STUDHELP
: 5 июля 2020
Билет №25
Тема 1
1. компилятор – это программа, которая ...
Непосредственно выполняет операции, указанные в исходной программе, над входными данными, предоставляемыми пользователем
Позволяет вводить и редактировать исходный текст программы
Транслирует (переводит) исходный текст его в эквивалентный текст на другом языке – целевом
Транслирует исходный текст его в эквивалентный текст на другом языке и выполняет его
3. Препроцессор может...
выполнять предварительную сборку исходной программы и рас
420 руб.
Оптимизирующие компиляторы. Экзамен. Билет №39
snapsik
: 3 декабря 2020
Билет №39
Тема 1
3. Препроцессор может...
выполнять предварительную сборку исходной программы и раскрывать макросы в инструкции исходного языка
работать на втором этапе компиляции
транслировать байт-код в машинный язык
7. Каковы преимущества системы обработки языка, в которой компилятор даёт выход на языке ассемблера, по сравнению с системой, в которой компилятор даёт выход на машинном языке?
(выберите несколько ответов)
ассемблер даёт в качестве выходных данных перемещаемый машинный код
ассе
150 руб.
Другие работы
Простой разрез. Графическая работа 4 - Вариант 30
.Инженер.
: 17 февраля 2026
П.В. Зеленый. Инженерная графика. Практикум по черчению. Простые разрезы. Графическая работа 4 - Вариант 30
Перечертить главный вид и вид сверху. Построить вид слева. На построенных изображениях выполнить разрезы. Нанести необходимые размеры. Оформить чертеж в соответствии с требованиями стандартов.
В состав работы входит:
Чертеж;
3D модель.
Выполнено в программе Компас + чертеж в PDF.
150 руб.
Откуда взялись старомосковские названия улиц?
Aronitue9
: 25 августа 2013
В истории московской топонимии (названий городских местностей, улиц, площадей) отчетливо выделяются три периода – дореволюционный, советский и современный. В разное время превалировали те или иные принципы номинации улиц города. одни названия возникали спонтанно – из народных прозваний, другие были придуманы специально и утверждены городскими властями. Улицы, переулки, площади города несут на себе след исторических событий и лиц, имена горожан, в их названиях отразилась и церковная старина, и ос
5 руб.
Задачник по процессам тепломассообмена Задача 1.37 Вариант 4в
Z24
: 23 октября 2025
В нагревательной печи, где температура газов tж1, стенка сделана из трех слоев: динасового кирпича толщиной 60 мм, красного кирпича толщиной 250 мм и снаружи слоя изоляции толщиной δиз. Воздух в цехе имеет температуру tж2. Коэффициент теплоотдачи в печи от газов к стенке α1, снаружи от изоляции к воздуху α2. Найти коэффициент теплопередачи от газов к воздуху, потери теплоты через стенку, температуры на поверхностях всех слоев. Построить график температур в стенке.
180 руб.
Чертежи-Графическая часть-Курсовая работа-Буровая установка БУ 4500/270 ЭК-БМ, Патентно-информационный обзор, Фундамент буровой Вид общий
https://vk.com/aleksey.nakonechnyy27
: 6 мая 2016
В ряде случаев в верхней части основания возводимого здания и сооружения может находиться относительно слабый слой грунта, поэтому возникает необходимость в передаче давления от сооружения на более плотные грунты, залегающие на некоторой глубине. В этих случаях часто устраивают фундаменты из свай, которые способны воспринимать большие нагрузки по сравнению с фундаментами неглубокого заложения и, кроме того, иногда являются более экономичными, так как при их возведении объем трудоемких земляных
696 руб.