Форум программистов, компьютерный форум, киберфорум
C для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 12.01.2023
Сообщений: 5
1

Задача о выводе двумерного массива, состоящего из квадрантов

12.01.2023, 12:37. Показов 620. Ответов 8

Author24 — интернет-сервис помощи студентам
Разработать программу на языке C, конструирующую матрицу размера 4n*4n, в которой все элементы разбиты на 16 квадрантов размера n*n и внутри квадрантов следующие одинаковые значения:
(0|1|4|5)
(2|3|6|7)
(4|5|0|1)
(6|7|2|3)

Сколько ни бьюсь, не могу найти ключ к решению. Сложно представить, как это реализовать :с
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.01.2023, 12:37
Ответы с готовыми решениями:

Исправьте, пожалуйста, ошибку в коде при выводе массива , состоящего из слов
Почему не выводит массив ? package pro01; public class test { public static void test1(String...

Формирование и вывод на экран одномерного массива, состоящего из полусумм строк двумерного массива
:gsorry:помогите.... Составьте программу формирования и вывода на экран одномерного...

Найти сумму элементов в каждой строке двумерного массива, состоящего из целых чисел
Найти сумму элементов в каждой строке двумерного массива состоящего из целых чисел размер m на n.

Найти сумму элементов в каждой строке двумерного массива, состоящего из целых чисел
Найти сумму элементов в каждой строке двумерного массива, состоящего из целых чисел. Размер m x n....

Найти количество отрицательных элементов в каждой строке двумерного массива, состоящего из 7 строк и 5 столбцов.
Найти количество отрицательных элементов в каждой строке двумерного массива, состоящего из 7 строк...

8
1516 / 1110 / 580
Регистрация: 17.03.2022
Сообщений: 3,523
12.01.2023, 12:59 2
То, что "внутри квадрантов" - это вроде матрица 4x4. Следует ли это понимать как условие n=4? Если нет - задача недоформулирована.
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7794 / 4617 / 2830
Регистрация: 22.11.2013
Сообщений: 13,112
Записей в блоге: 1
12.01.2023, 13:33 3
Цитата Сообщение от Pphantom Посмотреть сообщение
Следует ли это понимать как условие n=4? Если нет - задача недоформулирована
С чего вдруг?
n=1 => 4x4
n=2 => 8x8
...
n=5 => 20x20
...
0
1516 / 1110 / 580
Регистрация: 17.03.2022
Сообщений: 3,523
12.01.2023, 13:50 4
Цитата Сообщение от bormant Посмотреть сообщение
С чего вдруг?
Кхм... ну, пожалуй, так можно это толковать, да, только тогда непонятно, почему оно "квадрант". Я как-то привык к тому, что это слово обозначает 1/4 часть чего-либо.

Добавлено через 10 минут
Если считать верной трактовку bormant, то тогда как-то так:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<stdio.h>
 
int b[16]={0,1,4,5,2,3,6,7,4,5,0,1,6,7,2,3};
 
int n=3;
 
int main()
{
  for(int j=0;j<4*n;++j)
  {
    for(int i=0;i<4*n;++i) printf("%1d ",b[i%4+4*(j%4)]);
    printf("\n");
  }
}
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7794 / 4617 / 2830
Регистрация: 22.11.2013
Сообщений: 13,112
Записей в блоге: 1
12.01.2023, 14:36 5
C
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
int main() {
#define M 4
  int tmpl[M][M] = {{0, 1, 4, 5}, {2, 3, 6, 7},{4, 5, 0, 1},{6, 7, 2, 3}};
  int n=3, a[M*n][M*n];
  for (int i=M*n; i-->0;) for (int j=M*n; j-->0;) a[i][j]=tmpl[i/n][j/n];
 
  for (int i=0; i<M*n; ++i) {
    for (int j=0; j<M*n; ++j) printf("  %d",a[i][j]); printf("\n");
  }
  return 0;
}
Добавлено через 4 минуты
Pphantom,
C
11
  b[i/4+j/4]
0
1516 / 1110 / 580
Регистрация: 17.03.2022
Сообщений: 3,523
12.01.2023, 14:40 6
bormant, нет, вариант b[i/4+j/4] у меня не сработает, нужно именно то, что я написал.
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7794 / 4617 / 2830
Регистрация: 22.11.2013
Сообщений: 13,112
Записей в блоге: 1
12.01.2023, 15:08 7
Не совсем.
0
1516 / 1110 / 580
Регистрация: 17.03.2022
Сообщений: 3,523
12.01.2023, 15:14 8
Цитата Сообщение от bormant Посмотреть сообщение
Не совсем.
Так мы опять, как оказалось, разным образом трактуем условия задачи. Я считал, что должен повторяться исходный блок 4x4 (и мой код делает именно это).

В общем, пусть ТС смотрит на оба варианта и выбирает, какой из них соответствует желаемому.
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7794 / 4617 / 2830
Регистрация: 22.11.2013
Сообщений: 13,112
Записей в блоге: 1
12.01.2023, 15:25 9
Цитата Сообщение от Alexasni Посмотреть сообщение
16 квадрантов размера n*n и внутри квадрантов следующие одинаковые значения
Вот я и делал 16 квадратов n x n, внутри каждого одинаковые значения по рисунку.

Добавлено через 2 минуты
Но да, при повторном прочтении второй вариант представляется тоже вполне возможным...
0
12.01.2023, 15:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.01.2023, 15:25
Помогаю со студенческими работами здесь

Ошибка в выводе двумерного массива
Класс матрица наследует элементы класса массива чисел. При использовании функции show() программа...

Ошибка в выводе двумерного массива
Почему второй вариант выдает ошибку? public void print() { for (double x : arr) ...

Артефакты при выводе двумерного массива
Построил-таки красную решетку с сотой попытки )) Но на первых клетках появляется черный цвет, хотя...

Ошибка при выводе двумерного массива
Ребят помогите решить проблему с массивом. Вот задание: Дан целочисленный массив X. Заменить в...

Табуляция при выводе двумерного массива
Привет,подскажите как выровнять элементы массива при выводе,чтобы все было ровно,как в шахматах. ...

Странности при выводе двумерного массива
Доброго времени суток! Начал делать игру &quot;Гонки&quot;, что на тетрисе была среди прочих игр. Карта...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru