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

Заполнение StringGrid из массива

22.12.2013, 22:41. Показов 2978. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void __fastcall TForm1::Button3Click(TObject *Sender)
{
int n=2,i,j;
float a[10][10];
for(i=0;i<n;i++)
for(j=0;j<n;j++)
a[i][j]=StrToFloat(StringGrid1->Cells[i][j]);
for(i=0;i<n;i++){
for(j=0;j<n;j++){
 if(i=j) a[i][j]=a[i][j]-1;}}
 
for(i=0;i<n;i++)
for(j=0;j<n;j++){
StringGrid2->Cells[i][j]=FloatToStr(a[i][j]);
}}
Выглядит наверное пугающе.. но в чем ошибка?) Пытаюсь вывести в двумерный массив значения из стринггрида, а потом занести их в другой стринггрид из массива в котором значения на главной диагонали уменьшил на 1.

Добавлено через 46 минут
из всех элементов лежащих на главной диагонали вычитается, кроме 1ого
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.12.2013, 22:41
Ответы с готовыми решениями:

Заполнение StringGrid из массива
Доброго времени суток нуждающиеся и их спасители. Есть таблица StringGrid 5 столбцов и 17 строк, 1я стока и 1й столбец фиксированные,...

Заполнение трехмерного массива из StringGrid
Проблема заключается в том, что не могу сообразить как заполнить трехмерный массив из стринггрида. Имеется стринггрид...

Возможность вручную писать данные в ячейки StringGrid и заполнение ячеек StringGrid данными из файла после нажатия кнопки
Здравствуйте! Помогите, пожалуйста. Мне необходимо сделать следующее: реализовать возможность вручную писать данные в ячейки StringGrid...

4
 Аватар для demon_7
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
22.12.2013, 23:22
Цитата Сообщение от Sashak Посмотреть сообщение
if(i=j)
не вникал но может

C++
1
if(i==j)
1
 Аватар для Kulgar
511 / 196 / 26
Регистрация: 07.08.2013
Сообщений: 814
23.12.2013, 10:25
C++
1
2
3
4
5
6
7
8
9
10
11
12
void __fastcall TForm1::Button3Click(TObject *Sender)
{
    int n=2,i,j;
    float a[10][10];
    for(i=0;i<n;i++)
        for(j=0;j<n;j++)
        {
            a[i][j]=StrToFloat(StringGrid1->Cells[i][j]);
            if(i==j) a[i][j]=a[i][j]-1;
            StringGrid2->Cells[i][j]=FloatToStr(a[i][j]);
        }
}
1
98 / 81 / 14
Регистрация: 26.07.2013
Сообщений: 594
23.12.2013, 15:11
- Sashak, отформатировал Ваш код и сделал несколько упрощений:
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
  int  n=2, i, j;
  float  a[10][10];
 
  // копируем из СтрингГрид1 ПОДМАТРИЦУ ПОРЯДКА - n=2 во вспомогательный массив a.
  for ( i=0; i<n; i++ )
    for ( j=0; j<n; j++ )
      a[i][j] = StrToFloat( StringGrid1->Cells[i][j] );
  //--------------------------------------------------------------|
  // по всем строкам подматрицы 2-го порядка.
  for ( i=0; i<n; i++ )
  {  // <--- скобка НЕ НУЖНА.
    // по всем столбцам подматрицы 2-го порядка.
    for ( j=0; j<n; j++ )
    {  // <--- скобка НЕ НУЖНА.
      // если это ДИАГОНАЛЬНЫЙ ЭЛЕМЕНТ ... уменьшить его на единицу.
//      if ( i = j )    a[i][j] = a[i][j] - 1;  //(БЫЛО !)
      if ( i == j ) a[i][j] = a[i][j] - 1;` //(СДЕЛАЛ !)
    }  // <--- скобка НЕ НУЖНА.
  }  // <--- скобка НЕ НУЖНА.
  //--------------------------------------------------------------|
  //<<< ПРАВИЛЬНЕЕ И ПРОЩЕ НАПИСАННОЕ ВЫШЕ СДЕЛАТЬ ТАК: >>>
  // все диагональные элементы ПОДМАТРИЦЫ ПОРЯДКА n=2 уменьшить на единицу.
  for ( i=0; i<n; i++ )
    a[i][i]--;
  //--------------------------------------------------------------|
 
  // скопировать ПОДМАТРИЦУ ПОРЯДКА n=2 из вспомогательного массива в СтрингГрид2.
  for ( i=0; i<n; i++)
    for ( j=0; j<n; j++ )
    {  // <--- скобка НЕ НУЖНА.
      StringGrid2->Cells[i][j] = FloatToStr( a[i][j] );
    }  // <--- скобка НЕ НУЖНА.
- Что касается логики Вашего проекта, то я ее совсем не знаю и, следовательно, судить не могу ...
1
1 / 1 / 0
Регистрация: 12.10.2012
Сообщений: 46
23.12.2013, 16:28
Спасибо большое Нужно быть внимательней и проще
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
23.12.2013, 16:28
Помогаю со студенческими работами здесь

Заполнение StringGrid
Приветствую, ребята, что-то обессилил совсем :). Требуется заполнить строку таблицы определенным образом. Смысл какой. Есть строка, ее...

Заполнение StringGrid
Здравствуйте. Вот такой вопрос. На форме расположен StringGrid . Есть готовая таблица в Excel . Ну соответственно есть кнопка аля...

Заполнение stringgrid
Не знаю как точно выразиться , но попробую. мне нужно чтобы при нажатии на кнопку заполнялась одна строка таблицы, потом при нажатии на эту...

Сохранение из StringGrid массива в файл и загрузка из файла в StringGrid
Всем доброго времени суток =) У меня есть загрузка массива из StringGrid на Delphi 2010: //загрузка из файла procedure...

Заполнение масива из StringGrid
в общем, вот код: float x,a,b,c; for (short int i=1;i&lt;4;i++) { for (short int j=1;j&lt;4;i++) { ...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
Установка Emscripten SDK (emsdk) и CMake на Windows для сборки C и C++ приложений в WebAssembly (Wasm)
8Observer8 30.01.2026
Чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. Система контроля версиями Git. . .
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru