2 / 2 / 1
Регистрация: 05.11.2016
Сообщений: 61
1

Ошибка при работе с массивами

29.08.2017, 21:29. Показов 2014. Ответов 3

Здравствуйте. Хочу сделать программу, которая сортирует цифры. Вот код:
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
#include <iostream>
 
using namespace std;
 
int main()
{
     int arr[10];
     for(int i = 0;i <= 10;i++)
     {
            cin >> arr[i];
     }
 
     for(int i = 0;i <= 10;i++)
     {
            for(int i = 0;i <= 10;i++)
            {
                  if(arr[i] > arr[i+1])
                  {
                        int temp = arr[i+1];
                        arr[i+1] = arr[i];
                        arr[i] = temp;
                  }
            }
     }
 
     for(int i = 0;i <= 10;i++)
     {
            cout << arr[i] < endl;
     }
     return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.08.2017, 21:29
Ответы с готовыми решениями:

Ошибка при работе с массивами char
Задание: написать функцию для сложения целых двоичных чисел. Слагаемые должны иметь тип unsigned...

Ошибка с памятью при работе с двумерными массивами.
{ int i, j, c, kol; n=StrToInt(Edit1-&gt;Text); m=StrToInt(Edit2-&gt;Text); for(i=0; i&lt;n; i++) { ...

Ошибка в перегрузке оператора - при работе с массивами
Текст программы: #include &lt;iostream&gt; #include &lt;windows.h&gt; using namespace std; class array ...

Ошибка в работе в цикле с динамическими массивами
Здравствуйте! После ввода 5 значения вылетает ошибка о невозможности чтения...

3
Каждому свое
533 / 219 / 81
Регистрация: 05.08.2013
Сообщений: 1,614
29.08.2017, 21:36 2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
...
bool fl = true;
while( fl )
{
    fl = false;
    for( int i = 0; i < 10 - 1; i++ )
    {
        if( arr[i] > arr[i + 1] )
        {
            int temp = arr[i];
            arr[i] = arr[i + 1];
            arr[i + 1] = temp;
            fl = true;
        }
    }
}
...
0
192 / 166 / 82
Регистрация: 01.07.2016
Сообщений: 942
29.08.2017, 22:10 3
Лучший ответ Сообщение было отмечено Pr0-grammer как решение

Решение

Вы во втором цикле используете ту же переменную что и в первом цикле
Цитата Сообщение от Pr0-grammer Посмотреть сообщение
C++
1
2
3
4
for(int i = 0;i <= 10;i++)
* * *{
* * * * * * for(int i = 0;i <= 10;i++)
* * * * * * {
Сделайте так:
C++
1
2
3
4
for(int i = 0;i < 10;i++)
* * *{
* * * * * * for(int j = 0;j < 10;j++)
* * * * * * {
И ещё, нужен знак строго меньше а не меньше либо равно
0
2 / 2 / 1
Регистрация: 05.11.2016
Сообщений: 61
29.08.2017, 22:12  [ТС] 4
Понятно, спасибо!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.08.2017, 22:12
Помогаю со студенческими работами здесь

Использование показателей при работе с массивами
n натуральное, a1,...,an действительные числа. Найти : a1a2n+a2a2n-1+...+anan+1

Использование показателей при работе с массивами
Даны a1,...,an действительные числа, n* натуральное число. Если в этой последовательности...

Проблемма при работе с массивами структур
Разработать программу , позволяющую добавлять данные структур с указанными полями в массив,...

Использование указателей при работе с одномерными массивами
Реализовать на Си. Даны натуральное число n, действительные числа a1,...,an. Если...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru