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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
pina4et
0 / 0 / 0
Регистрация: 04.02.2010
Сообщений: 38
#1

Сделать массив упорядоченым... - C++

11.02.2010, 00:37. Просмотров 329. Ответов 5
Метки нет (Все метки)

Дан массив размера N, все элементы которого, кроме первого, упорядочены по возростанию. Сделать массив упорядоченым, переместив первый элемент на новую позицию. Задача на С
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.02.2010, 00:37     Сделать массив упорядоченым...
Посмотрите здесь:

Есть массив одинаковых элементов, сделать функцию делающую массив различных - C++
Дан одномерный массив, среди элементов которого есть совпадающие. Разработать функцию, создающую массив из различных элементов.

Файлы и массив (сделать так, чтобы массив заполнялся значениями из этого же файла) - C++
Здравствуйте.Помогите пожалуйста с задачкой.Я сделал так что бы массив выводился в файл.Каждый элемент массива выводится на новую строку в...

Дан массив из прототипов функций или указателей на функцию, сделать функцию, возвращающую этот массив - C++
Не охота создавать лишнею тему извиняюсь заранее Вопрос такой Можете подсказать есть массив из прототипов функций или...

из строки сделать массив - C++
Как можно мою строку превратить в массив символов и работать с ней дальше? void main() { int i.m; char a = 12234; // как из нее...

Сделать массив расширяемым - C++
Никак не получается сделать динамический массив расширяемым , помогите пожалуйста, где,что не так? #include<iostream> using namespace...

Как сделать двумерный массив - C++
Доброго времени суток. Допустим с клавиатуры вводятся 25 значений. Как их записать в двумерный массив(чтоб матрица образовалась?. Помогите...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
лендер
46 / 46 / 2
Регистрация: 12.01.2010
Сообщений: 183
11.02.2010, 01:19     Сделать массив упорядоченым... #2
походу те его просто отсортировать нада
вот методом пузырька:

C
1
2
3
4
5
6
7
8
9
10
11
12
13
const N=10;
int a[N]={4,1,2,3,5,6,7,8,9},i,c,is;
do {
  is=0;
  for(i=1;i<N;i++)
   if(a[i-1]>a[i])
   {
    c=a[i];
    a[i]=a[i-1];
    a[i-1]=c;
    is=1;
   };
} while(is);
осталось только роспечатать, там типа 1 2 3 .... будет.
код не отлажен, могут быть синтаксические ошибки...
rangerx
1932 / 1541 / 141
Регистрация: 31.05.2009
Сообщений: 2,911
11.02.2010, 01:28     Сделать массив упорядоченым... #3
Дан массив размера N, все элементы которого, кроме первого, упорядочены по возростанию. Сделать массив упорядоченым, переместив первый элемент на новую позицию.
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
#include <stdio.h>
 
#define N 5
 
void swap(int* a, int* b)
{
    int temp = *a;
    *a = *b;
    *b = temp;
}
 
int main()
{
    int index = 0;
    int array[N] = {5,2,4,7,8};
 
    while(array[index] > array[index+1] && index < N-1)
    {
        swap(&array[index], &array[index+1]);
        ++index;
    }
 
    for(index = 0; index < N; ++index)
        printf("%d ", array[index]);
 
    return 0;
}
novi4ok
551 / 504 / 8
Регистрация: 23.07.2009
Сообщений: 2,359
Записей в блоге: 1
11.02.2010, 01:29     Сделать массив упорядоченым... #4
массив УЖЕ ОТСОРТИРОВАН. просто если первый элемент не на месте, то нужно его сохранить, найти его место, сдвинуть все которые меньше его на один влево, потом первый вписать "освободившееся" место. без "пузырьков" на этот раз
valeriikozlov
Эксперт C++
4669 / 2495 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
11.02.2010, 07:34     Сделать массив упорядоченым... #5
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
int main(){
    const int n=10;
    int mas[n]={4, 0, 1, 2, 3, 5, 6, 7, 8, 9}, i, i_st, temp;
    i_st=n-1;
    for(i=1; i_st==n-1 && i<n; i++ )
        if(mas[i]>mas[0])
            i_st=i-1;
    temp=mas[0];
    for(i=0; i<i_st; i++)
        mas[i]=mas[i+1];
    mas[i_st]=temp;
    for(i=0; i<n; i++)
        printf("%d ", mas[i]);
    printf("\n");  
  return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.02.2010, 11:04     Сделать массив упорядоченым...
Еще ссылки по теме:

Как сделать массив классов? - C++
Привет, помогите разобраться, что здесь не так, в чём ошибка? Можно ли делать массив классов, и можно ли пример его роботы, буду...

Как сделать указатель на массив - C++
Здрасти. Как мне сделать указатель на массив: string stud= {{&quot;49000&quot;, &quot;Eddy&quot;, &quot;Vedder&quot;, &quot;dzienne&quot;, &quot;19&quot;}, {&quot;49001&quot;, &quot;Roger&quot;,...

Как массив сделать динамическим? - C++
нужно массив char street сделать динамическим.помогите пожалуйста( #include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include...

Сделать одномерный массив с использованием указателей - C++
Найти наибольший элемент каждой пары из массива А и записать их в новый массив


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
лендер
46 / 46 / 2
Регистрация: 12.01.2010
Сообщений: 183
11.02.2010, 11:04     Сделать массив упорядоченым... #6
Тогда тебе подойдет часть пузырькового рортичования. Какраз под описание задачи:[C]
C
1
2
3
4
5
6
7
8
9
10
11
12
13
const N=10;
int a[N]={4,1,2,3,5,6,7,8,9},i,c;
 
  for(i=1;i<N;i++)
   if(a[i-1]>a[i])
   {
    c=a[i];
    a[i]=a[i-1];
    a[i-1]=c;
    is=1;
   };
   else
     break;
Yandex
Объявления
11.02.2010, 11:04     Сделать массив упорядоченым...
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru