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

Вывести строку, обратную заданной - C++

Восстановить пароль Регистрация
 
Mihail_Yemets
0 / 0 / 0
Регистрация: 05.05.2014
Сообщений: 9
16.05.2014, 20:33     Вывести строку, обратную заданной #1
Собственно программа для того что бы вывести строку обратную данной.
Я не могу догнать как она работает.
Понятно до того момента как , " for (int j = 0; j <len / 2; j++) " , зачем мы количество символов в строке делим на 2 , и почему это является завершением для цикла ?

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
using namespace std;
 
void main()
{
    char str[6] = "misha";
    cout << str << endl;
 
    int len = strlen(str); //найти длину строки
    for (int j = 0; j <len / 2; j++) //поменять все
        //символы из первой половины
    {
        char temp = str[j]; //на символы
        str[j] = str[len - j - 1]; //из второй половины
        str[len - j - 1] = temp;
    }
 
    cout << str << endl;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.05.2014, 20:33     Вывести строку, обратную заданной
Посмотрите здесь:

C++ Ввести строку и слово, удалить все вхождения слова и вывести строку
C++ Ввести строку. Вывести строку так, чтобы за каждым словом следовало количество пробелов, равное длине слова.
C++ Строку в обратную польскую запись
C++ Вывести строку, содержащую эти же слова, но расположенные в обратном порядке. Записать полученную строку в другой файл
C++ В заданной числовой вещественной матрице размерности N*N поменять местами K-ую строку и L-ую строку
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
4318 / 3739 / 1260
Регистрация: 14.04.2014
Сообщений: 14,664
16.05.2014, 20:37     Вывести строку, обратную заданной #2
Символы переставляются зеркально относительно центра, поэтому на 2.
Wlk
49 / 49 / 13
Регистрация: 07.12.2011
Сообщений: 133
16.05.2014, 20:39     Вывести строку, обратную заданной #3
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Допустим есть строка "0123456".
1-й шаг - меняем 0-6 - получаем "6123450"
2-й шаг - меняем 1-5 - получаем "6523410"
3-й шаг - меняем 2-4 - получаем "6543210".
Получается что количество шагов привязано к длине строки и равно ее половине (без остатка).
Mihail_Yemets
0 / 0 / 0
Регистрация: 05.05.2014
Сообщений: 9
17.05.2014, 16:11  [ТС]     Вывести строку, обратную заданной #4
Спасибо , ребят , разобрался.
Yandex
Объявления
17.05.2014, 16:11     Вывести строку, обратную заданной
Ответ Создать тему
Опции темы

Текущее время: 17:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru