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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 13, средняя оценка - 4.62
Bukharov11
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 46
#1

Заполнить нулями элементы квадратной матрицы, расположенными по её периметру - C++

26.05.2012, 11:10. Просмотров 2017. Ответов 32
Метки нет (Все метки)

Заполнить нулями элементы квадратной матрицы, расположенными по её периметру.
Нужно написать, используя функции. Кто может помочь?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2012, 11:10
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Заполнить нулями элементы квадратной матрицы, расположенными по её периметру (C++):

Заполнить нулями элементы квадратной матрицы, расположенными по её периметру - C++
Заполнить нулями элементы квадратной матрицы, расположенными по её периметру. кто может помочь написать? Срочно нужно сдать.

Заполнить одномерный массив B элементами, расположенными по периметру исходного массива A - C++
Помогите, пожалуйста! Дано натуральное число n и двумерный массив A (n,n). Составьте программу, которая заполняет одномерный массив...

Заполнить заданную область квадратной матрицы единицами, а остальное - нулями - C++
Данная действительно квадратная матрица размерности N. Заполнить матрицу в заштрихованной области единицами, в не заштрихованной - нулями.

Заполнить элементы главной диагонали матрицы нулями остальные единицами - C++
Дала целочисленная матрица nxn. Заполнить элементы: главной диагонали 0, остальные 1.

Найти сумму элементов, лежащих по периметру квадратной матрицы - C++
Задан двумерный массив, состоящий из n строк и n столбцов. Найти сумму элементов, лежащих по периметру.

Заполнить матрицу: по периметру записывается число, совпадающее с порядком матрицы - C++
Помогите.Решить задачу: заполнить квадратную матрицу порядка N по следующему правилу: по периметру записывается число, совпадающее с...

32
ruslawik
9 / 33 / 1
Регистрация: 25.05.2012
Сообщений: 113
26.05.2012, 11:19 #2
Щас накатаю

Добавлено через 1 минуту
А пример входных данных покажи пожалуйста?

Добавлено через 6 минут
Вот тебе код написал. Короче пример входных такой:
1) Вводишь число n это размер матрицы (к примеру введешь 5 то матрица будет 5х5)
2) Вводишь матрицу n x 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
29
30
31
#include<iostream>
using namespace std;
int a[100][100];
int main()
{
    int n;
    cin>>n;
    for(int i=0; i<n; ++i)
    {
            for(int j=0; j<n; ++j)
            {
                    cin>>a[i][j];
            }
    }
    for(int i=0; i<n; ++i)
    {
            a[i][0]=0;
            a[0][i]=0;
            a[n-1][i]=0;
            a[i][n-1]=0;
    }
    for(int i=0; i<n; ++i)
    {
            for(int j=0; j<n; ++j)
            {
                    cout<<a[i][j]<<" ";
            }   
            cout<<endl;
    }
    system("pause");
}
1
Bukharov11
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 46
26.05.2012, 11:24  [ТС] #3
Спасибо огромное
0
ruslawik
9 / 33 / 1
Регистрация: 25.05.2012
Сообщений: 113
26.05.2012, 11:24 #4
А функцию надо? Я блин сразу не прочитал...
0
Bukharov11
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 46
26.05.2012, 11:26  [ТС] #5
Да.. я смотрю что-то не то.
0
ruslawik
9 / 33 / 1
Регистрация: 25.05.2012
Сообщений: 113
26.05.2012, 11:33 #6
ок ща сделаю)

Добавлено через 3 минуты
Вот тебе с функциями)))

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
#include<iostream>
using namespace std;
int a[100][100],n;
void pushinto(int y)
{
    int n=y;
    for(int i=0; i<n; ++i)
    {
            for(int j=0; j<n; ++j)
            {
                    cin>>a[i][j];
            }
    }
}
void setzero(int x)
{
    n=x;
    for(int i=0; i<n; ++i)
    {
            a[i][0]=0;
            a[0][i]=0;
            a[n-1][i]=0;
            a[i][n-1]=0;
    }
}
void show(int u)
{
     int n=u;
     for(int i=0; i<n; ++i)
     {
            for(int j=0; j<n; ++j)
            {
                    cout<<a[i][j]<<" ";
            }   
            cout<<endl;
     }
}
int main()
{
    cin>>n;
    pushinto(n);
    setzero(n);
    show(n);
    system("pause");
}
Добавлено через 2 минуты
Bukharov11, а как тебя зовут? а то у меня знакомый есть с таким именем)
1
Bukharov11
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 46
26.05.2012, 11:33  [ТС] #7
Открывается просто командная строка и всё. ниче не просит ввести, и ничего не происходит..

нее я точно не твой знакомый)) у меня нет знакомых-программистов))
0
ruslawik
9 / 33 / 1
Регистрация: 25.05.2012
Сообщений: 113
26.05.2012, 11:38 #8
Ну да она и не будет просить) самому ввести как в первый раз вводил. Или тебе надо чтобы просила? щас сделаем)))

Добавлено через 3 минуты
Вот так надо?
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
#include<iostream>
using namespace std;
int a[100][100],n;
void zapros()
{
     cout<<"Vvedite razmer massiva (odno 4islo, k primeru 5 i massiv budet 5x5)"<<endl;
}
void vto()
{
     cout<<"Vvedite matricu razmerom "<<n<<"x"<<n<<endl;
}
void pushinto(int y)
{
    int n=y;
    for(int i=0; i<n; ++i)
    {
            for(int j=0; j<n; ++j)
            {
                    cin>>a[i][j];
            }
    }
}
void setzero(int x)
{
    n=x;
    for(int i=0; i<n; ++i)
    {
            a[i][0]=0;
            a[0][i]=0;
            a[n-1][i]=0;
            a[i][n-1]=0;
    }
}
void show(int u)
{
     int n=u;
     for(int i=0; i<n; ++i)
     {
            for(int j=0; j<n; ++j)
            {
                    cout<<a[i][j]<<" ";
            }   
            cout<<endl;
     }
}
int main()
{
    zapros();
    cin>>n;
    vto();
    pushinto(n);
    setzero(n);
    show(n);
    system("pause");
}
1
Bukharov11
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 46
26.05.2012, 11:39  [ТС] #9
Вот я делал не через функцию, он мне сразу матрицу открывал с нулями по периметру:
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
#include <iostream>
#include <conio.h>
 
using namespace std;
 
int main()
{
    const int n=7;
    int a [n][n];
 
    for (int i=0; i<n; i++)
    {
        for (int j=0; j<n; j++)
        {
            if (i==0 || j==0 || i==n-1 || j==n-1)
               a [i][j]=0;
            else
               a [i][j]=1;
            cout << " " << a[i][j];
        }
    cout << endl;
    }
return 0;
}
0
ruslawik
9 / 33 / 1
Регистрация: 25.05.2012
Сообщений: 113
26.05.2012, 11:40 #10
Эххх ты)) я то думал человек сам должен ввести матрицу а я ее потом изменить
0
Bukharov11
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 46
26.05.2012, 11:41  [ТС] #11
нееет)))
0
ruslawik
9 / 33 / 1
Регистрация: 25.05.2012
Сообщений: 113
26.05.2012, 11:44 #12
Так?
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
#include <iostream>
#include <conio.h>
int n,a [100][100];
using namespace std;
void zapros()
{
     cout<<"Vvedite razmer massiva (odno 4islo, k primeru 5 i massiv budet 5x5)"<<endl;
}
void set()
{
     for (int i=0; i<n; i++)
    {
        for (int j=0; j<n; j++)
        {
            if (i==0 || j==0 || i==n-1 || j==n-1)
               a [i][j]=0;
            else
               a [i][j]=1;
            cout << " " << a[i][j];
        }
    cout << endl;
    }
    getch();
}
int main()
{ 
    zapros();
    cin>>n;
    set();
    return 0;
}
1
Bukharov11
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 46
26.05.2012, 11:46  [ТС] #13
Да да да)) вот именно так)) спасибо огромное)))
препод задал решать, нифига не понимаю..( еще 2 надо как то решить((
0
ruslawik
9 / 33 / 1
Регистрация: 25.05.2012
Сообщений: 113
26.05.2012, 11:47 #14
Ну давай сюда

Добавлено через 44 секунды
А я сам изучаю)) еще даже не студент) мне 16, наверное в универе просто будет)
0
Bukharov11
0 / 0 / 0
Регистрация: 18.04.2012
Сообщений: 46
26.05.2012, 11:48  [ТС] #15
ниче се ты)) ну кому как) я, например, уже запарился)
Дан массив из n целых чисел. Найти первый максимум в этом массиве, а затем все числа до этого элемента упорядочить по возрастанию, а после — по убыванию.
тоже надо с использованием функции.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.05.2012, 11:48
Привет! Вот еще темы с ответами:

Сжать массив, удалив из него все элементы модуль которых не превышает 1. Заполнить эти элементы нулями - C++
Во время перестановки, когда первый 0 достигает конца массива, выскакивает ошибка и прога останавливается. При этом на последнем элементе...

Элементы расположенные по периметру матрицы. - C++
подскажите,как составить цикл для нахождения элементов по периметру через for.с++

Сжать массив, удалив из него все элементы, которые лежат в интервале [a,b]. Освободившиеся в конце элементы массива заполнить нулями. - C++
У меня такая проблема: Сжать массив, удалив из него все элементы, которые лежат в интервале . Освободившиеся в конце элементы массива ...

В квадратной матрице, заполненной нулями и единицами, переставить элементы согласно условию - C++
Здравствуйте. Есть такое задание: Дан массив 8х8. Нужно вводить нули и единицы (одна единица в строке). На экран вывести исходный...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru