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

Нужно перевернуть строчку через рекурсию - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ написание контрольных http://www.cyberforum.ru/cpp-beginners/thread305763.html
Доброго времени суток. Занимаюсь решением контрольных работ на заказ и не хватает времени на программы, 2 контрольные успею сам сделать, а 3 думаю неуспею оформить + еще у самого скоро сессия В общем 4 задачи на С++ нужно замутить, само сабой не бесплатно и и не золотые это задачи знайте, по 50 wmr за 1 задачи... Задание 1. Дана вещественная матрица NxM. Упорядочить ее строки по возрастанию...
C++ Формирование массива трехзначных чисел с помощью датчика случайных чисел и вывода его на экран Создать две функции для работы с массивом: • формирование массива трехзначных чисел с помощью датчика случайных чисел и вывода его на экран; • вычисление суммы массива. Имя массива и его размер передаются в функцию в качестве параметров. Продемонстрировать работу функции на примере двух разных массивов. Сделал вот что, не знаю только как сделать трехзначные числа) Помогите пожалуйста)... http://www.cyberforum.ru/cpp-beginners/thread305756.html
Определить, в какую из облостей (1,2 или 3) попадает точка C++
Определить, в какую из облостей (1,2 или 3) попадает точка с заданными координатами (для простоты принять, что абсцисса точки не равна 1.5 или 5).
переменные readonly C++
переменные экземпляра, класса, константы и переменные readonly: -ФИО -должность -базовый оклад -дата поступления на работу -стаж к моменту поступления -коэффициент для расчета премии -минимальный размер оплаты труда(МРОТ) -... Методы класса для вычисления или выполнения действий:
C++ двусвязные списки! может кому то надо http://www.cyberforum.ru/cpp-beginners/thread305739.html
моя лаба)) может кому пригодится #include <iostream> #include <iomanip> #include <fstream> #include <conio.h> using namespace std; struct node
C++ найдите ошибку #include "stdafx.h" #include <stdio.h> #include <conio.h> #include <iostream> #include <math.h> using namespace std; int main() { int i,a,n,max,t; cout<<"vvedite chislo elementov="; подробнее

Показать сообщение отдельно
schdub
2945 / 1289 / 238
Регистрация: 19.01.2009
Сообщений: 3,379
Завершенные тесты: 1
27.05.2011, 16:01
Цитата Сообщение от Nameless One Посмотреть сообщение
а можешь объяснить, как оно работает?
алгоритм, приблизительно такой же как и у lemegeton.
чтобы было понятнее операторы ?: заменил на ifы:
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
main (x, Y)
{
    int r; 
    char q[] = ".0.1 noisreV ,esneciL erawtfoS eht rednu detubirtsiD";
    if (x == 1)
    { 
        // БЛОК 1
        // после запуска попадаем сюда
        // т.к. argc (первый аргумент main()) == 1 ()
 
        // передаем управление БЛОКУ 2
        // 1-й параметр - указатель на первый символ строки
        // 2-й - указатель на последный символ
        main(q, q + strlen(q) - 1);
 
        // здесь строка уже будет модифицирована,
        // т.е. Distributed under the Software License, Version 1.0.
        printf(q);
    }
    else if (Y > x) // если указатель начала строки меньше указателя окончания
    {
        // БЛОК 2
        // 1-й параметр - указатель на первый символ строки
        // 2-й - указатель на последный символ
 
        // обыкновенный swap()
        r = *(char*)x;
        *(char*)x = *(char*)Y;
        *(char*)Y = r;
        // увеличиваем указатель на начало
        // и уменьшаем указатель на окончание
        // и передаем управление блоку 2
        main(x + 1, Y - 1);
    }
    return 0;
}
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru