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

Сортировки. Требуется совет. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ кодирование текста http://www.cyberforum.ru/cpp-beginners/thread112518.html
задачка такая: Написать программу,"шифрующую(расшифровывающею)" текст из файла указанного пользователем,путем добавления (вычитания) к (из) ASC11-коду каждого символа "пароля" в виде числа от1 до10 ,"Пароль" запрашивается у пользователя . ПОмогите плиз . До сдачи неделя осталась !!!!заранее спасибо.
C++ Ошибка при удалении элемента (STL) У меня есть вектор списков. Мне нужно во внутреннем цикле(в списке) удалить элемент. Ошибка компиляции,когда удаляю с помощью алгоритма,причем лезет куда-то в header STL. Подскажите,как нужно правильно сделать! std::vector<std::list<Process> > processQueue_; Process running; for (std::vector<std::list<Process> >::iterator i = processQueue_.begin(); i!= processQueue_.end(); ++i) {... http://www.cyberforum.ru/cpp-beginners/thread112510.html
C++ алгоритм ферма
Выясните с помощью Алгоритма Ферма , являються ли n произвольных чисел простым , в случае составного числа,разложители на множители!!! Все делаеться на си++!!!
двумерный массив.С++ C++
1)дана квадратная матрица И х И.Переставляя её строки и столбцы,добиться того,чтобы найбольший элемент(или один из них)оказался на гл.диагонали #include <iostream> #include "time.h" int main() { const int N=10;
C++ Сумма цифр натурального числа http://www.cyberforum.ru/cpp-beginners/thread112498.html
1) Написать и протестировать функцию, которая по заданному натуральному числу определяет количество цифр в нем и их сумму. 2)Даны натуральные числа n, m и k. Написать и протестировать функцию, которая возвращает суммы, полученные в результате сложения k младших цифр числа n и k старших цифр числа m. Напишите пожалуйста ;) Добавлено через 1 час 20 минут 1 задание не нужно, помогите со 2...
C++ перевод дробной части из одной с\с в другую int main() {string s,s1,s2; int r1,i,N,n1,n2,k,k2,K,pos,b1,b2,d1,Nf,K1; float K2,K3; cout<<"Vvedite ishodnoe chislo="; cin>>s; cout<<"Vvedite ishodnoe osnovanie chisla="; cin>>b1; cout<<"Vvedite konechnoe osnovanie chisla="; cin>>b2; подробнее

Показать сообщение отдельно
DD
1 / 1 / 0
Регистрация: 20.09.2009
Сообщений: 27

Сортировки. Требуется совет. - C++

04.04.2010, 16:06. Просмотров 581. Ответов 4
Метки (Все метки)

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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <time.h>
 
void bubble(char *items, int count);
void shaker(char *items, int count);
void shell(char *items, int count);
 
int main(void)
{
    FILE *fp;
    FILE *s1;
    FILE *s2;
    FILE *s3;
    char s[255];
    time_t start, end;
    volatile long unsigned t;
 
    printf("read file");
 
    if((fp = fopen("mass.txt", "r")) == NULL) {
        printf(" : error.\n");
        exit(1);
    }
 
    printf(" : ok.\n\n");
 
    while(!feof(fp)) {
        fgets(s, 253, fp);
    }
 
    start = time(NULL);
    bubble(s, strlen(s));
    end = time(NULL);
    s1 = fopen("bubble.txt", "w");
    fputs(s, s1);
    printf("Bubble sort : ok.\n");
    printf("time: %f s.\n\n", difftime(end, start));
 
    start = time(NULL);
    shaker(s, strlen(s));
    end = time(NULL);
    s2 = fopen("shaker.txt", "w");
    fputs(s, s2);
    printf("Cocktail shaker sort : ok.\n");
    printf("time: %f s.\n\n", difftime(end, start));
 
    start = time(NULL);
    shaker(s, strlen(s));
    end = time(NULL);
    s3 = fopen("shell.txt", "w");
    fputs(s, s3);
    printf("Donald Lewis Shell sort : ok.\n");
    printf("time: %f s.\n\n", difftime(end, start));
 
    fclose(fp);
    fclose(s1);
    fclose(s2);
    fclose(s3);
    return 0;
}
 
// bubble sort
void bubble(char *items, int count)
{
    register int a, b;
    register char t;
 
    for(a = 1; a < count; ++a)
        for(b = count-1; b >= a; --b) {
            if(items[b-1] > items[b]) {
                t = items[b-1];
                items[b-1] = items[b];
                items[b] = t;
            }
        }
}
 
// cocktail shaker sort
void shaker(char *items, int count)
{
    register int a;
    int exchange;
    char t;
 
    do{
        exchange = 0;
        for(a = count-1; a >0; --a) {
            if(items[a-1] > items[a]) {
                t = items[a-1];
                items[a-1] = items[a];
                items[a] = t;
                exchange = 1;
            }
        }
 
        for(a = 1; a < count; ++a) {
            if(items[a-1] > items[a]) {
                t = items[a-1];
                items[a-1] = items[a];
                items[a] = t;
                exchange = 1;
            }
        }
    } while(exchange);
}
 
// Donald Lewis Shell sort
void shell(char *items, int count)
{
    register int i, j, gap, k;
    char x, a[5];
 
    a[0] = 9; a[1] = 5; a[2] = 3; a[3] = 2; a[4] = 1;
 
    for(k = 0; k < 5; k++) {
        gap = a[k];
        for(i = gap; i < count; ++i) {
            x = items[i];
            for(j=i-gap; (x < items[j]) && (j >= 0); j = j-gap)
                items[j+gap] = items[j];
            items[j+gap] = x;
        }
    }
}


программа должна проводить три вида сортировок и выдавать результат по времени
поправьте или разберите код вкратце

Добавлено через 1 час 12 минут
up...)

Добавлено через 25 минут
создаю файл mass.txt, в нем то что будем сортировать, файлы bubble.txt, shell.txt и shaker.txt сами создадутся и в них будут отсортированные данные. Все верно?)

Добавлено через 1 час 10 минут
блин.. выдает, что сортировка заняла 0,00000 секунд =/
подскажите в чем ошибся ?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru