Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Sverhrazum22
7 / 7 / 0
Регистрация: 13.02.2017
Сообщений: 97
1

Разработать функцию сортировки одномерного массива 10 целых чисел

02.07.2017, 13:08. Просмотров 473. Ответов 23

Разработать функцию сортировки одномерного массива 10 целых чисел,случайно заполненного в диапазоне от -10 до +10. Сортировка любая, без динамического выделения памяти.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.07.2017, 13:08
Ответы с готовыми решениями:

Разработать приложение для сортировки введенного одномерного массива действ. чисел
Вводится: размер массива, значения элементов массива. Выводится: введенный...

Сортировка одномерного массива целых чисел по возрастанию методом быстрой сортировки
Написать программу для сортировки одномерного массива целых чисел по...

Разработать программу сортировки одномерного массива по возрастанию/убыванию
Разработать программу сортировки одномерного массива по возрастанию/убыванию....

Сортировки массива целых чисел
Необходимо написать программы сортировок массива(с подсчетом количества...

Ввод одномерного массива из N целых чисел
Задание: Моя реализация: long n1; m1:cout<<"Vvedite n:"<<endl;...

23
afront
1050 / 997 / 752
Регистрация: 29.02.2016
Сообщений: 3,187
02.07.2017, 13:28 2
сверх разум должен уметь хотя бы поиском пользоваться
Алгоритмы сортировок
0
RunningMan
02.07.2017, 13:37
  #3

Не по теме:

Цитата Сообщение от afront Посмотреть сообщение
сверх разум должен уметь хотя бы поиском пользоваться
afront, сверх разум выше всего этого )

0
SlavaSokolov
170 / 134 / 105
Регистрация: 14.04.2016
Сообщений: 735
02.07.2017, 13:38 4
От рака в C++

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
47
48
49
50
51
52
53
54
55
56
57
#include <iostream>
#include <Windows.h>
#include <fstream>
#include <clocale>
 
void sort(int *array, int size);
 
int main() {
 
    setlocale(LC_CTYPE, "rus");
 
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    const int size = 10;
 
    int array[10];
 
    for (int i = 0; i < size; i++) {
        array[i] = -90 + rand() % 10;
    }
 
 
    std::cout << "Array is created:" << std::endl;
    
    for (int i = 0; i < size; i++) {
        std::cout << array[i] << " ";
    }
 
    std::cout << std::endl;
 
    sort(array, size);
 
    std::cout << "Array is sort:" << std::endl;
 
    for (int i = 0; i < size; i++) {
        std::cout << array[i] << " ";
    }
 
    std::cin.get();
 
}
 
void sort(int *array, int size) {
 
    for (int i = 0; i < size; i++) {
 
        for (int x = i; x < size; x++) {
 
            if (array[i] < array[x]) {
                int buffer = array[i];
                array[i] = array[x];
                array[x] = buffer;
            }
        }
    }
}
0
afront
1050 / 997 / 752
Регистрация: 29.02.2016
Сообщений: 3,187
02.07.2017, 13:48 5
Цитата Сообщение от RunningMan Посмотреть сообщение
сверх разум выше всего этого
тогда зачем ему сортировка
0
RunningMan
02.07.2017, 13:55
  #6

Не по теме:

Цитата Сообщение от afront Посмотреть сообщение
тогда зачем ему сортировка
Ну как зачем? Его корни питаются такими падшими душами, как мы,
блуждающими во мраке в поисках сортировок.

0
Sverhrazum22
7 / 7 / 0
Регистрация: 13.02.2017
Сообщений: 97
02.07.2017, 14:03  [ТС] 7
SlavaSokolov, мне нужно функцию определить в другом сpp, но тогда не находится sort
0
SlavaSokolov
170 / 134 / 105
Регистрация: 14.04.2016
Сообщений: 735
02.07.2017, 14:19 8
Цитата Сообщение от Sverhrazum22 Посмотреть сообщение
SlavaSokolov, мне нужно функцию определить в другом сpp, но тогда не находится sort
Как в cpp я не знаю, но в .h вот так вроде.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
//Sort.h
#ifndef SORT_H_
#define SORT_H_
void sort(int *array, int size) {
 
    for (int i = 0; i < size; i++) {
 
        for (int x = i; x < size; x++) {
 
            if (array[i] < array[x]) {
                int buffer = array[i];
                array[i] = array[x];
                array[x] = buffer;
            }
        }
    }
}
#endif
Ещё раз напомню, что я плюсах ДУРАК)))
0
GeFacle
Рэмбо комнатный
95 / 95 / 99
Регистрация: 05.03.2017
Сообщений: 505
Завершенные тесты: 4
02.07.2017, 14:42 9
Цитата Сообщение от SlavaSokolov Посмотреть сообщение
Как в cpp я не знаю, но в .h вот так вроде.
*.h
C++
1
void sort(int *array, int size);
*.cpp
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include "*.h"
void sort(int *array, int size) {
 
    for (int i = 0; i < size; i++) {
 
        for (int x = i; x < size; x++) {
 
            if (array[i] < array[x]) {
                int buffer = array[i];
                array[i] = array[x];
                array[x] = buffer;
            }
        }
    }
}
0
Sverhrazum22
7 / 7 / 0
Регистрация: 13.02.2017
Сообщений: 97
02.07.2017, 16:14  [ТС] 10
SlavaSokolov, а можете глянуть задачу с двумерным массивом? у меня там проблемы с передачей двумерного массива в функцию
0
GeFacle
Рэмбо комнатный
95 / 95 / 99
Регистрация: 05.03.2017
Сообщений: 505
Завершенные тесты: 4
02.07.2017, 16:20 11
Sverhrazum22,
C++
1
void name(int **arr, int lines, int colomns);
так передается динамический двумерный массив в функцию
C++
1
void name(int arr[][100], int lines, int colomns);
а так статический
0
Sverhrazum22
7 / 7 / 0
Регистрация: 13.02.2017
Сообщений: 97
02.07.2017, 16:26  [ТС] 12
GeFacle, или Вы,пожалуйста,загляните,а то уж очень надо сделать это)))

Добавлено через 44 секунды
GeFacle, у меня проблема с вызовом

Добавлено через 2 минуты
GeFacle, а как вызвать потом

Добавлено через 2 минуты
GeFacle,
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
int Sum(int ar[][100], int n, int m) {
    int Sum = 0;
    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < m; ++j) {
            Sum += ar[i][j];
        }
    }
    return Sum;
}
 
const int n = 5;
const int m = 5;
 
int ar[n][m];
srand(time(0));
 
for (int i = 0; i < n; ++i) {
    for (int j = 0; j < m; ++j) {
         ar[i][j]=rand()%21-10;
         cout << ar[i][j]<<endl;
    }
}
 
 
cout<<Sum(ar, n, m);
вот где ошибка???
0
GeFacle
Рэмбо комнатный
95 / 95 / 99
Регистрация: 05.03.2017
Сообщений: 505
Завершенные тесты: 4
02.07.2017, 16:26 13
Sverhrazum22, name(arr,n,m);
что сделать надо?
0
Sverhrazum22
7 / 7 / 0
Регистрация: 13.02.2017
Сообщений: 97
02.07.2017, 16:28  [ТС] 14
GeFacle, написать функцию сложения всех элементов двумерного массива, а потом ее вызвать соответственно и вывести на экран эту сумму
0
GeFacle
Рэмбо комнатный
95 / 95 / 99
Регистрация: 05.03.2017
Сообщений: 505
Завершенные тесты: 4
02.07.2017, 16:31 15
советую вообще через динамические массивы делать и не морочить голову, ибо я сам на этом "обделался"
делай так
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
#include <iostream>
 
using namespace std;
 
void Init(int **arr, int n, int m)
{
for (int i=0;i<n;i++)
     arr[i]=new int[m];
 
for (int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{ 
arr[i][j]=rand()%21-10;
}
}
}
 
void Print(int **arr, int n, int m)
{
for (int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{ 
cout << arr[i][j] << " ";
}
cout << endl;
}
}
 
void Free(int **arr, int n)
{
for (int i=0;i<n;i++)
     delete[] arr[i];
delete[] arr;
}
 
int main()
{
int n,m; cin >> n >> m;
int **arr=new int*[n];
Init(arr,n,m); Print(arr,n,m);
Free(arr,n);
return 0;
}
0
Sverhrazum22
7 / 7 / 0
Регистрация: 13.02.2017
Сообщений: 97
02.07.2017, 16:32  [ТС] 16
GeFacle, все ворк,потому что автор резко достал мозги из жопы. спасибО!!!!!есть еще такая проблема:все функции должны быть определены в другом спп,а вызваны в спп с мэйн, но с void-функциями проблема, там выдается какая-то непонятная ошибка. вы можете описать механизм,по которому мне следует действовать?
0
GeFacle
Рэмбо комнатный
95 / 95 / 99
Регистрация: 05.03.2017
Сообщений: 505
Завершенные тесты: 4
02.07.2017, 16:34 17
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int Summ(int **arr, int n, int m)
{
int summ=0;
for (int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{ 
summ+=arr[i][j];
}
}
return summ;
}
/////////////////
cout << Summ(arr,n,m);
Добавлено через 1 минуту
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int Summ(int **arr, int n, int m)
{
int summ=0;
for (int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{ 
summ+=arr[i][j];
}
}
return summ;
}
//////////////////
cout << Summ(arr,n,m);
0
Sverhrazum22
7 / 7 / 0
Регистрация: 13.02.2017
Сообщений: 97
02.07.2017, 16:36  [ТС] 18
GeFacle, спасибо! но объясните,пожалуйста,по поводу этой проблемы с void
0
GeFacle
Рэмбо комнатный
95 / 95 / 99
Регистрация: 05.03.2017
Сообщений: 505
Завершенные тесты: 4
02.07.2017, 16:39 19
какой механизм?
берешь делаешь заголовочный файл, пусть будет
File.h и пихаешь в него все прототипы
C++
1
2
3
4
void Init(int **arr, int n, int m);
void Print(int **arr, int n, int m);
int Summ(int **arr, int n, int m);
void Free(int **arr, int n);
и делаешь файл cpp
File.cpp
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
#include "File.h"
void Init(int **arr, int n, int m)
{
for (int i=0;i<n;i++)
     arr[i]=new int[m];
 
for (int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{ 
arr[i][j]=rand()%21-10;
}
}
}
void Print(int **arr, int n, int m)
{
for (int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{ 
cout << arr[i][j] << " ";
}
cout << endl;
}
}
void Free(int **arr, int n)
{
for (int i=0;i<n;i++)
     delete[] arr[i];
delete[] arr;
}
int Summ(int **arr, int n, int m)
{
int summ=0;
for (int i=0;i<n;i++)
{
for (int j=0;j<m;j++)
{ 
summ+=arr[i][j];
}
}
return summ;
}
а в главном cpp просто подключаете файл.h вот так
C++
1
#include "File.h"
0
Sverhrazum22
7 / 7 / 0
Регистрация: 13.02.2017
Сообщений: 97
02.07.2017, 16:58  [ТС] 20
GeFacle, у меня так сделано

Добавлено через 1 минуту
GeFacle, и именно на void-функциях проблема. т.е. если они подключеный в др спп, то в мэйне студия их не находит

Добавлено через 13 минут
GeFacle,
'Triangle': identifier not found вот такая ошибка. у меня изначально все было подключено так,как вы говорите

Добавлено через 2 минуты
GeFacle, Triangle(x, y, z, s, h1, h2, h3);
- вот так вызываю функцию. с функциями типа дабл, инт и чар все ок,а вот с войдом нет
0
02.07.2017, 16:58
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.07.2017, 16:58

Разработать функцию, которая находит НОК двух целых чисел.
Разработать функцию, которая находит НОК двух целых чисел.

Разработать функцию, которая находит НОД двух целых чисел.
Разработать функцию, которая находит НОД двух целых чисел.

Разработать функцию, которая находит НОК трех целых чисел.
Разработать функцию, которая находит НОК трех целых чисел.


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

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

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