Помощь - Поиск - Пользователи - Календарь
Полная версия: сортировка посредством выбора (Си) > Информатика / Программирование
Образовательный студенческий форум > Другие дисциплины > Информатика / Программирование
rexy
помогите пожалуйста написать программку на СИ,

Условие:

размер массива 40 и задается с клавиатуры. Заполнение массива с помощью датчика случаных чисел или с клавиатуры по выбору пользователя. Элементы массива целые неотрицательные числа. Максимальное значение элементов массива задается с клавиатуры и не превышает 99. Все параметры вводятся с клавиатуры или считываются с файла по желанию.
Ввести значения числа сравнений и числа перестановок.

Все надписи вводятся на одном языке,
программа не долна закрываться аварийно, должно выдаваться соответствующее сообщение.
программа должна состоять из нескольких файлов и
должна содержать комментарии поясняющие используемые алгоритмы.
tig81
Правила форума
rexy
Алгоритм сортировки массива по возрастанию методом прямого выбора может быть представлен так:
1. Просматривая массив от первого элемента, найти минимальный элемент и поместить его на место первого элемента, а первый — на место минимального.
2. Просматривая массив от второго элемента, найти минимальный элемент и поместить его на место второго элемента, а второй — на место минимального.
3. И так далее до предпоследнего элемента.
kaa
Давайте рассмотрим пример использования генератора случайных чисел, а именно заполнение массива случайными числами:

#include<iostream>
#include<stdlib.h> // в этом файле содержатся функции rand() и srand()
#include<time.h> // в этом файле содержится функция time()
using namespace std;
void main()
{
srand(time(NULL));
int array[10];
for (int i=0;i<10;i++)
{
// генерация случайного числа и запись его в текущий элемент массива
array[i]=rand()%100;

// показ значения элемента на экран
cout<<array[i]<<”\n”;
}
}




1. В приведенном выше примере на экран будет выведен массив из 10 элементов, заполненный случайными числами.

2. На каждой итерации цикла генерируется новое случайное число.

3. При каждом запуске программы массив будет заполнен по-разному, благодаря строке srand(time(NULL));

4. Числа располагающиеся, в массиве будут варьироваться в диапазоне от нуля до 99, так как результат генерации делится на 100 по модулю.
rexy
а как быть со значениями чисел сравнения и чисел перестановок.
kaa
rexy ну надо в цыкле проверять то что вам надо операторами if и else и записывать в ячейки массива)
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.