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

Челночная сортировка - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Задача на классы. Крест http://www.cyberforum.ru/cpp-beginners/thread570773.html
Здравствуйте. Напишите пожалуйста программу на с++, а то ваще не врубаюсь Класс крест (х). Перенос,увеличение,размножение
C++ Дана матрица размера M × N. Дана матрица размера M × N. Для каждого столбца матрицы с четным номером (2, 4, …) найти сумму его элементов. Условный оператор не использовать. http://www.cyberforum.ru/cpp-beginners/thread570769.html
C++ Даны целые положительные числа
Даны целые положительные числа M и N. Сформировать целочисленную матрицу размера M × N, у которой все элементы J-го столбца имеют значение 5*J (J = 1, …, N). Добавлено через 3 часа 20 минут ап ап:)
Ввод и вывод в бинарный файл C++
Имеется массив bd1 из структуры bd: struct bd { int nom; char fam , im, otch; int day; int month; int year; char inst ;
C++ Нужно создать простую базу данных http://www.cyberforum.ru/cpp-beginners/thread570757.html
Нужна программа, которая создаёт простую базу данных по студентам группы, включающую сведения о ФИО, годе рождения, оценке за модуль и экзамен. Программа должна позволять создавать и изменять содержание базы данных, записывать и читать базу данных с диска, показывать её содержание на экране.
C++ Удалить повторяющийся элемент Здравствуйте! Помогите пожалуйста! Как мне удалить повтор в списке? у меня имеется вот такой алгоритм: bool buscmp(BusInfo *a, BusInfo *b) { if((a->nummarsh != b->nummarsh) && (a->name != b->name) && (a->from != b->from) && (a->to != b->to) && (a->price != b->price) && (a->numofseats != b->numofseats))return false; return true; } подробнее

Показать сообщение отдельно
zitxbit
Master C/C++
 Аватар для zitxbit
86 / 738 / 75
Регистрация: 11.04.2012
Сообщений: 971
19.05.2012, 20:37     Челночная сортировка
Как только сделаю размещу. Ждите.

Добавлено через 22 минуты
Как только сделаю сразу размещу, ждите.

Добавлено через 17 минут
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
#include <string.h>
#include <locale.h>
 
#define N 10
 
typedef struct Person
{
    char name[256];
} PERSON;
 
void swaps(char* psz1, char* psz2);
bool iseqkey(char* psz1, char* psz2, int pos);
 
int main()
{
   setlocale(LC_ALL,"Russian");
 
   static PERSON pers[] = { { "Ivanov"  }, { "Petrov"  }, { "Stepanov" }, { "Sidorov" }, 
                            { "Rybakov" }, { "Abramov" }, { "Archipov" }, { "Pavlov"  }, 
                            { "Petuhov" }, { "Isakov"  } }; 
  
   for (int q = 0; q < 256; q++)
       for (int i = 0; i < N-1; i++)
            if (pers[i].name[q] > pers[i+1].name[q] && 
                iseqkey(pers[i].name,pers[i+1].name, q))
            {
                swaps(pers[i].name, pers[i+1].name);
                for (int k = i; (pers[k].name[q] < pers[k-1].name[q]) && (k >= 1); k--)
                     if (iseqkey(pers[k].name,pers[k-1].name, q))
                         swaps(pers[k].name,pers[k-1].name);
            }
 
    for (int q = 0; q < N; q++)
        printf("%s\n",pers[q].name);
 
    return 0;
}
 
bool iseqkey(char* psz1, char* psz2, int pos)
{
    for (int i = pos-1; i >= 0; i--)
        if (psz1[i] != psz2[i])
            return false;
 
    return true;
}
 
void swaps(char* psz1, char* psz2)
{
    static char* psztemp = new char[256];
    strcpy(psztemp, psz1);
    strcpy(psz1, psz2); 
    strcpy(psz2, psztemp);
}
http://liveworkspace.org/code/f90d74...47e3084ff25f4a
 
Текущее время: 09:07. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru