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

Циклически сдвинуть строки в двумерном массиве заданным образом - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Соединить строки, вставить между ними соединительное слово и удалить один вопросительный знак http://www.cyberforum.ru/cpp-beginners/thread326559.html
аны две строки с вопросительными знаками в конце. Соединить их ,вставить между ними соединительное слово и удалить один ВОПРОСИТЕЛЬНЫЙ ЗНАКС. Срочно на экзамене
C++ Матрица [3x3] через шаблоны Переставить все элементы k-ой строки (между собой) и все элементы побочной диагонали. Размер матрицы Заранее спасибо http://www.cyberforum.ru/cpp-beginners/thread326554.html
Вычислить суммарное количество очков, набранных каждой командой по результатам игры C++
результаты игры квн, в которой принимали участие 3 команды и проводилось 5 конкурсов, сохранены в двумерном массиве. Написать программу, вычисляящую суммарное количество очков, набранных каждой командой по результатам игры, вывести команду победителя Элементы вводятся с файла Результаты выводятся в файла Оформить в виде функции. В главной функции только вызов остальных функции Сейчас на...
C++ Работа с TCP/IP протоколами
Здравствуйте! Хочу реализовать свою идею. Но не знаю с чего начать. Подскажите пожалюста, на каком языке лучше написать такую прогу, или может есть такая прога. Жду ваших предложений и советов Идея такова: Программа 1) должна работать в локалной сети 2) будет состоит из двух частей: админ и клиент Директор посылает задачу конкретному работнику через админку. Админка запоминает время и...
C++ Классы http://www.cyberforum.ru/cpp-beginners/thread326538.html
Создать класс обработки паспортных данных. Добавить функции проверки корректности вводимых данных(даты,возраста и т.д.) Требования: Разработать программу, демонстрирующую работу с данным классом. Данные вводятся с файла. Результаты выводятся в файла
C++ Не проходите мимо двухмерный массив Составь программу выщитывающую множитель отрицательных элементов по шкале данного массива. Элементы массива конкретные числа. подробнее

Показать сообщение отдельно
sandye51
программист С++
 Аватар для sandye51
677 / 579 / 39
Регистрация: 19.12.2010
Сообщений: 2,016
27.06.2011, 13:37     Циклически сдвинуть строки в двумерном массиве заданным образом
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <algorithm>
#include <cstdlib>
#include <iostream>
#include <clocale>
#include <vector>
#include <fstream>
#include <string>
#include <conio.h>
#include <iterator>
 
int main()
{
    setlocale(LC_ALL, "Russian");
 
    std::cout << "Введите имя файла" << std::endl;
    std::string fileName;
    std::cin >> fileName;
 
    std::ifstream input_file(fileName.c_str());
    if (input_file.fail())
    {
        std::cerr << "Невозможно открыть файл" << std::endl;
        _getch();
        return EXIT_FAILURE;
    }
 
    size_t m, n; 
    input_file >> m >> n;
    std::vector<std::vector<double> > matrix(m, std::vector<double>(n));
 
    for (std::vector<std::vector<double> >::iterator i = matrix.begin(), end = matrix.end(); i != end; ++i)
        for (std::vector<double>::iterator j = i->begin(), end = i->end(); j != end; ++j)
            input_file >> *j;
    input_file.close();
 
    std::cout << "На сколько осуществить сдвиг?" << std::endl;
    signed short int size;
    std::cin >> size;
 
    std::rotate(matrix.begin(), matrix.begin() + size % matrix.size(), matrix.end());
 
    std::cout << "Введите имя файла для сохранения" << std::endl;
    std::cin >> fileName;
    std::ofstream output_file(fileName.c_str());
 
    if (output_file.fail())
    {
        std::cerr << "Невозможно открыть файл" << std::endl;
        _getch();
        return EXIT_FAILURE;
    }
 
    for (std::vector<std::vector<double> >::const_iterator i = matrix.begin(), end = matrix.end(); i != end; ++i)
    {
        copy(i->begin(), i->end(), std::ostream_iterator<double>(output_file, " "));
        output_file << std::endl;
    }
    output_file.close();
 
    _getch();
    return EXIT_SUCCESS;
}
 
Текущее время: 22:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru