Similar presentations:
Образец презентации Курсовой работы
1. Название темы работы (Из Задания)
Исполнитель: Фамилия Имя Отчество, гр. ЗПИ-1-19Представление работы должно занимать не более 3 минут. Поэтому
выносим в презентацию только ключевые моменты исследования. Что
для вас является ключевым – решайте сами. Приведённый здесь
пример – лишь один из вариантов. Помним, что в среднем на каждый
слайд уходит полминуты. Перед защитой отрепетируйте выступление.
Останавливать буду жёстко при нарушении регламента.
1
2. Постановка задачи
1. Создать целочисленный массив типа short int размером n. Элементымассива инициализируются по следующему алгоритму:
• сгенерировать случайное целое число А в диапазоне значений от min до
max;
• преобразовать число А так, чтобы нечётные чтобы были равны 0, а чётные
сохранили свои значения.
• присвоить преобразованное число А текшему элементу массива.
2. Инициализированный массив вывести на печать и найти в нём первый
элемент, у которого k-й бит равен 1 и вывести его на консоль.
2
3. Контрольный пример для инициализации массива
Допустим сгенерированоА=338610=D3A16
случайное
№бита 15 14 13 12 11
10 9
8
7
6
5
4
3
2
1
0
значен 0
ие
1
1
0
0
1
1
1
0
1
0
0
0
0
1
0
десятичное
число
16-е
число
Х
0
0
0
0
0
1
0
1
0
0
0
1
0
0
0
0
С
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
D
3
A
3
4. Результат анализа контрольного примера
• Полученное значение элемента массива Х, сформированного изчисла А, будет
Х = 0000 0101 0001 00002=51016=129610
(1)
• Константа с которой необходимо провести битовую конъюнкцию
имеет значение
С=0101 0101 0101 01012=555516
(2)
4
5. Контрольный пример для поиска массива
Допустим нам необходимо выделить k=4-й бит№бита
15
14
13
12
11
10
9
Х
0
0
0
0
0
1
0 1 0 0 0 1 0 0 0 0
X>>4
0
0
0
0
0 0
0
0 0
1 0 1 0 0 0 1
0
0
0
0
0
0
0
0
Рез-т
0
8
7
0
6
5
0
4
0
3
0
2
0
1
0
0
1
Из контрольного примера мы видим, что для реализации поставленной
задачи необходимо осуществить сдвиг вправо на 4 позиции, что
приводит к перемещению искомого бита в младший нулевой бита.
А затем, применяя битовую конъюнкцию с числом 1, получим в
5
результате число, хранящее искомый бит
6. Прототипы разработанных функций
void Init_array(short int * A, int n, int min, int max);// иницализация массиваvoid Print_array(short int * A, int n);// Вывод на консоль массива
short int search(short int * A, int n, int k);// Поиск первого элемента массива,
у которого k-й бит=1
short int k_bit(short int X, int k);// выделение k-го бита
6
7. Код главной программы
int main(){
setlocale(LC_ALL, "rus"); // для вывода русского шрифта в консоль
srand(2);// всегда работаем с одной т той же базой чисел
int n, k, min, max;
short int z;
// Блок создания и инициализации массмва
printf("\n Ввести размер массива:"); cin >> n;
short int * X = new short int[n];// выделяем динамическую память под массив
cout << "\n Ввести min max для диапазона случайных величин:"; cin >> min >> max;
printf("\n Массив будет сформирован из чисел в диапазоне от %d до %d\n", min, max);
Init_array(X, n, min, max);
Print_array(X, n);
// Блок поиска элемента массива по заданному условию
printf("\n\nВвести k - номер контрольного бита:"); cin >> k;
z= search( X, n, k);
if(z) printf("\nНайденный элемент массива имет значение = %u (16-й код = %X) \n ", z, z);
return 0;}
7
8. Результаты тестирования программы
Уравнение (1) воспроизведеноНайденный бит соответствует контрольному
примеру
Вывод: Результаты расчётов по программе полностью воспроизводят контрольный пример,
следовательно программа работает верно и может быть применена для массовых расчётов.
8
9. Заключение
1. В работе представлены контрольные примеры.2. На их основе разработан алгоритм решения
3. Программа прошла успешное тестирование при
сравнении с контрольным примером. Она отлажена и
может быть применена в массовых расчётах.
3. Если программа не отлажена: Программа на данный
момент прошла синтаксическую проверку, но времени на
поиск логических ошибок не хватило.
9
10. Спасибо за внимание
ПОСТАРАЙТЕСЬ УЛОЖИТЬСЯ В 3 минуты. Крайний случай 4 минуты.10
programming