Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.10.2021, 08:10   #1
sarscga
Новичок
Джуниор
 
Регистрация: 04.10.2021
Сообщений: 2
По умолчанию двумерные массивы - Заполнить первую матрицу случайными числами в диапазоне 0 ÷ 99 и вывести ее на экран

Даны две матрицы размерности 5х5. Заполнить первую матрицу случайными числами в диапазоне 0 ÷ 99 и вывести ее на экран. Заполнить вторую матрицу с клавиатуры и вывести ее на экран. Поменять элементы главной диагонали первой матрицы на элементы побочной диагонали второй матрицы. Вывести матрицы на экран. Подсчитать и вывести на экран сумму элементов с четными индексами строк и столбцов в первой матрицы и с нечетными индексами второй матрицы. Найти и вывести на экран элементы первой и второй матриц, значение которых больше или равно разности суммы первой матрицы и суммы второй матрицы.


Нужно решение последнего действия, вычисление выведения на экран элементов, которые больше или равны разности суммы матриц.
Кто может, помогите пожалуйста
Код:
#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <time.h>
#include <math.h>
 
#define N 5
 
void print(int (*m)[N]) {
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            printf("%d\t", m[i][j]);
        }
        printf("\n");
    }
}
 
int main() {
    srand(time(NULL)); // смена точки входа в таблицу ПСЧ
    setlocale(LC_ALL, "");//подключение русского языка
 
    int mass1[N][N];
    int mass2[N][N];
 
    printf("Первая матрица:\n");//нахождение первой матрицы со случайными числами
    int sum=0;
    int sum_ch=0;
    for (int i = 0; i < N; i++) {
        for (int j = 0; j < N; j++) {
            mass1[i][j] = 0 + rand() % (99 - 0 + 1);
            sum=sum+mass1[i][j];//нахождение суммы элементов матрицы
            if(i%2==0 & j%2==0)//нахождение суммы элементов с четными индексами строк и столбцов
                sum_ch+=mass1[i][j];
        
        
        }
    }
    print(mass1);
    printf("Сумма элементов первой матрицы равна sum=%d\n", sum);
    printf("\n Сумма элементов с четными индексами строк и столбцов равна sum_ch=%4d", sum_ch);
    printf("\n");
    
    int s=0;
    int sum_nech=0;
    printf("Вторая матрица:\n");//нахождение второй матрицы вводом с клавиаутры
    for(int i = 0; i < 5; i++) {
        for (int j = 0; j < 5; j++) {
            printf ("mass2[%d][%d]=", i, j);
            scanf ("%d", &(mass2[i][j]));
            s=s+mass2[i][j];//нахождение суммы элементов матрицы
            if(i%3==0 & j%2==0)//нахождение суммы элементов с нечетными индексами строк и столбцов
                sum_nech+=mass2[i][j];
        }
       
    }
        
    
    printf("\n");
    print(mass2);
    printf("Сумму элементов второй матрицы равна s=%d", s);
    printf("\n");
    printf("\Сумма элементов с нечетными индексами строк и столбцов равна %4d", sum_nech);
    printf("\n");
    
    // Поменять элементы главной диагонали первой матрицы на элементы побочной диагонали второй матрицы. Вывести матрицы на экран.
    int tmp;
    for (int i = 0; i < N; i++) {
        tmp = mass1[i][i];//определение главной диагонали
        mass1[i][i] = mass2[N - i - 1][i];//определение побочной диагоали и обмен
        mass2[N - i - 1][i] = tmp;//обмен побочной и главной диагоналей
    }
    printf("\nПосле обмена диагоналей\n");
    printf("Первая матрица:\n");
    print(mass1);
    printf("\nВторая матрица:\n");
    print(mass2);
    
    int raz=0;{ //нахождение разности сумм двух матриц
    raz=sum-s;
    }
        printf("Разность сумм двух матриц равна raz=%d", raz);
    
    
    for (int i = 0; i < N; i++) { //нахождение элемента, которые больше или равен разности суммы двух матриц
        for (int j = 0; j < N; j++) {
            if (mass1[i][j]>=raz)
                printf("mass1[i][j]",mass1[i,j]);
    
      
        
        
    return 0;
}
    }
}
sarscga вне форума Ответить с цитированием
Старый 04.10.2021, 14:46   #2
Arigato
Высокая репутация
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Сообщений: 15,551
По умолчанию

Название темы придумайте такое, чтобы была ясна суть задачи. а дубли удалены.

Последний раз редактировалось Alar; 04.10.2021 в 15:01. Причина: ...
Arigato вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Заполнить матрицу уникальными случайными числами. Помогите правильно составить алгоритм кода. С++ OR1GAMI Общие вопросы C/C++ 3 24.11.2017 09:52
[C++] Помогите заполнить матрицу случайными числами bekabeka Помощь студентам 1 03.03.2017 12:09
Заполнить матрицу случайными числами... DashGames Паскаль, Turbo Pascal, PascalABC.NET 2 12.02.2014 22:13
задача на паскале: Матрицу размером 10Х10 заполнить случайными трехзначными числами. Отсортировать по строкам. докторлинус Помощь студентам 8 29.10.2013 09:45
получить прямоугольную матрицу A,заполнить натуральными случайными числами, записать наибольший общий делитель двух чисел! AntonKalinin01 Помощь студентам 0 26.05.2013 07:07