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

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

Войти
Регистрация
Восстановить пароль
 
Ihor3
3 / 3 / 1
Регистрация: 14.11.2012
Сообщений: 235
#1

Ошибка в Функции - C++

13.04.2013, 11:38. Просмотров 381. Ответов 11
Метки нет (Все метки)

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
#include <iostream.h>
#include <stdlib.h>
#include <conio.h>
#include <iomanip.h>
 
 
  bubbleSort(int , const int);
 
   main()
   {
   const int arraySize=10;
   int a[arraySize] = {1, 2, 4 , 6, 9, 1, 2, 3, 4, 65};
       cout << "elmentu v ishodnom poradku " <<endl;
 
     for (int i=0; i<arraySize ; i++)
     cout <<setw(5) <<a[i];
         cout <<endl;
 
       bubbleSort (a, arraySize);
     cout <<endl << "elementu v vozrost poriadku ";
       cout <<endl;
          for (int i=0; i<arraySize; i++)
             cout << setw(5)<<a[i];
          cout <<endl;
     return 0;
 }
 
 
  void bubbleSort(int  *array,  const int size)
   {
     void swap(int  ,  int );
 
             for( int pass=0; pass<size; pass++)
                for( int j=0; j<size-1; j++)
 
          if (array[j]>array[j+1])
        swap( &array[j], &array[j+1]);
 
   }
 
   void swap(int *element1Ptr, int  *element2Ptr)
   {
   int temp = *element1Ptr;
   *element1Ptr =  *element2Ptr;
   *element2Ptr = temp;
   }
помогите плз исправить
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.04.2013, 11:38
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ошибка в Функции (C++):

А почему ошибка, что функции print и read не определены в функции main()? - C++
Что-то не понимаю. Они определены в заголовочном файле. А подчеркивается красным что нет.... #include &lt;iostream&gt; #include...

Ошибка в шаблоне функции: "Отсутствуют экземпляры шаблон функции, соответствующие списку аргументов" - C++
#include &lt;iostream&gt; #include &lt;iterator&gt; #include &lt;map&gt; #include &lt;Windows.h&gt; #include &lt;functional&gt; #include &lt;string&gt; #include...

Ошибка в функции - C++
Вот упражнение : Напишите программу, использующую структуру sterling, которая описана в упражнении 10 главы 4. Программа должна получать...

Ошибка в функции - C++
Привожу код: // создаёт новую строку, добавляя текущую // строку к rhs String String::operator+(const Srting&amp; rhs) { unsigned...

Ошибка в функции - C++
Вот программа проблема с функцией &quot;ras&quot; не правильно работает надо вернуть значения vi,vj,v. #include &lt;stdio.h&gt; #include &lt;conio.h&gt; ...

Ошибка в функции - C++
#include &quot;stdafx.h&quot; #include &lt;iostream&gt; using namespace std; int main() { const int a = 2, b = 4, c = 5; ...

11
Croessmah
Ушел
Эксперт CЭксперт С++
13565 / 7716 / 873
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
13.04.2013, 11:57 #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
35
36
37
38
39
 void bubbleSort(int *, const int);
 int  main()
   {
   const int arraySize=10;
   int a[arraySize] = {1, 2, 4 , 6, 9, 1, 2, 3, 4, 65};
       cout << "elmentu v ishodnom poradku " <<endl;
 
     for (int i=0; i<arraySize ; i++)
     cout <<setw(5) <<a[i];
         cout <<endl;
 
       bubbleSort (a, arraySize);
     cout <<endl << "elementu v vozrost poriadku ";
       cout <<endl;
          for (int i=0; i<arraySize; i++)
             cout << setw(5)<<a[i];
          cout <<endl;
     return 0;
 }
 
 
  void bubbleSort(int  *array,  const int size)
   {
     void swap(int * ,  int *);
 
             for( int pass=0; pass<size; pass++)
                for( int j=0; j<size-1; j++)
 
          if (array[j]>array[j+1])
        swap( &array[j], &array[j+1]);
 
   }
 
   void swap(int *element1Ptr, int  *element2Ptr)
   {
   int temp = *element1Ptr;
   *element1Ptr =  *element2Ptr;
   *element2Ptr = temp;
   }
1
Ihor3
3 / 3 / 1
Регистрация: 14.11.2012
Сообщений: 235
13.04.2013, 12:10  [ТС] #3
Спасибо, прочитал, что функцыю bubbleSort можно использовать только в одномерном массиве, а как быть с двомерным массивом?
0
Croessmah
Ушел
Эксперт CЭксперт С++
13565 / 7716 / 873
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
13.04.2013, 12:13 #4
Цитата Сообщение от Ihor3 Посмотреть сообщение
а как быть с двомерным массивом?
Ну тут уже сугубо от нужды. Сортировка одномерного массива - дело понятное, а двумерный можно отсортировать разными способами, поэтому под разные способы нужны будут разные функции
0
Ihor3
3 / 3 / 1
Регистрация: 14.11.2012
Сообщений: 235
13.04.2013, 12:25  [ТС] #5
тоесть будет какаята функцыя типа bubbleSort?
0
Croessmah
Ушел
Эксперт CЭксперт С++
13565 / 7716 / 873
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
13.04.2013, 12:27 #6
ага. Если двумерный массив выделен сплошняком, то можно его интерпретировать как одномерный и отсортировать, но опять же все зависит от конечной цели.
1
Ihor3
3 / 3 / 1
Регистрация: 14.11.2012
Сообщений: 235
13.04.2013, 12:33  [ТС] #7
допустим моя цель- отсортировать масив так, чтобы на мете [0][1][0] [2]...[n][n] елементы сортировалысь по увеличению
0
Croessmah
Ушел
Эксперт CЭксперт С++
13565 / 7716 / 873
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
13.04.2013, 12:43 #8
Поменял main:
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
 int  main()
   {
   const int arraySizeX=3;
    const int arraySizeY=10;
    int a[arraySizeX][arraySizeY] = {{1, 2, 24 , 62, 9, 31, 2, 34, 4, 65},
                                                {3, 5, 4 , 61, 7, 3, 21, 3, 7, 65},
                                                {9, 7, 42 , 68, 1, 9, 2, 3, 8, 65}
    };
       cout << "elmentu v ishodnom poradku " <<endl;
 
     for (int i=0; i<arraySizeX ; i++){
          for (int j=0; j<arraySizeY ; j++)
                cout <<setw(5) <<a[i][j];
          cout <<endl;
      }
     cout <<endl;
       bubbleSort (&a[0][0], arraySizeX*arraySizeY);//Передаем указатель на первый элемент и размер всего массива
     cout <<endl << "elementu v vozrost poriadku ";
       cout <<endl;
     for (int i=0; i<arraySizeX ; i++){
          for (int j=0; j<arraySizeY ; j++)
                cout <<setw(5) <<a[i][j];
          cout <<endl;
      }
     return 0;
 }
1
Ihor3
3 / 3 / 1
Регистрация: 14.11.2012
Сообщений: 235
13.04.2013, 12:55  [ТС] #9
C++
1
2
int n= -5, b=-9000;
   int a[arraySize] = n+rand()% (b-n+1) ;
не выходит задать массив случайными числами (
0
Croessmah
Ушел
Эксперт CЭксперт С++
13565 / 7716 / 873
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
13.04.2013, 13:01 #10
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 int  main()
   {
   const int arraySize=10;
   int a[arraySize] = {1, 2, 4 , 6, 9, 1, 2, 3, 4, 65};
    int n= -5, b=-9000;
       cout << "elmentu v ishodnom poradku " <<endl;
 
     for (int i=0; i<arraySize ; i++)
     cout <<setw(5) <<(a[i]=n+rand()% (b-n+1));
         cout <<endl;
 
       bubbleSort (a, arraySize);
     cout <<endl << "elementu v vozrost poriadku ";
       cout <<endl;
          for (int i=0; i<arraySize; i++)
             cout << setw(5)<<a[i];
          cout <<endl;
     return 0;
 }
Добавлено через 52 секунды
ну или так расписать цикл:
C++
1
2
3
4
     for (int i=0; i<arraySize ; i++){
          a[i]=n+rand()% (b-n+1);
        cout <<setw(5) <<a[i];
      }
1
Ihor3
3 / 3 / 1
Регистрация: 14.11.2012
Сообщений: 235
13.04.2013, 14:53  [ТС] #11
почемуто элементы все положительные , хотя диапазон задаю -5...-9000

Добавлено через 11 минут
опрос отпал нужно так
C++
1
(a[i]=n - rand()% (b-n+1))
0
Croessmah
Ушел
Эксперт CЭксперт С++
13565 / 7716 / 873
Регистрация: 27.09.2012
Сообщений: 18,996
Записей в блоге: 3
Завершенные тесты: 1
13.04.2013, 14:54 #12
Судя по формуле
C++
1
n+rand()% (b-n+1)
b - это верхняя граница, а
n - нижняя.
Только у Вас получается n=-5,а b=-9000, То есть
b<n (максимум меньше минимума), поэтому так и получается.

Вот так сделайте:
C++
1
int n= -9000, b=-5;
1
13.04.2013, 14:54
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.04.2013, 14:54
Привет! Вот еще темы с ответами:

Ошибка в функции - C++
#include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;Windows.h&gt; #include &lt;iomanip&gt; using namespace std; char bufUkr; char...

Ошибка в функции - C++
#include &quot;stdafx.h&quot; #include &quot;stdlib.h&quot; #include &quot;windows.h&quot; #include &quot;iostream&quot; #include &quot;math.h&quot; #include &quot;conio.h&quot; ...

Ошибка в функции - C++
Здравствуйте, уважаемые знатоки! Итак, ящик в студию! Внимательно прочитайте код и найдите ошибки идиота! #include &lt;iostream.h&gt; ...

ошибка в функции - C++
помогите найти ошибку. Надо найти определитель матрицы 2х2, #include &lt;iostream.h&gt; #include &lt;conio.h&gt; #include &lt;stdio.h&gt; ...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

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