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

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

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

Народ подскажите де ошибка пожалуста! Немогу разобратса((( - C++

25.11.2010, 14:59. Просмотров 342. Ответов 5
Метки нет (Все метки)

Создать функцию, любым методом упорядочивает целочисленных массив. Входящие
параметры - указатель на первый элемент, а также размерность массива; результат -
упорядоченный по возрастанию входной массив.
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
#include <iostream.h>
#include <algorithm> // for std::swap
void gnomeSort( int *array, int size )
   {
   for ( int i = 1; i < size; ) {
     if ( array[i-1] <= array[i] ) {
       ++i;
     }
     else {
       std::swap( array[i-1], array[i] );
       --i;
       if ( i == 0 ) {
         i = 1;
       }
     }
   }
}
int main(int argc, char* argv[])
{
   
 
 
 
 
 
 
        getch();
        return 0;
}
Незнаю как дальше делать((подскажите ребята!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.11.2010, 14:59
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Народ подскажите де ошибка пожалуста! Немогу разобратса((( (C++):

Циклы, подскажите пожалуста - C++
По условию задачи нужно вычислить выражение, при вводе необходимых данных с клавиатуры. Задача выглядит следующим образом Дан корень, по...

Подскажите как правильно сделать ! пожалуста с обяснением ! - C++
Задан двумерный массив N x M. Найти в нем подмассив 3 х 3, сумма элементов которого максимальна. N и M могут быть не кратны трем

Народ гляньте код и подскажите что не так. - C++
Условие: Написать функцию, которая округляет любое вещественное число до определённого количества знаков с математической точностью. ...

Народ подскажите, чета я забыл DLL как экспортировать - C++
Вот например есть в DLL код функции: void OpenAbout(HINSTANCE hInst, int cmdMode, HWND hWnds) { .... return; }

Есть ошибка з циклом(посмотрите пожалуста) - C++
Разработать функцию разбора заданной текстовой строки (задается параметром командной строки ), содержащий произвольную последовательность...

Немогу понять в чем ошибка. - C++
// lab5OOP.cpp : Defines the entry point for the console application. // #include &quot;stdafx.h&quot; #include &lt;math.h&gt; #include...

5
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
25.11.2010, 15:07 #2
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
#include <iostream.h>
#include <algorithm> // for std::swap
void gnomeSort( int *array, int size )
   {
   for ( int i = 1; i < size; ) {
     if ( array[i-1] <= array[i] ) {
       ++i;
     }
     else {
       std::swap( array[i-1], array[i] );
       --i;
       if ( i == 0 ) {
         i = 1;
       }
     }
   }
}
int main(int argc, char* argv[])
{
     int* Arr;
     int n;
     std::cout<<"Enter n: ";
     std::cin>>n;
     Arr=new int[n];
     for(int i=0; i<n; ++i)
        std::cin>>Arr[i];
     gnomeSort(Arr, n);
     for(int i=0; i<n; ++i)
         std::cout<<Arr[i]<<' ';
     std::cout<<'\n';
     delete[] Arr; 
     std::cin.get();
     return 0;
}
1
IchMors
97 / 93 / 4
Регистрация: 16.05.2010
Сообщений: 310
25.11.2010, 15:08 #3
MoLoTVaDiM, наверное в условии
Цитата Сообщение от MoLoTVaDiM Посмотреть сообщение
for ( int i = 1; i < size; ) {
нужно написать
C++
1
for ( int i = 1; i < size + 1; )
а то последний элемент не пройдет
1
ForEveR
В астрале
Эксперт С++
7978 / 4737 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
25.11.2010, 15:10 #4
IchMors, проходит и последний.
А вот с size+1 пойдет выход за пределы.
2
IchMors
97 / 93 / 4
Регистрация: 16.05.2010
Сообщений: 310
25.11.2010, 15:16 #5
ForEveR, каким образом? сравнение происходит текущего элемента с предыдущим:
Цитата Сообщение от MoLoTVaDiM Посмотреть сообщение
if ( array[i-1] <= array[i] ) {
и при размерности массива, допустим в 9 элементов, максимальное значение і будет 8.
Если я не прав пожалуйста опишите

Добавлено через 2 минуты
признаюсь, не прав. забыл что при размерности индексирование последнего будет на 1 меньше
0
MoLoTVaDiM
1 / 1 / 0
Регистрация: 15.11.2010
Сообщений: 29
25.11.2010, 19:36  [ТС] #6
Спасибо большое!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.11.2010, 19:36
Привет! Вот еще темы с ответами:

Немогу понять в чем ошибка ( - C++
#include &lt;iostream&gt; #include &lt;math.h&gt; #include &lt;conio.h&gt; using namespace std; int main() { float x, f1, f2,...

Немогу понять в чем ошибка. - C++
Часть кода(проект в WinAPI): #include &quot;stdafx.h&quot; #include &quot;List.h&quot; #include &quot;Theatr.h&quot; #include &quot;Actor.h&quot; void inputTheatrs(...

Немогу понять почему в программе выкидует ошибка - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; #include &lt;math.h&gt; # include &lt;clocale&gt; #include &lt;conio.h&gt; using namespace std; void main...

немогу никак понять в чем ошибка=(помогите плиз! - C++
есть вот такой вот код : #include &lt;iostream.h&gt; #include &lt;math.h&gt; void main(void) { int...


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

Или воспользуйтесь поиском по форуму:
6
Yandex
Объявления
25.11.2010, 19:36
Ответ Создать тему
Опции темы

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