Файл: Предмет Основы алгоритмизации и программирования Курс.docx
Добавлен: 12.01.2024
Просмотров: 149
Скачиваний: 1
ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
| Предмет | Основы алгоритмизации и программирования |
| Курс | 2 |
| Семестр | 2 |
| Работа | 46 |
| Дата | 25.01.2019 |
| Группа | 81/82 |
| Фамилия | Иванов |
| Имя | Иван |
| Отчество | Иванович |
Отчет
Входные данные
При наличии изображений и фалов данных выводить пример с описанием (первые строки файлов, записи таблиц, рисунки). При использовании дополнительных данных указывать источник.-
a, b – числа для выполнения арифметических операций -
Iris flower data set - https://en.wikipedia.org/wiki/Iris_flower_data_set
-
Изображение Lenna.png - 512x512, RGB (https://en.wikipedia.org/wiki/Lenna)
Выходные данные
Оформляется также как и входные данные.-
add – сумма чисел a + b -
sub – разность чисел a - b -
mul – произведение чисел a * b -
div – результат деления чисел a / b
Схема взаимодействия модулей и форм
При наличии нескольких разделяемых по смыслу частей программы (например: работа с бд, мат. расчеты, граф. вывод на экран). Отдельная схема для форм (если более 1) и для модулей. На стрелках подписать потоки данных или события и имя компонента их вызывающего.Блок-схема
Если используются таблицы трассирови – к блокам приписать номера.Дополнительные данные
Данные возникающие в процессе работы программы, заслуживающие внимания или по которым можнопроанализировать корректность работы алгоритма, например диаграммы, графики, или табличные данные.
-
Полученная 2D Гистограмма изображения:
-
3D Гисторгамма (point cloud):
-
Демонстрация работы алгоритма (Brightness and Contrast):
Дополнтельная информация
При использовании формул, геометрии, физики, … Описание алгоритма, пояснение обозначений в формулах на рисунке или текстом.Формула расчета площади круга: (где r – радиус окружности)Таблица трассировки
| step # | block # | a | b | c | d | x | x0 | x1 | info |
| 0 | 0 | - | - | - | - | - | - | - | начало алгоритма |
| 1 | 1 | 1 | 2 | 3 | - | - | - | - | ввод исходных данных |
| 2 | 2 | 1 | 2 | 3 | -8 | - | - | - | расчет дискр. |
| 3 | 3 | 1 | 2 | 3 | -8 | - | - | - | проверка d < 0 |
| 4 | 5 | 1 | 2 | 3 | -8 | - | - | - | вывод "нет корней" |
| 5 | 10 | 1 | 2 | 3 | -8 | - | - | - | конец алгоритма |
| step # | block # | a | b | c | d | x | x0 | x1 | info |
| 0 | 0 | - | - | - | - | - | - | - | начало алгоритма |
| 1 | 1 | 1 | 2 | 1 | - | - | - | - | ввод исходных данных |
| 2 | 2 | 1 | 2 | 1 | 0 | - | - | - | расчет дискр. |
| 3 | 3 | 1 | 2 | 1 | 0 | - | - | - | проверка d < 0 |
| 4 | 4 | 1 | 2 | 1 | 0 | - | - | - | проверка d > 0 |
| 5 | 6 | 1 | 2 | 1 | 0 | -1 | - | - | расчет корня x |
| 6 | 8 | 1 | 2 | 1 | 0 | -1 | - | - | вывод x |
| 7 | 9 | 1 | 2 | 1 | 0 | -1 | - | - | конец алгоритма |
| step # | block # | a | b | c | d | x | x0 | x1 | info |
| 0 | 0 | - | - | - | - | - | - | - | начало алгоритма |
| 1 | 1 | 2 | 3 | 1 | - | - | - | - | ввод исходных данных |
| 2 | 2 | 2 | 3 | 1 | 1 | - | - | - | расчет дискр. |
| 3 | 3 | 2 | 3 | 1 | 1 | - | - | - | проверка d < 0 |
| 4 | 4 | 2 | 3 | 1 | 1 | - | - | - | проверка d > 0 |
| 5 | 7 | 2 | 3 | 1 | 1 | - | 0.5 | -1 | расчет корней x0, x1 |
| 6 | 9 | 2 | 3 | 1 | 1 | - | 0.5 | -1 | вывод x0, x1 |
| 7 | 10 | 2 | 3 | 1 | 1 | - | 0.5 | -1 | конец алгоритма |
Пример работы
Изображение окна консоли с введенными данными и полученным результатом или окна форм.Главная форма:Файлы программы
Сделать скриншот списка файлов практической работы.Исходный текст
Шрифт Consolas 9-10 или Monospace, убрать межстрочный отступ. Необходимо наличие пояснительной информации в программе (комментарии).Файл: lab46a.c#include#include
int main(int argc, char *argv)
{
int *a = (int *) malloc(sizeof(int) * 1);
int *b = (int *) malloc(sizeof(int) * 1);
printf("a = ");
scanf("%d", a);
printf("b = ");
scanf("%d", b);
int add = *a + *b;
int sub = *a - *b;
int mul = (*a) * (*b);
int _div = *a / *b;
putchar('\n');
printf("%d + %d = %d\n", *a, *b, add);
printf("%d - %d = %d\n", *a, *b, sub);
printf("%d * %d = %d\n", *a, *b, mul);
printf("%d / %d = %d\n", *a, *b, _div);
free(a);
free(b);
system("pause");
return EXIT_SUCCESS;
}