Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Программирование и основы алгоритмизации

Автор:   •  Декабрь 27, 2018  •  Лабораторная работа  •  2,369 Слов (10 Страниц)  •  569 Просмотры

Страница 1 из 10

Отчет по семинару 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

...

Скачать:   txt (11.5 Kb)   pdf (515.8 Kb)   docx (52 Kb)  
Продолжить читать еще 9 страниц(ы) »
Доступно только на Essays.club