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

сортировка (метод прямого выбора) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ ввод букв вместо цифр http://www.cyberforum.ru/cpp-beginners/thread352690.html
Привет. Я новичок. Подскажите как сделать так чтобы, в консольной программе при вводе букв вместо цифр выдавалось сообщение об ошибке.
C++ Считывание чисел из файла с расширением .txt Решаю на с++ задачу, которая называется «Вырубка деревьев». Входными данными являются два целых числа, записанных через пробел в файле .txt. Помогите считать эти числа из файла и записать их в... http://www.cyberforum.ru/cpp-beginners/thread352689.html
Поиск места в массиве последовательности C++
Написал программу для нахождения позиции в массиве последовательности чисел #include<iostream> #include<algorithm> #include<stdlib.h> using namespace std; int main ()...
C++ Задачка по структурам
Добрый вечер! Есть такая задачка... С помощью структуры соорудить что-то типа базы данных. Три поля (имя,фамилия, возраст).Ввод с клавиатуры и вывод на экран. С этим разобрался. Код ниже. А вот...
C++ Множественное наследование(правильно ли...образец) http://www.cyberforum.ru/cpp-beginners/thread352668.html
В книге Павловская Т.А. нарвался на такой код #include <iostream> using namespace std; class A{ // Родительский класс... public: A(int _x = 0) { x = _x: } protected;
C++ Задача ксерокопии Помогите решить задачу, не много не догнал. Секретарша Ирочка сегодня опоздала на работу и ей срочно нужно успеть к обеду сделать N копий одного документа. В ее распоряжении имеются два ксерокса,... подробнее

Показать сообщение отдельно
Элеонора
7 / 2 / 1
Регистрация: 20.09.2010
Сообщений: 39

сортировка (метод прямого выбора) - C++

17.09.2011, 22:21. Просмотров 1857. Ответов 1
Метки (Все метки)

Народ, подскажите почему неправильно считает количество перестановок М? Уже час голову ломаю(
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
#include <stdio.h>
#include <conio.h>
#include <vcl.h>
#define N 10
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
void FillRand(int a[], int n);
int CheckSum(int a[], int n);
int RunNumber(int a[], int n);
void FillInc(int a[], int n);
void SelectSort(int a[], int n, int * m, int * c);
void FillDec(int a[], int n);
void PrintMas(int a[], int n);
 
int main(int argc, char* argv[])
{
int a[N+1];
int m,c;
 
 
FillInc(a, N);
PrintMas(a,N);
printf("CheckSum:%d\n",CheckSum(a,N));
printf("\n");
FillDec(a, N);
PrintMas(a,N);
printf("CheckSum:%d\n\n",CheckSum(a,N));
FillRand(a,N);
PrintMas(a,N);
printf("CheckSum:%d\n",CheckSum(a,N));
printf("\n");
SelectSort(a,N,&m,&c);
printf("M:%d C:%d T:%d\n",m,c,m+c);
printf("\n");
PrintMas(a,N);
printf("CheckSum:%d\n",CheckSum(a,N));
printf("Series:%d\n",RunNumber(a,N));
getch();
return 0;
}
void FillRand(int a[], int n){
int i;
randomize();
for(i=1;i<=n;i++)
a[i]=random(100);
}
 void FillDec(int a[], int n){ int i;
   for(i=1; i<=n; i++)
    a[i]=n-i;
    //printf(" %i ", a[i]);
    }
 
 void FillInc(int a[] , int n){
  int i;
  for( i=1; i<=n; i++)
  a[i]=i-1;
  //printf(" %i ", a[i]);
  }
 
int CheckSum(int a[], int n){
int i,s;
for (i=1,s=0;i<=n;i++)
s+=a[i];
return(s);
}
 
int RunNumber(int a[], int n){
int i,s;
for (i=1,s=0;i<n;i++){
if (a[i-1]>a[i]) s++;}
return(s);
}
 
void SelectSort(int a[], int n, int * m, int * c){
int i,j,min,t;
for (i=*c=*m=1;i<n-1;i++){
min=i;
for (j=i+1;j<=n;j++){
if (a[j]<a[min])
min=j;
(*c)++;
}
 if(i!=min){
t=a[i];a[i]=a[min];a[min]=t;(*m)+=3; }
}
}
 
void PrintMas(int a[], int n){
int i;
for (i=1;i<=n;i++)
printf("%3d",a[i]);
printf("\n");
}
//---------------------
//---------------------------------------------------------------------------
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru