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

Контрольная работа по "Информатике"

Автор:   •  Апрель 3, 2022  •  Контрольная работа  •  545 Слов (3 Страниц)  •  133 Просмотры

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

//Поразрядная сортировка

#include <iostream>

using namespace std;

//функция, возвращающая цифру числа, исходя из указанного разряда

int size_r(int num, int r)

{

while (r > 1)

{

num /= 10;

r--;

}

return num % 10;

}

//поразряная сортировка

//данная ф-ия сортирует массив, который передается в качестве параметра в нее

void sort_razr(int *mas, int r, int n)

{

int i, j, t = 0;

int *mas_col = new int[10]; //создаем ондномерный массив mas_col

for (int i = 0; i < 10; i++)

{

mas_col[i] = 0; //заполняем элементы массива нулями, потому как числа, у которых определенный разряд отвечает за конкретную цифру, должны будут идти в ряд сверху вниз, начиная с первой строки

}

int dop_mas[100][10]; //и двумерный массив dop_mas (в качестве кол-ва столбцов указываю 10, потому что всего число может содержать цифры от 0 до 9

for (i = 0; i < n; i++)

{

int a = size_r(mas[i], r); //в переменную a записывается цифра числа по разряду, указанному в качестве параметра ф-ии

dop_mas[mas_col[a]][a] = mas[i];

mas_col[a]++;

}

//в данном цикле идет переинициализация массива mas: сначала записываются числа с меньшими цифрами на конректно-заданном для ф-ии разряде

//потом с каждой итерацией записываются числа с большими

for (i = 0; i < 10; i++)

{

//если цифра не встречается ни в одном числе, то вложенный цикл пропускается на внешней итерации

for (j = 0; j < mas_col[i];

...

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