Форум программистов, компьютерный форум 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 Желательно БЕЗ использования массивов и указателей Сама попыталась накидать это: (типа сначала пробелы заменяются на новые строки, потом считаются), но корректно оно не работает #include<iostream> #include<stdio.h> #include<clocale> int...
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> #include <ctime> #include <vector> подробнее

Показать сообщение отдельно
afront
686 / 648 / 233
Регистрация: 29.02.2016
Сообщений: 2,100
14.11.2016, 10:33     Отсортировать 8 чисел только 16 сравнениями
обычна сортировка выбором для случая когда нужно все переставить сделает именно столько сравнений.
если начальное расположение цифр будет иным и какие то цифры стоят на "своем" месте - сравнений будет меньше

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;
}
 
Текущее время: 17:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru