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

Сглаженная матрица - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дробная и целая части числа http://www.cyberforum.ru/cpp-beginners/thread668347.html
Определить, равна ли сумма цифр дробной части заданного положительного вещественного числа сумме цифр целой части. Какие варианты господа?:)
C++ Составить программу для вывода среднего балла Составить программу для вывода в консоль списка студентов, средний бал которых выше стреднего бала групы. Экзаменационная ведомость содержит данные по 3 предметам для 5 студентов. Добавлено через... http://www.cyberforum.ru/cpp-beginners/thread668343.html
Написать логическое условие, проверяющее, что оба числа А и В четные C++
Написать логическое условие, проверяющее, что оба числа А и В четные
C++ Метод половинного деления
Скажите почему не выводит "c" #include <stdafx.h> #define _USE_MATH_DEFINES #include <cmath> #include <math.h> #include <iostream> #include <conio.h> using namespace std; double f(double...
C++ числа Фибоначи http://www.cyberforum.ru/cpp-beginners/thread668331.html
1)Определить 40-е число Фибоначи 2)поиск 1-го числа Фибоначи больше заданного числа m 3)Вычисление суммы всех чисел Фибоначи,которое не превосходит 1000
C++ Сортировка элементов матрицы "треугольником" Здраствуйте. Есть матртца размера N, нужно на главной диагонали сделать нули, а елементы которые остались побоках диагонали отсортировать "треугольником"(если повенуть матрицу на 45% против часовой... подробнее

Показать сообщение отдельно
rexx_ua
0 / 0 / 0
Регистрация: 10.10.2012
Сообщений: 34

Сглаженная матрица - C++

10.10.2012, 22:30. Просмотров 1376. Ответов 10
Метки (Все метки)

9. Дана матрица. Соседями элемента a[i,j] в матрице назовём элементы a[k,l], где i-1≤ k≤ i+1, j-1≤ l≤ j+1, (k, l) ≠(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
#include <iostream>
#include <time.h>
#include <stdlib.h>
 using namespace std;
int main()
{   setlocale(LC_ALL,"Russian");
    const int x=3, y=3;
    int first[x][y];
    srand(time(NULL));
    cout << "Начальная матрица: \n" << endl;
    for (int i = 0; i < x; ++i)
        {
        for (int j = 0; j < y; ++j)
            {
            first[i][j]=1+rand()%9;
            cout << first[i][j] << "   " ;
            }
        cout << "\n\n";
        }
    
    float second[x][y];
    for (int i = 0; i < x; ++i)
        {
        int cnt = 0, sum = 0;
        for (int j = 0; j < y; ++j)
            {
                if ((i + 1) < x) 
                    { sum += first[i+1][j]; ++cnt; }
                if ((j + 1) < y) 
                    { sum += first[i][j+1]; ++cnt; }
                if ((i - 1) >= 0 ) 
                    { sum += first[i-1][j]; ++cnt; }
                if ((j - 1) >= 0 ) 
                    { sum += first[i][j-1]; ++cnt; }
 
            second[i][j] = sum / cnt;
            cnt = 0;
            sum = 0;
            }
        }
 
    cout << "\nСглаженная матрица: " << endl;
    for (int i = 0; i < x; ++i)
        {
        for (int j = 0; j < y; ++j)
            {cout.precision(2);
            cout << second[i][j] << "   ";
            }
        cout << "\n\n";
        }
 
    system("pause");
}
Почему-то случайно генерирует, а НЕ СЧИТАЕТ, и вторую матрицу.
Не могу понять, что не так. И, кстати, почему-то не дает знак после запятой во второй матрицы.
Форумчане, прошу помочь.
За основу для написания была взята прикрепленная тема.
0
Миниатюры
Сглаженная матрица  
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru