Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 13

Проверка строк и столбцов на одинаковые числа

28.01.2013, 15:56. Показов 2797. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, помогите пожалуйста с проблемой. Делаю игру "Судоку", у меня есть 81 Едитка, в которых есть числа, как сделать что бы шла проверка строк и столбцов на одинаковые числа, как это реализовать в С++ Builder?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.01.2013, 15:56
Ответы с готовыми решениями:

Вывести номера строк и столбцов в которых есть одинаковые элементы.
Дана матрица A(nxn). Вывести номера строк и столбцов в которых есть одинаковые элементы.

Работа с матрицами: ввод/вывод, проверка условия для строк/столбцов и элементов
Добрый вечер всем! Помогите пожалуйста с прогой. Дано:Найти в матрице последнюю строку, все элементы которой упорядочены по возрастанию

Из исходной таблицы в n строк и 6 столбцов нужно сделать таблицу-результат из кучи строк и 6 столбцов
Добрый вечер, учусь в универcитете, начал изучать макросы и подвернулась "интересная" задача - из одной таблички(маленькой)...

21
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
28.01.2013, 16:00
Цитата Сообщение от Logical Посмотреть сообщение
81 Едитка
Чем реализована? StringGrid?
0
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 13
28.01.2013, 16:21  [ТС]
Цитата Сообщение от SatanaXIII Посмотреть сообщение
Чем реализована? StringGrid?
Нет, сделал компонентом Panel а в ней Edit.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
28.01.2013, 16:31
Цитата Сообщение от Logical Посмотреть сообщение
Нет, сделал компонентом Panel а в ней Edit.
У вас 81 Edit? Лихо. А как называются - согласно координатам или Edit1, Edit2 и так далее? От этого зависит либо сделать цикл с перебором всех элементов панели, либо вручную перебирать.

А не хотите переделать под StringGrid?
0
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 13
28.01.2013, 16:48  [ТС]
Цитата Сообщение от SatanaXIII Посмотреть сообщение
У вас 81 Edit?
Да.

Цитата Сообщение от SatanaXIII Посмотреть сообщение
А как называются - согласно координатам или Edit1, Edit2 и так далее?
Ну у меня по сути их нет на форме, они создаются массивом.



Цитата Сообщение от SatanaXIII Посмотреть сообщение
А не хотите переделать под StringGrid?
Нет, мне именно нужно так.
0
Почетный модератор
Эксперт С++
 Аватар для SatanaXIII
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
28.01.2013, 16:56
Цитата Сообщение от Logical Посмотреть сообщение
Ну у меня по сути их нет на форме, они создаются массивом.
Покажите пожалуйста код, где они создаются, а то так гадать не очень продуктивно.

Если они создаются двумерным массивом, тогда двойной цикл подряд - перебирать построчно/постолбцово. Если одномерным, тогда сложнее.
0
 Аватар для BRcr
4043 / 2333 / 292
Регистрация: 03.02.2011
Сообщений: 5,066
Записей в блоге: 10
28.01.2013, 17:29
C любым массивом все легко и просто.
Пример.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <iostream>
 
int main(){
 int * arr[81];
 for(int i = 0; i < 81; ++i){
  arr[i] = new int; 
  *arr[i] = i + 1; 
  cout << *arr[i] << " ";
 }
 cout << endl << endl;
 for(int i = 0, k; i < 9; ++i) {
  for(k = 0; k < 9; ++k){
   cout << **(arr + i * 9 + k) << "\t";
  }
  cout << endl;
 }
}
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
28.01.2013, 17:45
Цитата Сообщение от BRcr Посмотреть сообщение
C++
1
arr[i] = new int;// Может  new int[size] ??
Что это ?
0
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 13
28.01.2013, 18:04  [ТС]
Вот весь листинг. То есть создание самого массива, и подгрузка цифр из файла

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
#include "Unit1.h"
 
#include <string.h>
#include <fstream.h>
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
TEdit *Ed[9];
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    char s[82];
    ifstream in("sud1.sud");
    in>>s;
    for(int i=0;i<strlen(s);i++)
    {
        if(s[i]!='0')
        {
                Ed[i]->Color=clSilver;
                Ed[i]->ReadOnly=true;
                Ed[i]->Text=s[i];
 
        }
    }
    in.close();
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::FormCreate(TObject *Sender)
{
  int a=8, b=8;
  for(int i=1;i<82;i++)
  {
    Ed[i] = new TEdit (Form1);
    Ed[i]->Parent=Panel2;
    Ed[i]->Top=a;
    Ed[i]->Left=b;
    Ed[i]->Height=28;
    Ed[i]->Width=28;
    Ed[i]->Font->Size=12;
    Ed[i]->Font->Style=TFontStyles()<<fsBold;
    b+=32;
    if(i==9||i==18||i==27||i==36||i==45||i==54||i==63||i==72||i==81)
    {
        a+=32;
        b=8;
    }
  }
}
//---------------------------------------------------------------------------
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
28.01.2013, 18:30
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <vector>
//---------------------------------------------------------------------------
// Создание таблицы 5х5
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
const size_t col_count=5;
const size_t row_count=5;
 
std::vector<std::vector<TEdit*> > vvE(col_count,std::vector<TEdit*>(row_count));
 
for(size_t c=0; c<col_count; c++)
    for(size_t r=0; r<row_count; r++)
     {
         vvE[c][r]= new TEdit(this);
         vvE[c][r]->Parent= Panel1;
         vvE[c][r]->Width= vvE[c][r]->Width/2;
         vvE[c][r]->Left= c* vvE[c][r]->Width+15;
         vvE[c][r]->Top=  r* vvE[c][r]->Height+5;
     }
}
//---------------------------------------------------------------------------
0
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 13
28.01.2013, 18:33  [ТС]
Цитата Сообщение от Avazart Посмотреть сообщение
Создание таблицы 5х5
Простите, не понял, зачем мне таблица?
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
28.01.2013, 18:36
Ну так у вас же таблица из Edit- ов ?

Поправка
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <vector>
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
const size_t col_count=5;
const size_t row_count=5;
 
std::vector<std::vector<TEdit*> > vvE(col_count,std::vector<TEdit*>(row_count));
 
for(size_t c=0; c<col_count; c++)
    for(size_t r=0; r<row_count; r++)
     {
         vvE[c][r]= new TEdit(this);
         vvE[c][r]->Parent= Panel1;
         vvE[c][r]->Width= vvE[c][r]->Width/2;
         vvE[c][r]->Left= c* (vvE[c][r]->Width+5); // !!!
         vvE[c][r]->Top=  r* (vvE[c][r]->Height+5); // !!!
     }
}
//---------------------------------------------------------------------------
Миниатюры
Проверка строк и столбцов на одинаковые числа  
0
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 13
28.01.2013, 18:51  [ТС]
Цитата Сообщение от Avazart Посмотреть сообщение
// Создание таблицы 5х5
Вот такая.
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
28.01.2013, 18:53
А ну хз что вам надо и почему StringGrid не подходит изъясняйтесь точнее ...
0
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 13
28.01.2013, 19:10  [ТС]
Цитата Сообщение от Avazart Посмотреть сообщение
А ну хз что вам надо и почему StringGrid не подходит изъясняйтесь точнее ...
У меня эта программа - это курсовой проект, и это одно из требований, сам не знаю почему.
Если на то пошло то можно и в StringGrid, главное просто сделать.
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
28.01.2013, 19:11
Ну так помещайте каждое число в отдельной ячейке - вот вам и получится таблица и сравнивать не проблема в ней...
0
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 13
28.01.2013, 19:26  [ТС]
Цитата Сообщение от Avazart Посмотреть сообщение
Ну так помещайте каждое число в отдельной ячейке - вот вам и получится таблица и сравнивать не проблема в ней...
Я добавляю числа с файла, то есть под работы сделано,а вон именно что бы проверять не понял, посмотрите листинг я кидал, может что то подскажете.
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
28.01.2013, 19:29
Пару строчек кода это не работа...
Грузить числа с файла в StringGrid не проблема... https://www.cyberforum.ru/blog... tom27.html
0
0 / 0 / 0
Регистрация: 20.01.2013
Сообщений: 13
28.01.2013, 19:39  [ТС]
Цитата Сообщение от Avazart Посмотреть сообщение
Пару строчек кода это не работа...
Грузить числа с файла в StringGrid не проблема... https://www.cyberforum.ru/blog... tom27.html
так это вроде сохранение а не загрузка с файла.
0
Эксперт С++
 Аватар для Avazart
8488 / 6155 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
28.01.2013, 19:40
И сохранение и загрузка...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.01.2013, 19:40
Помогаю со студенческими работами здесь

Удаление числа из строк и столбцов
Задача :Дано число k и матрица размера N×M. Удалить строку1|столбец2 матрицы с номером k. Не могу разобраться с удалением,помогите с...

Ввод числа строк и столбцов в матрицах
Вот наконец-то с вашей помощью дописал программу, которая перемножает 2 матрицы. У меня получился вот такой код. #include...

Программа жалуется на чтение числа строк и столбцов из файла
Здравствуйте. Посмотрите, пожалуйста, что можно сделать. У меня не процедура сделана на Лазарусе, но, кажется, у них много схожего. Нужно...

Создание таблицы с вводом числа строк и столбцов с клавиатуры
Как в C# создать таблицу(количество строк и столбцов вводиться с клавиатуры)? Как из этой таблицы брать данные для вычислений?

Представление матрицы произвольного размера с возможностью изменения числа строк и столбцов
Помогите!!! Дальше не знаю как!!! Разработать алгоритм и программу обеспечивающую представление матрицы произвольного размера с...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru