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

Простая сортировка выбором с использованием указателей - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Переставить местами первую и последнюю строку массива http://www.cyberforum.ru/cpp-beginners/thread1123913.html
Помогите пожалуйста найти ошиибкууу :help: Borland C++. Задание: Задан целочисленный массив А размерности NхM. Переставьте местами первую и последнюю строку данного массива. #include <iostream.h> #include <conio.h> #include <time.h> main() { int N,M,c,i,j,a; randomize();
C++ Написать программу, которая берет все названия картинок из данной папки и записывает их в текстовый файл Дана папка, в которой лежит определенное кол-во картинок. Необходимо написать программку, которая берет все названия картинок из данной папки и записывает их в текстовый файл, разделяя, к примеру, пробелами. Как такое реализовать? http://www.cyberforum.ru/cpp-beginners/thread1123900.html
Как с помощью программы на C++ изобразить различные графики и фигуры? C++
Собсно,как с помощью программы на с++ изобразить различные графики и фигуры?
Исключить из строки S все сдвоенные пробелы C++
НУЖНО ПОМОЩЬ В НАПИСАНИЕ КОДА.ХОТЯ БЫ ЕЕ ЧАСТЬ.ЗАРАНЕЕ СПАСИБО!! Дана строка S, состоящая из латинских букв, пробелов и знаков препинания, а также буквенные символы C1 и C2. Требуется произвести следующие действия: 1.Исключить из строки S все сдвоенные пробелы; 2.Заменить в строке S все вхождения символа C1 на символ C2; 3.У всех гласных букв изменить регистр (заглавные сделать...
C++ Вывести интересные элементы массива http://www.cyberforum.ru/cpp-beginners/thread1123860.html
Нужна помощь в написание кода.ЗАРАНЕЕ СПАСИБО!! Дан массив, элементами которого являются целые числа. Интересными называются те элементы массива, которые являются чётными и расположены одновременно после максимального элемента и до минимального элемента. Если массив содержит несколько максимальных элементов, следует рассматривать первый из них. Если массив содержит несколько минимальных...
C++ Где почитать про работу сcom портами Доброе время суток. Объясните пожалуйста как и где почитать про работу с COM портами. Необходимо считывать данные с прибора по протоколу rs 232 подробнее

Показать сообщение отдельно
Winorun
38 / 38 / 4
Регистрация: 03.05.2013
Сообщений: 177
19.03.2014, 17:41     Простая сортировка выбором с использованием указателей
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <iostream>
#include <fstream>
#include <stdlib.h>
using namespace std;
 
void swap(int *n){
    int x=*n;
    *n=*(n+1);
    *(n+1)=x;
}
 
int main(){
ifstream in("input.txt");
ofstream out("out.txt");
 
if(!in){
    cerr << "file not font\n";
    return 1;
}
if(!out){
    cerr << "I can't open file\n";
    return 2;
}
 
int max;
in >> max;
 
int *mas = new int [max];
for(int i=0;i<max;i++){
    in >> mas[i];
}
in.close();
 
// сортируем, для простоты примера возмем обычный пузырек 
for(int i_1 = 0 ; i_1 < max ; i_1++) 
    for(int i_2 = 0 ; i_2 < max - i_1 - 1 ; i_2++) 
        if(abs(*(mas+i_2))>abs(mas[i_2+1]))swap(mas+i_2);
            
cout << "input x:";
int x;
cin >> x;
 
int pos;
for(int i=max-1;i!=-1;i--) // поиск в сортированом масиве(для лабораторной сойдет)
    if(abs(mas[i])>x)pos=i;
 
int *sortMas= new int [max-pos];
for(int i=pos,k=0;i<max;i++)// тут лудше использовать копирование памяти
        sortMas[k++]=mas[i]; // но можно и так
max=max-pos;
delete [] mas;
mas = sortMas;
 
for(int i=0;i<max;i++){
    out << mas[i] << " ";
    cout << mas[i] << " ";
}
 
out.close();
delete [] mas;
return 0;
}
Добавлено через 10 минут
сортировку только поправь у тебя алгоритм рабочий
 
Текущее время: 04:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru