Программирование и основы алгоритмизации
Автор: roerashov • Декабрь 27, 2018 • Лабораторная работа • 2,369 Слов (10 Страниц) • 644 Просмотры
Отчет по семинару 1.
Программирование и основы алгоритмизации.
Выполнил:
Ерашов Роман Олегович
Группа ИД-0201-17.
Вариант 4.
Динамические массивы
Задача 2.
Условие задачи:
Изменить каждый положительный элемент вектора T, поделив элемент на его номер, а отрицательные элементы – подсчитать.
Таблица 2. Состав данных для задачи 2.
Имя | Смысл | Тип | Структура |
Исходные данные | |||
k | Количество элементов вектора | вещественный | простая переменная |
T | Заданный вектор | целый | Одномерный массив из 100 элементов |
Промежуточные данные | |||
i | Счетчик элементов массива | целый | простая переменная |
Выходные данные | |||
n | Измененный элемент вектора | вещественный | простая переменная |
m | Количество отрицательных элементов вектора | вещественный | простая переменная |
[pic 1]
Рисунок 2. Блок-схема алгоритма программы к задаче 2
Текст программы к задаче 2
#include
#include
#include
void main()
{
setlocale(LC_ALL, "Russian");
printf("Изменить каждый положительный элемент вектора T, поделив элемент на его номер, а отрицательные элементы – подсчитать. \n");
int i, k, n = 0, m = 0; double *T;
double g = 0.0;
printf("Введите количество элементов вектора \n ");
scanf_s("%d", &k);
printf("Введите массив из %d элементов ", k);
/* Далее цикл для поэлементного ввода массива*/
T = (double*)malloc(k * sizeof(double));
for (i = 0; i < k; i++)
{
scanf_s("%lf", &T[i]);
}
for (i = 0; i < k; i++)
{
if (T[i] > g && i > 0)
{
T[i] = T[i] / (i + 1);
printf("Элемент вектора №%d . \n", i + 1);
printf(" = %f \n", T[i]);
}
}
for (i = 0; i < k; i++)
{
if (T[i] < g)
{
n = n + 1.0;
}
}
printf("Отрицательных элементов %d. \n", n);
_getch();
}Проектирование алгоритма обработки матриц.
Задача 3.
Условие задачи:
Дана матрица А из n строк и m столбцов. Способ задания n и m определяется средой программирования и указаниями преподавателя. Матрицу A необходимо вводить и выводить (если ее элементы были изменены) построчно.
Вывести индексы элементов матрицы, равных нулю.
Матрица будет задана динамическим массивом.
Таблица 3. Состав данных для задачи 3.
Имя | Смысл | Тип | Структура |
Исходные данные | |||
n | Количество строк | целый | простая переменная |
m | Количество столбцов | целый | простая переменная |
matr | Матрица A | вещественный | Массив указателей на указатели |
Выходные данные | |||
p | Количество ненулевых элементов в матрице | целый | простая переменная |
i | Номер строки матрицы | целый | простая переменная |
j | Номер столбца матрицы | целый | простая переменная |
[pic 2]
Рисунок 3. Блок-схема алгоритма программы к задаче 3
...