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

Заполнить матрицу по образцу - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Попадание точки в области http://www.cyberforum.ru/cpp-beginners/thread353864.html
Приветствую, уважаемые форумчани. Помогите с задачкой . Для действительных х и у, определяющих координату точки A(x,y) в декартовых координатах, определить значение SPO. Мои наработки, но , наверное, само математическое решение не идеальное, так как всегда получается красная зона. #include "stdafx.h" #include <iostream> #include <exception> #include "math.h" /*1-red 2-blue 3-yellow
C++ Найдите центр и радиус окружности, проходящей через три заданные точки на плоскости. Народ!! Помогите, пожалуйста, решить задачу Найдите центр и радиус окружности, проходящей через три заданные точки на плоскости. http://www.cyberforum.ru/cpp-beginners/thread353863.html
strcpy - как быть? C++
Всем Доброго времени суток. Возник вопрос. В процессе работы над заданием, столкнулся с проблемой, которую не хватает сил обойти. Вот Код программы: #include <iostream> #include <string> #include<iomanip> using namespace std;
C++ несколько файлов *.html открыть программно
Здравствуйте, подскажите пожалуйста, имеется несколько файлов *.html, как их открыть программно, чтобы они отображались в одном Internet Explorer на разных вкладках??? Ответ есть, никто не знает как с СИ++ в ВБ(А) сделать var navOpenInBackgroundTab = 0x1000; var oIE = new ActiveXObject("InternetExplorer.Application"); oIE.Navigate2("http://blogs.msdn.com");...
C++ Односвязный список: где-то закралась ошибка http://www.cyberforum.ru/cpp-beginners/thread353809.html
Не могу найти где ошибка и всё тут, наверняка ошибка глупая и я её попросту не замечаю. Сам класс список: class List { struct element { element(string s, element *next=NULL) {
C++ мне нужна помощь по курсовой работе!!! (Делать нужно на С++) Задание такое: Задан массив натуральных чисел P. Найти минимальное натуральное число, не представимое суммой никаких элементов массива P. Сумма может состоять из одного слогаемого, но каждый элемент массива может входить в неё только 1 раз. Добавлено через 1 час 51 минуту а всё, кажись разобрался=) подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
20.09.2011, 14:31     Заполнить матрицу по образцу
Цитата Сообщение от sandye51 Посмотреть сообщение
-=ЮрА=-, ты не то, что нужно сделал
- всмотрелся, точно в строке переменный шаг, сейчас поправлюсь...

Добавлено через 2 часа 20 минут
Вобщем вот алгоритм на плюсах с переменным шагом по i и j
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
#include <iostream>
#include <conio.h>
using namespace std;
 
//Руссификация
ostream& operator<<(ostream &stream,char* s){
    for(char* ps=s; *ps; ps++){
        if(*ps=='ё')
            stream<<char(241);
        else if(*ps=='Ё')
            stream<<char(240);
        else if(*ps>=-64 && *ps<=-17)           
            stream<<char(*ps+64+128);
        else if(*ps<0)
            stream<<char(*ps+64+176);
        else
            stream<<*ps;
    }
    return stream;
}
 
//1 2 6 7 15 16 28 ... 
//3 5 8 14 17 27 ...
//4 9 13 18 26 ...
//10 12 19 25 ... 
//11 20 24 ...
//21 23 ...
//22 ...
 
void PrntVec(int n, int * vec);
void FillVec(int n, int base, int plus, int * vec);
 
int main()
{
    int i,j,n;
    int ** arr;
    int i_plus = 6, j_plus = 4;
    do
    {
        std::cout<<"Ведите размерность матрицы : ";
        std::cin>>n;
        arr    = new int *[n];
        arr[0] = new int[n];//Первая строка не вписывается в алгоритм 
        //переменного шага по i
        //Верней он со 2-й строки начинается
        FillVec(n, 1, j_plus, arr[0]);
        PrntVec(n, arr[0]);
        for(int i = 1, k = 3, nCount = 1; i < n; i++)
        {
            arr[i] = new int[n];
            FillVec(n, k, j_plus, arr[i]);
            PrntVec(n, arr[i]);
            if(i % 2 == 0)
                k += i_plus*(nCount++);
            else
                k++;
        }
        std::cout<<"Нажмите Y для нового ввода\r\n";
        delete [] arr;
    }
    while(toupper(getch()) == 'Y');
    return 0;
}
 
void PrntVec(int n, int * vec)
{
    for(int i = 0; i < n; i++)
        std::cout<<vec[i]<<" ";
    std::cout<<"\r\n";
}
 
void FillVec(int n, int base, int plus, int * vec)
{
    for(int i = 1, k = base, nCount = 1; i <= n; i++)
    {
        vec[i - 1] = k;
        if(i % 2 == 0)
            k += plus*(nCount++);
        else
            k++;
    }
}
Ведите размерность матрицы : 11
1 2 6 7 15 16 28 29 45 46 66
3 4 8 9 17 18 30 31 47 48 68
4 5 9 10 18 19 31 32 48 49 69
10 11 15 16 24 25 37 38 54 55 75
11 12 16 17 25 26 38 39 55 56 76
продолжение
23 24 28 29 37 38 50 51 67 68 88
24 25 29 30 38 39 51 52 68 69 89
42 43 47 48 56 57 69 70 86 87 107
43 44 48 49 57 58 70 71 87 88 108
67 68 72 73 81 82 94 95 111 112 132
68 69 73 74 82 83 95 96 112 113 133
Нажмите Y для нового ввода
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru