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

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

Войти
Регистрация
Восстановить пароль
 
niikiita
3 / 3 / 0
Регистрация: 29.05.2013
Сообщений: 226
#1

Переместить элементы массива в обратном порядке, исправить ошибки в коде - C++

01.07.2014, 16:22. Просмотров 397. Ответов 10
Метки нет (Все метки)

Вот программа, массив заполняется от 0 до 9. Нужно переместить элементы массива в обратном порядке. Подскажите в чем ошибка?
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
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
int main()
{
    setlocale(LC_CTYPE, "Russian");
    int arr[10];
    int t; int t1 = 0; int i = 9; int j = 0;
    for (t = 0; t < 10; t++)
        arr[t] = t;
    cout << "Заполенный массив: ";
    while (t1 < 10) 
    {
        cout << arr[t1];
        t1++;
    }
    cout << endl;
    cout << "Зеркальный массив: ";      //0123456789
    do                                  //9876543210
    {
        
        swap(arr[j],arr[i]);
        i--;
        j++;
    } while (i > 0 && j < 10);
    while(i < 10)
    {
        cout << arr[i];
        i++;
    }
    cout << endl;
    system("Pause");
    return 0;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.07.2014, 16:22     Переместить элементы массива в обратном порядке, исправить ошибки в коде
Посмотрите здесь:

Переписать элементы массива в обратном порядке - C++
Переписать элементы массива А(n) в массив X(n)в обратном порядке. int main() { SetConsoleOutputCP(1251); const int k = 20; ...

Вывести элементы массива в обратном порядке. - C++
Скоро экзамен , кто чем может ) Помоги ближнему , ибо смех продлевает жизнь...) 13. Дан массив размера N. Вывести его элементы в...

Поместить элементы массива M в начало массива B в обратном порядке - C++
Поместить элементы массива M в начало массива B в обратном порядке, исключив элементы, превосходящие по абсолютной величине вводимое...

Переписать элементы массива X[N] в массив Y[N] в обратном порядке - C++
помогите:(

Элементы массива A разместить в обратном порядке в массиве B - C++
подскажите как это организовать

Переставить в обратном порядке элементы одномерного массива - C++
Переставить в обратном порядке элементы одномерного массива, расположенного до первого минимального элемента массива. На с++

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dzrkot
zzzZZZ...
519 / 349 / 53
Регистрация: 11.09.2013
Сообщений: 1,996
01.07.2014, 16:41     Переместить элементы массива в обратном порядке, исправить ошибки в коде #2
методом reverse проще))
смотреть даже не буду наверняка у вас в середине они начинают записывать друг друга заного
IrineK
Заблокирован
01.07.2014, 16:45     Переместить элементы массива в обратном порядке, исправить ошибки в коде #3
niikiita,
возьмите массив 0123 и сделайте ему swap по вашему методу.
На листике, вручную.
niikiita
3 / 3 / 0
Регистрация: 29.05.2013
Сообщений: 226
01.07.2014, 17:27  [ТС]     Переместить элементы массива в обратном порядке, исправить ошибки в коде #4
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 "stdafx.h"
#include <iostream>
 
using namespace std;
 
int main()
{
    setlocale(LC_CTYPE, "Russian");
    int arr[10];
    int t; int t1 = 0; int i = 9; int j = 0;
    for (t = 0; t < 10; t++)
        arr[t] = t;
    cout << "Заполенный массив: ";
    while (t1 < 10) 
    {
        cout << arr[t1];
        t1++;
    }
    cout << endl;
    cout << "Зеркальный массив: ";      
    for (int i  = 0; i < 5; i++)
        swap(arr[i], arr[10 - i - 1]);
    
    for (int i = 0; i < 10; i++)
  cout << arr[i];
    cout << endl;
    system("Pause");
    return 0;
}
Вроде сделал, такой вопрос:
как переделать
C++
1
for (int i  = 0; i < 5; i++)
в цикл do while? Никак не получается
JavaUser
70 / 70 / 15
Регистрация: 06.10.2013
Сообщений: 302
01.07.2014, 17:29     Переместить элементы массива в обратном порядке, исправить ошибки в коде #5
Цитата Сообщение от niikiita Посмотреть сообщение
в цикл do while? Никак не получается
do
{
действия....
}
while(i<5)
niikiita
3 / 3 / 0
Регистрация: 29.05.2013
Сообщений: 226
01.07.2014, 17:33  [ТС]     Переместить элементы массива в обратном порядке, исправить ошибки в коде #6
Цитата Сообщение от JavaUser Посмотреть сообщение
do
{
действия....
}
while(i<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
30
31
32
33
34
35
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
int main()
{
    setlocale(LC_CTYPE, "Russian");
    int arr[10];
    int t; int t1 = 0; int i = 9; int j = 0;
    for (t = 0; t < 10; t++)
        arr[t] = t;
    cout << "Заполенный массив: ";
    while (t1 < 10) 
    {
        cout << arr[t1];
        t1++;
    }
    cout << endl;
    cout << "Зеркальный массив: ";      
    /*for (int i  = 0; i < 5; i++)
        swap(arr[i], arr[10 - i - 1]);*/
    do                                  
    {
        int i = 0;
        swap(arr[i], arr[10 - i - 1]);
        i++;
    } while (i < 5);
    
    for (int i = 0; i < 10; i++)
  cout << arr[i];
    cout << endl;
    system("Pause");
    return 0;
}
Так? Не работает
Тамика
Котовчанин
870 / 450 / 143
Регистрация: 16.02.2010
Сообщений: 2,954
Записей в блоге: 27
01.07.2014, 17:34     Переместить элементы массива в обратном порядке, исправить ошибки в коде #7
Цитата Сообщение от niikiita Посмотреть сообщение
int i = 0;
Включите уже ж мышление. У Вас с каждой итерацией i будет инициализироваться нулём.
C++
1
2
3
4
5
6
    do                                  
    {
        int i = 0;
        swap(arr[i], arr[10 - i - 1]);
        i++;
    } while (i < 5);
IrineK
Заблокирован
01.07.2014, 17:34     Переместить элементы массива в обратном порядке, исправить ошибки в коде #8
В общем случае
C++
1
2
3
4
5
6
7
do                                  
    {
        
        swap(arr[j],arr[i]);
        i--;
        j++;
    } while (i > j);
Вернитесь к начальному варианту и исправьте строку 27
DrOffset
7058 / 4199 / 949
Регистрация: 30.01.2014
Сообщений: 6,965
01.07.2014, 17:39     Переместить элементы массива в обратном порядке, исправить ошибки в коде #9
niikiita, Прочитать слово в символьный массив, а затем напечатать это слово в обратном порядке
niikiita
3 / 3 / 0
Регистрация: 29.05.2013
Сообщений: 226
01.07.2014, 17:45  [ТС]     Переместить элементы массива в обратном порядке, исправить ошибки в коде #10
Цитата Сообщение от IrineK Посмотреть сообщение
Вернитесь к начальному варианту и исправьте строку 27
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
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
int main()
{
    setlocale(LC_CTYPE, "Russian");
    int arr[10];
    int t; int t1 = 0; int i = 9; int j = 0;
    for (t = 0; t < 10; t++)
        arr[t] = t;
    cout << "Заполенный массив: ";
    while (t1 < 10) 
    {
        cout << arr[t1];
        t1++;
    }
    cout << endl;
    cout << "Зеркальный массив: ";      
    do                                 
    {
        swap(arr[j],arr[i]);
        i--;
        j++;
    } while (i > j);
    while(i < 10)
    {
        cout << arr[i];
        i++;
    }
    cout << endl;
    system("Pause");
    return 0;
}
Ответ 543210
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
02.07.2014, 21:57     Переместить элементы массива в обратном порядке, исправить ошибки в коде
Еще ссылки по теме:

Элементы заданного массива T(k) расположить в обратном порядке: t k,t k-1,.,t2,t1 - C++
Элементы заданного массива T(k) расположить в обратном порядке: t k,t k-1,...,t2,t1. Помогите пожалуйста написать код, заранее спасибо!

Элементы заданного массива T(k) расположить в обратном порядке: t k,t k-1,.,t2,t1 - C++
Элементы заданного массива T(k) расположить в обратном порядке: t k,t k-1,...,t2,t1. Пожалуйста помогите мне, я начинающий мне срочно...

Ненулевые элементы массива расположить в обратном порядке - C++
написать программу на языке с++, у которой операторы: 1) создают одномерный статистический массив из N элементов; 2) заполняют массив...

Переставить в обратном порядке все четные элементы массива - C++
Пояснение: Создайте программу для ввода случайных значений в массив, для вывода массива на экран. Само задание для создание...


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

Или воспользуйтесь поиском по форуму:
niikiita
3 / 3 / 0
Регистрация: 29.05.2013
Сообщений: 226
02.07.2014, 21:57  [ТС]     Переместить элементы массива в обратном порядке, исправить ошибки в коде #11
Цитата Сообщение от IrineK Посмотреть сообщение
Вернитесь к начальному варианту и исправьте строку 27
Ну что тут доделать нужно? Не поможете?
Yandex
Объявления
02.07.2014, 21:57     Переместить элементы массива в обратном порядке, исправить ошибки в коде
Ответ Создать тему
Опции темы

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