Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.03.2014, 15:57   #1
NastyaShuvalova
Пользователь
 
Регистрация: 16.12.2013
Сообщений: 21
Восклицание Число перемещений

Я написала код программы ("пузырьковая" сортировка). Помогите, пожалуйста, посчитать и вывести на экран число перемещений элементов. Заранее большое спасибо!

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int n, buf;
Console.WriteLine("Исходный массив:");
Console.Write("Длина массива = ");
n = int.Parse(Console.ReadLine());
int[] a = new int[n];
for (int i = 0; i < n; i++)
{
Console.Write("а[{0}] = ", i);
a[i] = int.Parse(Console.ReadLine());
}
for (int k = n - 1; k > 0; k--)
for (int i = 0; i < k; i++)
if (a[i] > a[i + 1])
{
buf = a[i];
a[i] = a[i + 1];
a[i + 1] = buf;
}
Console.WriteLine();
Console.WriteLine("Отсортированный массив:");
for (int i = 0; i < n; i++)
Console.Write("a[{0}] = {1}\n", i, a[i]);
Console.ReadKey();
}
}
}
NastyaShuvalova вне форума Ответить с цитированием
Старый 12.03.2014, 16:05   #2
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,899
По умолчанию

А просеивание где ? И почему в новой теме, если есть старая ?
Число перестановок можно считать в момент перестановок.
А имеено вот здесь
Код:
 buf = a[i];
 a[i] = a[i + 1];
 a[i + 1] = buf;
увеличивать счётчик, который надо создать в начале функции main, что-то типа int count = 0; а потом вывести его значение после отсортированного массива.
Я так и делаю в программе, что выложил в той теме, у меня даже есть её консольный вариант - выводит массивы отсортированные 2 способами (с просеиванием и без) и время работы, ну и кол-во перестановок, которые для обоих вариантов сортировки на одинаковом исходном массиве дают одинаковое число перестановок.

Последний раз редактировалось phomm; 12.03.2014 в 16:08.
phomm вне форума Ответить с цитированием
Старый 12.03.2014, 17:32   #3
NastyaShuvalova
Пользователь
 
Регистрация: 16.12.2013
Сообщений: 21
По умолчанию

Дело в том, что мой компьютер не хочет открывать то, что Вы мне прислали. Не могли бы Вы мне просто скопированный код прислать в ответе. Буду очень признательна!
NastyaShuvalova вне форума Ответить с цитированием
Старый 12.03.2014, 17:42   #4
NastyaShuvalova
Пользователь
 
Регистрация: 16.12.2013
Сообщений: 21
По умолчанию

Спасибо большое! Благодаря Вам я все поняла! Спасибооооо!!!!!
NastyaShuvalova вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дано трехзначное число. Если в сумме его цифр присутствует число 7,то число записать в зеркальном виде ( Паскаль ) Эля777 Помощь студентам 5 22.04.2013 23:23
Написать программу, которая за меньшее число ходов отгадывает загаданное число gomz007 Помощь студентам 16 08.11.2009 12:57
Поиск предельно допустимых перемещений объекта вдоль заданного вектора с учетом положения других объектов stюdent Помощь студентам 1 23.12.2008 19:45
Вывести число, предшествующее первому отрицательному и число, следующее за последним отрицательным Rid Паскаль, Turbo Pascal, PascalABC.NET 4 22.12.2008 16:50
Ввести число N и определить делится ли оно без остатка на число M (VBA) Ivanich Microsoft Office Excel 7 24.04.2008 19:43