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

В массиве перевернуть каждую группу из N элементов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Ошибка "vold" does not name a type http://www.cyberforum.ru/cpp-beginners/thread256124.html
#include <iostream> #include <fstream> using namespace std; void pover(); //обьявление функции int main(int argc, char *argv) { double n, nn;
C++ Кодировка, ASСII #include <iostream> using namespace std; #include <iomanip> #define LINEL 20 #define LINEB 40 #define OTSTUP 5 ostream& lineL(ostream& p) http://www.cyberforum.ru/cpp-beginners/thread256116.html
Ввод вывод C++
Заполнить файл последовательного доступа f целыми числами, полученными с помощью генератора случайных чисел. Получить в файле g все компоненты файла f, которые делятся на m и не делятся на n.
C++ Решение СЛАУ методом Крамера
Доброго времени суток! Пишу курсовую по методу Крамера. Вроде ничего сложного, но программированием я занимаюсь не часто, скачал с нета реферат по теме с исходником. Вставил в прогу защиту от ввода в поток из цифр буквенных символом, приукрасил немножко... Так как опыта мало, посмотрите плз, может что коряво написано, где улучшить можно. Жду критики)) #include <iostream> #include <iomanip>...
C++ задачи о вложенных циклах http://www.cyberforum.ru/cpp-beginners/thread256087.html
1)Дана матрица А(m,n). Перемножить элементы с четной суммой индексов I+J. Найти максимальные элементы каждого столбца матрицы. 2)Даны действительные числа а1, а2, … , а24. Получить последовательность b1, b2, … , b10, где b1= a1+a2+a3+...+a24 b2= a1^2+a2^2+....+a24^2 ..... a10= a1^10+a2^10+...+a24^10
C++ Две правые треугольные матрицы А и В порядка n Помогите пожалуста. Язык Си Две правые треугольные матрицы А и В порядка n заданы так, как описаны в предыдущей задаче. Получить в аналогичном виде. Mатрицу A(E+B^2) где Е – единичная матрица порядка n. подробнее

Показать сообщение отдельно
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9382 / 5432 / 916
Регистрация: 25.07.2009
Сообщений: 10,428
13.03.2011, 00:55     В массиве перевернуть каждую группу из N элементов
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
#include <stdio.h>
 
void dump(int * arr, size_t size){
    while ( size-- )
        printf("%d ", *arr++);
}
 
#define M 12
#define N 4
 
int main(void){
    int arr[M] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 }, i, j, k, tmp;
    
    printf("Before: ");
    dump(arr, M);
    for ( i = N; i <= M; i += N ){
        for ( j = i - N, k = i - 1; j < k; ++j, --k ){
            tmp = arr[j];
            arr[j] = arr[k];
            arr[k] = tmp;
        }
    }
    printf("\nAfter:  ");
    dump(arr, M);
    
    printf("\n");
    return 0;
}
Добавлено через 3 минуты
Другой вариант
C
1
2
3
4
5
6
7
8
9
...
    for ( i = 0; i < M; i += N ){
        for ( j = i, k = i + N - 1; j < k; ++j, --k ){
            tmp = arr[j];
            arr[j] = arr[k];
            arr[k] = tmp;
        }
    }
...
 
Текущее время: 14:39. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru