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

С помощью алгоритма вставки, нужно сортировать парные числа массива в порядке возрастания - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Вывести значения переменных в столбик, установить точность, ширину поля и зафиксировать http://www.cyberforum.ru/cpp-beginners/thread1252502.html
Напишите инструкцию ввода и вывода значений чисел 123, 45.080, 2345566.1 типа float с разным количеством цифр целой и дробной части для каждого; Выведите значения переменных из предыдущего пункта в столбик. Установите точность, ширину поля и зафиксируйте точку. (При выполнении желательно использовать функцию очистки экрана clrscr (), описание которой содержится в файле-заголовке <conio.h>. ...
C++ Написать программу форматированного вывода в console Напишите инструкцию ввода и вывода значений чисел 123, 45.080, 2345566.1 типа float с разным количеством цифр целой и дробной части для каждого; Выведите значения переменных из предыдущего пункта в столбик. Установите точность, ширину поля и зафиксируйте точку. (При выполнении желательно использовать функцию очистки экрана clrscr (), описание которой содержится в файле-заголовке <conio.h>. ... http://www.cyberforum.ru/cpp-beginners/thread1252497.html
C++ Решить нелинейное уравнение
Подкинули в универе такую задачку,решить нелинейное уравнение типа: ctgx-x\4=0. С виду вроде просто,но вот как это запихнуть в код и с какой стороны подступиться-не понимаю,помогите,пожалуйста!
Перевернутое изображение Open GL C++
есть карта : int Map = { {1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}, {1,1,1,1,1,0,0,0,0,0,0,0,0,0,1,1,1,1,1,0,0,0,0,0,0,1,1,1,1,1}, {1,1,1,1,1,0,1,1,1,1,1,1,1,0,1,1,1,1,1,0,1,1,1,1,0,1,1,1,1,1}, {1,1,1,1,1,0,1,1,1,1,1,1,1,0,1,1,1,1,1,0,0,1,1,1,0,1,1,1,1,1}, {1,1,1,1,1,0,1,1,1,1,1,1,1,0,1,1,1,1,1,1,0,1,1,1,0,1,1,1,1,1}, ...
C++ Структуры: сформировать двоичный файл, записав в него всю известную информацию о каждом сотруднике http://www.cyberforum.ru/cpp-beginners/thread1252485.html
Известна информация о сотрудниках некоторого предприятия: - фамилия, инициалы; - год рождения; - должность; - стаж; - оклад. Сформировать двоичный файл, записав в него всю известную информацию о каж- дом сотруднике. Отсортировать файл в алфавитном порядке. Определить количест- во пенсионеров (старше 60 лет) и количество молодых специалистов (моложе 25 лет).
C++ Составить программу которая содержит динамическую информацию об автобусном парке Задание: //Составить программу которая содержит динамическую информацию об автобусном парке. //Сведения о каждом автобусе включают: //* номер автобуса; //* фамилию и инициалы водителя; //*номер маршрута; //Программа должна обеспечивать: //* начальное формирование данных об автобусах в виде списка; //* при выезде автобуса с парка, он переносится в список на маршруте; //* при въезде в... подробнее

Показать сообщение отдельно
igorrr37
1637 / 1265 / 130
Регистрация: 21.12.2010
Сообщений: 1,927
Записей в блоге: 7
07.09.2014, 22:23     С помощью алгоритма вставки, нужно сортировать парные числа массива в порядке возрастания
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#include <iostream>
#include <fstream>
 
// сортировка вставками
void ISort(int arr[], int arrsiz)
{
    int i, j, tmp, dta;
    for(i = 0; i < arrsiz; ++i)
    {
        tmp = arr[i];
        dta = 1;
        for(j = i - 1; j >= 0 && (((tmp&1) == (arr[j]&1)) ? (tmp&1 ? arr[j] < tmp : arr[j] > tmp) : (++dta, true)); --j)
        {
            if((tmp&1) == (arr[j]&1))
            {
                arr[j+dta] = arr[j];
                dta = 1;
            }
        }
        arr[j+dta] = tmp;
    }
}
 
int main()
{
    std::fstream fs("in.txt", std::ios::in);
    if(fs.is_open())
    {
        int arr[100], arrsiz = -1;
        while(fs >> arr[++arrsiz])
            ;
        fs.clear();
        fs.close();
        fs.open("out.txt", std::ios::out);
        if(fs.is_open())
        {
            ISort(arr, arrsiz);
            for(int i = 0; i < arrsiz; fs << arr[i] << "  ", ++i)
                ;
            fs.close();
        }
        else
            std::cerr << "Unable to open output file\n";
    }
    else
        std::cerr << "Unable to open input file\n";
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru