Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
14 / 14 / 11
Регистрация: 14.11.2016
Сообщений: 284

Четные строки матрицы заменить на x

20.05.2017, 20:01. Показов 880. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Pадан двухмерный массив n m , где n>1, m>1.
Четные строки матрицы заменить на x

Добавлено через 1 час 26 минут
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
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
#include "stdafx.h"
#include<stdio.h>
#include<locale.h>
#include  <stdlib.h>
#define size 100
 
int inputn();
int inputm();
void input_matr(int *_n, int *_m, int _mass[size][size]);
int inputz(); 
void matrX(int *_n, int *_m, int _mass[size][size], int *_z);
void print_matr(int *_n, int *_m, int _mass[size][size]);
 
int main(void)
{
    setlocale(LC_ALL, "Russian");
    int n, m,z;  /*n - размерность матрицы*/
    int mass[size][size];/*матрица*/
    printf("Данная программа позволяет вычислить сумму элементов, которые находятся по периметру матрицы\n");
    n = inputn();
    m = inputm();
    input_matr(&n, &m, mass);
    z = inputz();
    matrX(&n, &m, mass, &z);
    print_matr(&n, &m, mass);
    return 0;
}
 
/*--------------------------------------------------------------------*/
/*Подпрограмма для ввода количества строк*/
int inputn()
{
    int ver, _n;/*ver - переменная для проверки данных данных, введённых с клавиатуры, _n - количество строк*/
    printf("Введите количество строк n: ");
    printf("n = ");
    do
    {
        fflush(stdin);
        ver = scanf("%d", &_n);
        if ((ver != 1) || (_n < 1))
        {
            printf("Введено не корректное значение, повторите ввод, n-целое число больше 0 \n");
            printf("n = ");
        }
    } while ((ver != 1) & ((getchar()) != '\n') || (_n < 1));
    return _n;
}
 
/*--------------------------------------------------------------------*/
/*Подпрограмма для ввода количества столбцов*/
int inputm()
{
    int ver, _m;/*ver - переменная для проверки данных данных, введённых с клавиатуры, _m - количество столбцов*/
    printf("Введите количество столбцов m: ");
    printf("m = ");
    do
    {
        fflush(stdin);
        ver = scanf("%d", &_m);
        if ((ver != 1) || (_m < 1))
        {
            printf("Введено не корректное значение, повторите ввод, m-целое число больше 0 \n");
            printf("m = ");
        }
    } while ((ver != 1) & ((getchar()) != '\n') || (_m < 1));
    return _m;
}
 
/*--------------------------------------------------------------------*/
/*Подпрограмма для заполнения матрицы*/
void input_matr(int *_n, int *_m, int _mass[size][size])
{
    int ver, i, j; /*i,j - счетчик цикла*/
    
    for (int i = 0; i < *_n; i++){
        for (int j = 0; j < *_m; j++){
            _mass[i][j] = (rand() % 50)+10;
            printf("%d   ", _mass[i][j]);
        }
        printf("\n");
    }
    return;
}
/*--------------------------------------------------------------------*/
/*Подпрограмма для ввода заданного числа*/
int inputz()
{
    char ver;/*ver - переменная для проверки данных, введённых с клавиатуры, _z - число*/
    int _z;
    printf("Введите элемент z: ");
    printf("z = ");
    do
    {
        fflush(stdin);
        ver = scanf("%if", &_z);
        if (ver != 1)
        {
            printf("Введено не корректное значение, повторите ввод\n");
            printf("число = ");
        }
    } while ((ver != 1)& ((getchar()) != '\n'));
 
    return _z;
}
/*--------------------------------------------------------------------*/
/*Подпрограмма для замены четных строк матрицы на Х*/
void matrX(int *_n, int *_m, int _mass[size][size], int *_z)
{
    int i, j; /*счетчик цикла*/
    for (i = 0; i < *_n; i++){
        for (j = 0; j < *_m; j++){
            if (i % 2 != 0) _mass[i][j] = *_z;
            
        }
    }
    
}
/*--------------------------------------------------------------------*/
/*Подпрограмма для печати матрицы*/
void print_matr(int *_n, int *_m, int _mass[size][size])
{
    for (int i = 0; i < *_n; i++) {
        for (int j = 0; j < *_m; j++) {
            printf("%d   ", _mass[i][j]);
        }
        printf("\n");
    }
    return;
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
20.05.2017, 20:01
Ответы с готовыми решениями:

Отсортировать четные строки матрицы X (10x9) в порядке убывания, а не четные в порядке возрастания
Отсортировать четные строки матрицы X (10x9) в порядке убывания, а не четные в порядке возрастания. Определить функцию для сортировки одной...

Заменить все четные элементы матрицы на ее минимальный элемент
Помогите! В двумерном массиве заменить все четные элементы на минимальный элемент матрицы. Напечатать изменен массив

Удалить четные строки 2-мерной матрицы
Подскажите пожалуйста, как реализовать такую программу. Есть двумерная матрица(количество строк и столбцов задает пользователь),...

1
 Аватар для andreyka93
131 / 131 / 157
Регистрация: 11.04.2015
Сообщений: 343
20.05.2017, 23:48
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
83
84
85
86
87
#include <stdio.h>
#include <time.h>
 
#define MAX_NUMBER  100
#define MIN_NUMBER -100
#define NEW_SIGN     88
 
void CreateMatrix(int **matrix, int rows, int columns);
void PrintMatrix(int **matrix, int rows, int columns);
void DoMagic(int **matrix, int rows, int columns);
 
int main() {
 
    int m, n , i;
 
    printf("Enter a number of rows: ");
    scanf("%d", &n);
 
    printf("Enter a number of columns: ");
    scanf("%d", &m);
 
    if(n<=1 || m<=1){
        printf("Wrong input\n");
        exit(1);
    }
 
    int **matrix = (int **)malloc(n * sizeof(int *));
    if (*matrix == NULL) {
        printf("Memory allocation failure\n");
        exit(1);
    }
 
    for (i = 0; i < n; i++) {
        matrix[i] = malloc(m * sizeof(int));
    }
 
    void(*printFunctionPtr)(int**, int, int);
    printFunctionPtr = PrintMatrix;
 
    srand(time(NULL));
 
    CreateMatrix(matrix, n, m);
    printf("Input matrix:\n");
    printFunctionPtr(matrix, n, m);
    DoMagic(matrix, n, m);
    printf("\n\nResult:\n");
    printFunctionPtr(matrix, n, m);
    
    for (int i = 0; i < n; i++)
        free(matrix[i]);
    free(matrix);
 
    return 0;
}
 
void CreateMatrix(int **matrix, int rows, int columns) {
    int i, j;
 
    for (i = 0; i < rows; i++) {
        for (j = 0; j < columns; j++) {
            matrix[i][j] = rand() % (MAX_NUMBER + 1 - MIN_NUMBER) + MIN_NUMBER;
        }
    }
}
 
void PrintMatrix(int **matrix, int rows, int columns) {
    int i, j;
 
    for (i = 0; i < rows; i++) {
        for (j = 0; j < columns; j++){
            if (i % 2 == 0 && matrix[i][j] == NEW_SIGN) 
                printf("%3c ", NEW_SIGN);
            else
                printf("%3d ", matrix[i][j]);
        }
        printf("\n");
    }
}
 
void DoMagic(int **matrix, int rows, int columns) {
    int i, j;
 
    for (i = 0; i < rows; i+=2) {
        for (j = 0; j < columns; j++)
            matrix[i][j] = NEW_SIGN;
    }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
20.05.2017, 23:48
Помогаю со студенческими работами здесь

Элементы каждой строки прямоугольной матрицы заменить их дополнениями до максимального элемента же строки
Не сочтите за сложность помочь с такой задачей. Элементы каждой строки прямоугольной матрицы заменить их дополнениями до...

Отсортировать четные строки матрицы Q(10х10) в порядке убывания, а нечетные – в порядке возрастания
Написать программу на си, задание: Отсортировать четные строки матрицы Q(10х10) в порядке убывания, а нечетные – в порядке возрастания....

Если все элементы какой-нибудь строки матрицы равны между собой, то все элементы такой строки заменить нулями
Если все элементы какой-нибудь строки матрицы равны между собой, то все элементы такой строки заменить нулями! Как это сделать??,...

Четные строки матрицы К(8,3) заменить на значение Н.
господи люди, умоляю помогите решить мне эти задачки я вообще в программировании ноль!( а мне сдавать на этой неделе контрольную!!! моя...

Заменить четные числа матрицы на 1
Кто здесь умнички, помогите с задачей. (Дана матрица 5 на 3. Заменить четные числа на 1. Вывести матрицу до и после обработки).


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru