Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Отсортировать 8 чисел только 16 сравнениями - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Замена оператора % http://www.cyberforum.ru/cpp-beginners/thread1849959.html
Привет всем форумчанам! Впервые тут, так как только начал учиться программировать. Подскажите, кто знает - как заменить оператор %? то есть, есть ли другие способы деления с модулем, не используя...
C++ Только 1.5 месяца знаком с С++, а уже такое задают П.5.18.Правил Запрещено размещать задания и решения в виде картинок и других файлов с их текстом. П.5.16.Правил Запрещено создавать темы с множеством вопросов во всех разделах, кроме разделов... http://www.cyberforum.ru/cpp-beginners/thread1849932.html
Из указанной области матрицы выбрать значения элементов, сумма которых будет максимальной C++
Задать матрицу размерности m * n (m, n> 2). Начиная с левого нижнего угла матрицы и двигаясь только вправо и вверх, достичь ее правого верхнего угла и выбрать при этом такие значения элементов, сумма...
Подсчет символов в строке C++
Помогите, пожалуйста, написать программу на языке C++, которая будет подсчитывать количество введенных слов, которые заканчиваются на букву f или F Желательно БЕЗ использования массивов и...
C++ Найти сумму таких чисел в диапазоне [a; b], которые при возведении в квадрат превышают b http://www.cyberforum.ru/cpp-beginners/thread1849888.html
Всем привет,надо составить блоксхему к этому заданию. Вводятся числа a и b. Найти сумму таких чисел в диапазоне , которые при возведении в квадрат превышают b. тема занятия цикл for.
C++ Исправить ошибку времени выполнения Всем привет вот уже больше 2-х часов вожусь с простой задачей на динамическую память. Непосредственно весь код #include <iostream> #include <conio.h> #include <math.h> #include <algorithm>... подробнее

Показать сообщение отдельно
afront
888 / 850 / 321
Регистрация: 29.02.2016
Сообщений: 2,724
14.11.2016, 10:33
обычна сортировка выбором для случая когда нужно все переставить сделает именно столько сравнений.
если начальное расположение цифр будет иным и какие то цифры стоят на "своем" месте - сравнений будет меньше

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
using namespace std;
int main()
{
    int n =8;
    int a[8] = {8,7,6,5,4,3,2,1};
    
    int count =0;
    for(int i = 0; i < n; ++i){ 
        int pos = i; 
        int tmp = a[i];
        for(int j = i + 1; j < n; ++j)
           if (a[j] < tmp){
               pos = j; 
               tmp = a[j]; 
               count++;
           }
        a[pos] = a[i]; 
        a[i] = tmp;
    }
    cout << "count = " << count << endl;
    system("pause");
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru