КОМПЬЮТЕРНОЕ ПРОГРАММИРОВАНИЕ. ВАРИАНТ 9 СибГУТИ
|
|
engineerklub | Дата: Суббота, 13.05.2023, 06:23 | Сообщение # 1 |
Генералиссимус
Группа: Администраторы
Сообщений: 28629
Статус: Offline
| КОМПЬЮТЕРНОЕ ПРОГРАММИРОВАНИЕ. ВАРИАНТ 9 СибГУТИ
В приложении А выбрать исходные данные (ИД) согласно номеру своего варианта. Представить десятичное число 1а в двоичной и шестнадцатеричной системе счисления в формате байт1. Представить десятичные числа 1а, 1б и -1в в двоичной и шестнадцатеричной системе счисления в формате слова и двойного слова2. Зашифровать данный текст 2, используя таблицу ASCII-кодов. Расшифровать данный текст 3, используя таблицу ASCII-кодов. Составить программу на языке С реализующую указанные в пп. 2 – 5 преобразования и выводящую их на дисплей. Коды выводить в формате dec и hex3. Отладить программу и получить результаты. Добавить в программу код для вычисления значения функции z (см. функцию преобразования 1 в приложении Б), приняв за x число А, а за y число В. Подтвердить расчет ручным простчетом. Составить блок-схему линейного алгоритма для программы4. Сделать выводы.
Примечания: 1. В задании 2 в число "1а" разряд сотен заменить нечетным вариантам на ноль, четным вариантам – на единицу. 2. В задании 3 "-1в" означает целую часть числа 1в со знаком "минус". 3. При программировании задания 5 необходимо использовать несколько инструкций (по количеству кодов) 4. При составлении блок-схемы использовать символы 1, 2, 7 и 8 согласно рис. 1.7. В соответствии с номером варианта разработать программу на языке С++ для вычисления значения функции y (см. функция преобразования 2 в приложении Б). При вводе исходных данных с клавиатуры и выводе результата работы программы использовать десятичную систему счисления в вещественном формате. Для проверки значения аргумента функции использовать оператор if. Проверить адекватность работы программы на контрольном примере. В соответствии с индивидуальным заданием из приложения В разработать программу на языке C++ для вычисления и вывода на экран минимального (ymin) и максимального (ymax) значения функции y=f(x) при x[x1, x2] с шагом x, и номеров интервалов, на которых достигаются эти значения. Величины a и b ввести с клавиатуры. Использовать оператор цикла заданного вида. Обеспечить вывод на экран в табличной форме для каждого шага вычислений следующие промежуточные результаты: номер шага; текущее значение аргумента х; текущее значение функции y; текущее значение минимума функции ymin; номер интервала nmin, соответствующие значению ymin; текущее значение минимума функции ymax; номер интервала nmax, соответствующие значению ymax; Выполнить ручной просчет для значения аргумента из третьего интервала и сравнить его с результатами выполнения программы.
СКАЧАТЬ
|
|
| |
engineerklub | Дата: Суббота, 13.05.2023, 06:24 | Сообщение # 2 |
Генералиссимус
Группа: Администраторы
Сообщений: 28629
Статус: Offline
| Задание. Из приложения Г выбрать свое индивидуальное задание и написать программу на языке С++, которая обрабатывает числовые последовательности и выводит результаты обработки на экран. Если в задании используется число M, то его ввод осуществлять с клавиатуры. Обработку выполнить без использования массивов!!! Сгенерировать последовательность из N целых случайных чисел, которые находятся в заданном интервале. Для данной последовательности выполнить задание №1. Число N и границы интервала задать целочисленными константами. Ввести с клавиатуры последовательность ненулевых чисел, 0 – конец последовательности. Для данной последовательности выполнить задание №2.
Из приложения Д выбрать индивидуальное задание и написать программу, которая вычисляет сумму ряда с точностью ε для всех значений аргумента, меняющегося в заданном интервале с заданным шагом. Также определить количество шагов n для достижения заданной точности ε. Запрограммировать вычисление точного значения функции Y для каждого x (z). Подсчитать ошибку вычислений по формуле: . Результаты выполнения программы представить в следующем виде: Значение аргумента x (z) Сумма ряда S Точное значение Y Относительная ошибка в % Количество шагов n
Форматирование таблицы осуществлять при помощи языковых средств вывода данных, рассмотренных в разделе 5 учебного пособия.
Задача вычисления суммы членов ряда рассмотрена в разделе 10 учебного пособия.
Решить задачу 1 с использованием подпрограммы так, чтобы: ввод элементов последовательности с клавиатуры и вывод результатов их обработки осуществляются в функции main(); обработка элементов последовательности осуществляются при помощи функции пользователя, необходимые элементы передаются в пользовательскую функцию в качестве параметров. Результаты выполнения модифицированной программы должны совпадать с результатами выполнения исходной программы.
СКАЧАТЬ
|
|
| |
engineerklub | Дата: Суббота, 13.05.2023, 06:24 | Сообщение # 3 |
Генералиссимус
Группа: Администраторы
Сообщений: 28629
Статус: Offline
| В отчете представить:
тему, цель, задание, в том числе индивидуальная часть; листинг программ по раздела 1, 2, 3; результаты выполнения каждой программы; ручную обработку последовательности и анализ результатов; ручной расчет суммы S (для соответствующего числа шагов) и значения функции Y для одного из значений x (z); выводы. Задание Самостоятельно изучить возможности языка программирования C++ для описания, инициализации и обработки одномерных массивов. Создать консольное приложение, в котором реализовать следующие вычисления: объявление заданного массива целых чисел фиксированной длины; инициализацию элементов массива посредством ввода с клавиатуры; заданный расчет и вывод его результата на консоль. обменную (пузырьковую) сортировку элементов массива заданного направления (нечетные варианты – по возрастанию, четные – по убыванию), реализовать в виде пользовательской функции int Sort(int Ar[]), которая принимает в качестве аргумента исходный массив, а возвращает количество перестановок; вывести на экран исходный и отсортированный массив, а также количество перестановок; вывод массивов реализовать в виде пользовательской функции void Output(int Ar[]). Выполнить контрольную пошаговую обработку и сортировку массива из контрольного примера вручную. 9 Y(6) Среднее арифметическое элементов с четными номерами В соответствии с индивидуальным заданием заполнить матрицу размером 9х9 случайными целыми числами из заданного диапазона и выполнить заданное преобразование матрицы. Исходную и преобразованную матрицы вывести на экран. 9 [-40, 60] Из правой полуплоскости матрицы отрицательные элементы отразить зеркально в левую полуплоскость Задание
В соответствии с индивидуальным заданием (табл. 1.2) записать в матрицу размером 9х9 линейную последовательность натуральных чисел (1, 2, 3, ...). результатную матрицу вывести на экран. Заполнить матрицу размером 9х9 случайными числами из диапазона 0…99 и выполнить заданное (табл. 1.2) преобразование матрицы. Исходную и преобразованную матрицы вывести на экран. Задание
В соответствии с индивидуальным заданием (табл. 1.2) записать в матрицу размером 9х9 линейную последовательность натуральных чисел (1, 2, 3, ...). результатную матрицу вывести на экран. Заполнить матрицу размером 9х9 случайными числами из диапазона 0…99 и выполнить заданное (табл. 1.2) преобразование матрицы. Исходную и преобразованную матрицы вывести на экран. Изучить понятие динамической памяти и области её эффективного использования, а также возможности языка программирования С++ для управления динамическими переменными и создания динамических массивов. Составить программу для ввода и обработки динамической матрицы целых чисел в соответствии с заданием 1 в табл. 2 посредством выделения памяти под одномерный массив целых чисел. Составить программу для ввода и обработки динамической матрицы целых чисел в соответствии с заданием 2 в табл. 2 при помощи массива указателей. Размер матрицы вводить с клавиатуры. Элементы матрицы инициализировать случайными числами в произвольно выбранном диапазоне. При выполнении заданий 1 и 2 из таблицы предусмотреть освобождение памяти после завершения обработки матрицы. 9 В двумерном массиве Y. Определить и вывести на экран разность между максимальным Yмакс и минимальным Yмин элементами массива. Размерность массива задавать с клавиатуры, элементы массива заполнять с использованием генератора случайных чисел в диапазоне, задаваемом пользователем. Все элементы четных строк матрицы уменьшить на ее среднее арифметическое значение, а нечетных – увеличить.
СКАЧАТЬ
|
|
| |