0 / 0 / 0
Регистрация: 03.10.2011
Сообщений: 44
1

Массив: Как сделать так, чтобы результирующий массив представлял собой измененный по заданным правилам первый массив?

14.10.2013, 22:32. Показов 1204. Ответов 7
Метки нет (Все метки)

Доброй ночи форумчане, очередной нубо-вопрос не требует отлагательств
имеется одномерный массив, из которого по заданным условиям отбирается элемент, делится и меняется местами с другим
ниже приведен код для результирующей кнопки - в данном варианте переменные найденные заносятся в пустой массив
как сделать чтобы результирующий массив (grid_r) представлял собой уже измененный первый массив (grid_in)

C++
1
2
3
4
5
6
7
8
9
void __fastcall TForm1::Button3Click(TObject *Sender)
{
 
if (e!=2)
{String s=grid_in->Cells[2][0];
grid_r->Cells[2][0]=grid_in->Cells[e][0]/StrToInt(Edit4->Text);
grid_r->Cells[e][0]=s;}
else if (e==2) {grid_in->Cells[2][0]=grid_in->Cells[e][0]/StrToInt(Edit4->Text);
}}
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.10.2013, 22:32
Ответы с готовыми решениями:

Как сделать, чтобы в ответе программа выводила измененный массив?
Дан массив из целых чисел А(5 х 5). Заменить максимальный элемент каждой строки на...

Заполнить начальный массив и найти результирующий массив согласно заданным условиям
Добрый вечер , помогите решить задачу пожалуйста :) Кассир магазина получила от покупателя 70 ...

Объединить массивы так, чтобы результирующий массив остался упорядоченным по возрастанию
Даны два массива A и B, элементы которых упорядочены по возрастанию. Объединить эти массивы так,...

Объединить массивы так, чтобы результирующий массив остался упорядоченным по убыванию
Даны три целочисленных массива A, B и C размера NA, NB, NC соответственно, элементы которых...

7
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
15.10.2013, 00:28 2
Цитата Сообщение от Мун Посмотреть сообщение
Доброй ночи форумчане
Страна большая часовых поясов много
Цитата Сообщение от Мун Посмотреть сообщение
как сделать чтобы результирующий массив (grid_r) представлял собой уже измененный первый массив (grid_in)
Не совсем понял чего вы хотите. Если предварительно копировать все данные из grid_in в grid_r, то это будет, то что вы хотите?
0
0 / 0 / 0
Регистрация: 03.10.2011
Сообщений: 44
15.10.2013, 00:41  [ТС] 3
Цитата Сообщение от gumi250 Посмотреть сообщение
Страна большая часовых поясов много

Не совсем понял чего вы хотите. Если предварительно копировать все данные из grid_in в grid_r, то это будет, то что вы хотите?
размер массива определяю трекбаром, в нем нахожу несколько значений по условию, и меняю их местами
как сделать, чтобы по нажатию на кнопку в другом стринг гриде формировался этот же массив но уже с поменянными элементами
приведенный мною код находит то, что мне нужно и записывает значения в нужные ячейки как раз второго стрингрида, но сам он пустой, нужен цикл для простого переноса оставшихся элементов из первоначального массива во второй
то есть по кнопке сгенерировать этот же массив, но с некоторыми изменениями
0
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
15.10.2013, 02:38 4
Так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void __fastcall TForm1::Button3Click(TObject*Sender)
{
    grid_r->RowCount=grid_in->RowCount;
    grid_r->ColCount=grid_in->ColCount;
    for(int R=grid_r->RowCount-1; R>=0; R--)
    for(int C=grid_r->ColCount-1; C>=0; C--)
    {
        grid_r->Cells[R][C]=grid_in->Cells[R][C];
    }
 
    if (e!=2)
    {
        String s=grid_in->Cells[2][0];
        grid_r->Cells[2][0]=grid_in->Cells[e][0]/StrToInt(Edit4->Text);
        grid_r->Cells[e][0]=s;
    }
    else if (e==2)
        grid_in->Cells[2][0]=grid_in->Cells[e][0]/StrToInt(Edit4->Text);
}
0
0 / 0 / 0
Регистрация: 03.10.2011
Сообщений: 44
16.10.2013, 16:23  [ТС] 5
Цитата Сообщение от gumi250 Посмотреть сообщение
Так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
void __fastcall TForm1::Button3Click(TObject*Sender)
{
    grid_r->RowCount=grid_in->RowCount;
    grid_r->ColCount=grid_in->ColCount;
    for(int R=grid_r->RowCount-1; R>=0; R--)
    for(int C=grid_r->ColCount-1; C>=0; C--)
    {
        grid_r->Cells[R][C]=grid_in->Cells[R][C];
    }
 
    if (e!=2)
    {
        String s=grid_in->Cells[2][0];
        grid_r->Cells[2][0]=grid_in->Cells[e][0]/StrToInt(Edit4->Text);
        grid_r->Cells[e][0]=s;
    }
    else if (e==2)
        grid_in->Cells[2][0]=grid_in->Cells[e][0]/StrToInt(Edit4->Text);
}
не крутится, переносит только первый элемент

Добавлено через 22 часа 1 минуту
0
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
16.10.2013, 16:53 6
Сначала данные копируются из grid_in в grid_r. Далее идет ваш код. Что не так то?
0
0 / 0 / 0
Регистрация: 03.10.2011
Сообщений: 44
16.10.2013, 21:01  [ТС] 7
Цитата Сообщение от gumi250 Посмотреть сообщение
Сначала данные копируются из grid_in в grid_r. Далее идет ваш код. Что не так то?
даже без моего кода данные не копируюся, переносится только первый элемент массива
0
435 / 402 / 57
Регистрация: 06.02.2012
Сообщений: 1,384
16.10.2013, 23:45 8
А у меня, мой кусочек кода все копирует из grid_in в grid_r.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.10.2013, 23:45
Помогаю со студенческими работами здесь

Объединить массивы так, чтобы результирующий массив C остался упорядоченным по возрастанию
1.Даны два массива A и B, элементы которых упорядочены по возрастанию. Объединить эти массивы так,...

Объединить массивы так, чтобы результирующий массив C остался упорядоченным по возрастанию
С помощью массива. Даны два массива A и B размера 5, элементы которых упорядочены по...

Файлы и массив (сделать так, чтобы массив заполнялся значениями из этого же файла)
Здравствуйте.Помогите пожалуйста с задачкой.Я сделал так что бы массив выводился в файл.Каждый...

Объединить массивы так, чтобы результирующий массив С (размера 10) остался упорядоченным по возрастанию
6.Даны два массива А и В размера 5, элементы которых упорядочены по возрастанию. Объединить эти...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru