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

Использование шаблона функции - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ прочитать 5-ю строку из файла http://www.cyberforum.ru/cpp-beginners/thread1175569.html
подскажите пожалуйста как с помощью потоков прочесть текстовую строку и поместить её в массив?
C++ Найти максимальное число из, встречающихся в матрице более одного раза Хей. Есть рабочая программа, но для её полной правильности в ней нужно использовать Функцию или процедуру. Задание: Найти максимальное число из чисел, встречающихся в заданной матрице размером nxn более одного раза. Составить процедуру (или функцию) нахождения совпадающих элементов в матрице. Код програмы: #include <locale> #include <iomanip> #include <math.h> #include <conio.h> #include... http://www.cyberforum.ru/cpp-beginners/thread1175561.html
Неопознанный вылет калькулятора C++
функция перевода стала криво работать после переписывания кода на классы. при запуске просто зависает. есть какие-то идеи? #pragma once #include <iomanip> //Подключение манипуляторов ввода-вывода #include <stdio.h>//Подключение библиотеки стандартного ввода-вывода; #include <conio.h>//Подключение библиотеки консольного ввода-вывода; #include <iostream>//Подключение библиотеки потокового...
Заменить на 0 значения элементов матрицы, лежащих выше главной диагонали C++
Ребят помогите!!! сижу на экзамене Необходимо создать приложение в визуальной среде, которое запрашивает размерность квадратного двумерного массива, заполняет массив случайными числами от 3 до 15 и заменяет на 0 значения элементов, лежащих выше главной диагонали.
C++ Перегрузка методов класса Прямоугольник http://www.cyberforum.ru/cpp-beginners/thread1175538.html
1.Продемонстрировать перегрузку функций-членов класса "Прямоугольник", функция член – "Нарисовать". Различать случаи собственно прямоугольника и квадрата. Программа рисует квадрат и прямоугольник звездочками. Надо както сделать, чтоб при значении 1 он рисовал "*", а при значении 2 - "+"!! Помогите пожалуйста реализовать! Листинг программы. #include <iostream> using namespace std;
C++ Как работает cout? есть такая функция void output(recipe *list, int N){ for(int i=0; i<N; i++){ cout<<list.name<<endl; cout<<"руб"<<list.price<<list.ccal<<list.time<<"\n\n"; } }работает ну ооочень странно подробнее

Показать сообщение отдельно
Delaimo
 Аватар для Delaimo
1 / 1 / 0
Регистрация: 26.10.2012
Сообщений: 51
15.05.2014, 11:06  [ТС]     Использование шаблона функции
Ilot, он поворачивает немного не так. Он должен первую строку сдвинуть в последний столбец. Например:
5 7 8 8
9 5 8 7
3 0 8 1
8 3 1 0

Получиться должно примерно это, на вскидку:
5 7 8 5
9 5 8 7
3 0 8 8
8 3 1 8

Дальше по аналогии в задании.
Доделал твой код, теперь при выводе указывается каждая матрица с каждым поворотом.
Кликните здесь для просмотра всего текста
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
#include "StdAfx.h"
#include<iostream>
#include<time.h>
 
void CircleMoveMatrixElement(int** array, int i, int N);
int main (int argc, char* argv[])
{
    const int n = 4;
    int** arr;
    arr = new int*[n];
    for (int i = 0; i < n; i++)
        arr[i] = new int[n];
    srand(time(NULL));
    for (int k = 0; k < n; k++)
        for (int s = 0; s < n; s++)
            arr[k][s] = rand()%10;
 
    for (int k = 0; k < n; k++) {
        for (int s = 0; s < n; s++)
            std::cout << arr[k][s] << ' ';
        std::cout << std::endl;
    }
    std::cout << std::endl;
    for(int i = 0; i < n / 2; i++){
        CircleMoveMatrixElement(arr, i, n);
    
    
       for (int k = 0; k < n; k++) {
        for (int s = 0; s < n; s++)
            std::cout << arr[k][s] << ' ';
        std::cout << std::endl;
    }
    std::cout << std::endl;
    
    }
 
    for (int k = 0; k < n; k++) {
        for (int s = 0; s < n; s++)
            std::cout << arr[k][s] << ' ';
        std::cout << std::endl;
    }
    std::cout << std::endl;
    return 0;
}
void CircleMoveMatrixElement(int** array, int i, int N)
{
    int temp_element_00 = array[i][i];
    int temp_element_01 = array[i][N - i - 1];
    int temp_element_10 = array[N - i - 1][i];
    int temp_element_11 = array[N - i - 1][N - i - 1];
    for(int index = N - i -1; index > i; --index) {
        array[i][index]  = array[i][index - 1];
        array[index][N - i - 1] = array[index - 1][N - i - 1];
        array[N - i - 1][N - index - 1] = array[N - i -1][N - index];
        array[N - index - 1][i]   = array[N - index][i];
    }
    array[i][i + 1]   = temp_element_00;
    array[i + 1][N - i - 1]  = temp_element_01;
    array[N - i - 2][i]  = temp_element_10;
    array[N - i - 1][N - i - 2] = temp_element_11;
}

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