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

тем кто шарит в сортировках массивах - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Заполнение двумерного массива одномерным http://www.cyberforum.ru/cpp-beginners/thread805073.html
Здравствуйте! Не могли бы Вы подсказать мне мою ошибку. Мне нужно проверить на обнуление переменных в функции proverka, возвратить параметры в виде одномерного массива и поместить его в двумерный....
C++ Определить функцию-член класса, определяющую принадлежность точки с заданными координатами треугольнику напишите пожалуйста, как определить принадлежность точки , вот само задание:Разработать класс ThreeAngle для работы с плоскими треугольниками. В качестве членов-данных задаются координаты вершин... http://www.cyberforum.ru/cpp-beginners/thread805064.html
C++ Нужно сделать прловерку
Согласно варианту описать указанные типы данных и поместить их в отдельный заголовочный файл. Аналогично поступить с функциями. Реализацию функций выполнить в отдельном файле. Типы данных и функции...
Задачка к курсовой (действия с массивом вещественных чисел) C++
Пытался выучить Си++ с помощью умных книг, но пока как-то не очень, вот прошу помочь с этой задачей, а заодно расскажите как сделать так, чтоб при выводе сообщений на экран русскими буквами...
C++ Сделать так, чтобы функция возвращала параметр http://www.cyberforum.ru/cpp-beginners/thread805059.html
В общем, есть 3 матрицы, выведение их на экран и перемножение, сделанное через класс. Функции mult1 и mult2 умножают и выводят сразу на экран. Как сделать, чтобы оно возвращало параметр, а...
C++ Вычислить выражение X-ввести подробнее

Показать сообщение отдельно
bubliq
0 / 0 / 0
Регистрация: 10.03.2013
Сообщений: 18

тем кто шарит в сортировках массивах - C++

10.03.2013, 22:08. Просмотров 305. Ответов 6
Метки (Все метки)

Вобщем сама сортировка есть, но нужно еще куда то влепить счетчик сравнений (тот, что сейчас стоит srav1 не правильно считает)
Код
// moiproject.cpp: определяет точку входа для консольного приложения.
//

#include "stdafx.h"
#include "iostream"
#include "conio.h"
#include "iostream"
#include <time.h>

using namespace std;
int mas[100][100];
int i,j,k,n,m,l;
int arr[100][100];
int srav1=0;
int per1=0;
int Sum ( int N )
{
	int d, sum = 0;
	while ( N != 0 )
	{
		d = N % 10;
		sum = sum + d;
		N = N / 10;
	}
	return abs(sum);
}

int _tmain(int argc, _TCHAR* argv[])

{
setlocale(LC_CTYPE,"Russian");
cout<< ("Введите количество строк:\n");
	scanf("%4i",&m);//кол-во строк
	cout<< ("Введите количество столбцов:\n");
	scanf("%4i",&n);// кол-во столбцов
	
	 srand(time(0));
	 for (i=0; i<m; i++) 
	{
		for (j=0; j<n; j++)
		{

			mas[i][j]=rand()%99-50; 
			
		}
	}
	 //Заполняем массив arr данными из mas
	for (int i=0; i<m; i++)
	{
		for (int j=0; j<n; j++)
		{
			arr[i][j]=mas[i][j];
		}
	}

  for (int i=0; i<m; i++)
	{
		for (int j=0; j<n; j++)
		{
			printf("%4i", arr[i][j]);
		}
		cout<<"\n";
	}
	cout<<"\n";
   printf("_____________________________\n");
	for (int j=0 ; j<n; j++)
		{
	for (int k=0 ; k<m; k++)
        {
          for (int i=m-1; i>=k; i--)   
			{
				if (Sum(arr[i][j])<(Sum(arr[i+1][j])))
				{
					int temp=arr[i][j];
					arr[i][j]=arr[i+1][j];
					arr[i+1][j]=temp;
					per1++;
					
				}
             srav1++;
		  }
	}
	}
		cout<<"\nМассив, отсортированный пузырьковым методом\n\n";
	for (int i=0; i<m; i++)
	{
		for (int j=0; j<n; j++)
		{
			printf("%4i", arr[i][j]);
		}
		cout<<"\n";
	}
	cout<<"\n";
	printf("Перестановок - ");
	printf("%i\n",per1);
	printf("Сравнений- ");
	printf("%i\n",srav1);
system("pause");
	}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru