Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
 Аватар для IrishaIrinaChe
29 / 29 / 3
Регистрация: 23.09.2010
Сообщений: 203

Не выводится матрица в memo

25.11.2010, 19:05. Показов 1435. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
доброго времени суток, форумчане!.
я написала обработчик для кнопки, при нажатии которой текст из окна memo1 считывается в массив char buf[k], каждому элементу массива buf находится соответствующий элемент в массиве s(buf[j]==s[i]), после чего соответствующая (i-я)строка массива cod копируется а массив a[k][block] .вот. после чего в окне memo4 должен быть выведен массив a[k][block].
пример
окно memo1: ab
окно memo4: 000000000001
вот пример для консоли(он работает))
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
int main()
{
 clrscr();
 cout << Rus("Привет ,Лопух!")<< endl;
 int i=100,j=0;
 cout<<"GOGOGOGO!!!\n" ;
 getch();
 
 char *buf2=new char[i];      //декларация массива для чтение строк в файле
 FILE *ifin2;           //открытие файла для чтения
 ifin2=fopen("C:\\Out.txt","r");
 if(!ifin2)
 {              //если попытка не удалась
    puts("Ne mogu otkrut fail Out");
    getch();
    return 1;
 }
 
 i=0;
 while(!(feof(ifin2)))     //посчитали количество символов в файле с исходящим сообщением
 {
  fscanf(ifin2,"%c",&buf2[i]);   //считали символ входного сообщения
  i++;
 }
 cout<<"\nk="<<i<<"\n";
 
 k=i-1;   //не считаем символ конца файла
 
 int **a=new int *[k];
 int **arr=new int *[k];
 
 for(i=0;i<k;i++)
 {
  a[i]=new int[block]; //переходный массив: строка-код буквы сообщения
  arr[i]=new int[block]; //запасной массив. все изменения храним в нём
 }
 
 cout << Rus("Входное сообщение")<< endl;
 for(i=0;i<k;i++)
 {
  cout<<buf2[i];    //буква сообщения
 }
 
 cout <<"\n"<< Rus("Код входного сообщения")<< endl;
 i=0;
 int y;
 fseek(ifin2,0,SEEK_SET);    //указатель в начало файла
 fscanf(ifin2,"%c",&buf2[i]);  //счиатли первый символ
 while(!(feof(ifin2)))
 {
//  cout<<buf2[i];    //буква сообщения
  for(j=0;j<Al;j++) //перебираем алфавит
   if(buf2[i]==s[j])
   {
    for(y=0;y<block;y++)
    {
      a[i][y]=cod[j][y];  //записываем код символа в переходный массив
//      cout<<a[i][y];
    }
//    cout<<" ";
   }
  i++;
  fscanf(ifin2,"%c",&buf2[i]); //считали следующий символ входного сообщения
 }
 
// cout<<"\n";
 for(i=0;i<k;i++)
 {
  for(j=0;j<block;j++)
  cout<<a[i][j];
//  arr[i][j]=a[i][j];
  cout<<".";
 }
 
 perv(a,arr);
 
 cout<<"\nNov block\n";
  for(j=0;j<block;j++)
   cout<<arr[0][j];
 
 coder(a,arr,k);
 
 preo(arr,k);
 
 getch();
 delete[]buf2;
 delete[]a;
 delete[]arr;
 fclose(ifin2);
 return 0;
}
а вот то, что я пытаюсь сделать на форме:
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
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 k=Memo1->Text.Length()+1;   //запомнили количество символов сообщения
 buf = new char[Memo1->Text.Length() + 1];   //текст memo в массиве buf
 strcpy (buf, Memo1->Text.c_str());   //Копирует строку  string2 в string1,  включая
                                     //завершающую литеру '\0'. Возвращает string1.
// Memo2->Text = buf;   //проверка
 int **a=new int *[k];
 int **arr=new int *[k];
 
 int i,j;
 for(i=0;i<k;i++)
 {
  a[i]=new int[block]; //переходный массив: строка-код буквы сообщения
  arr[i]=new int[block]; //запасной массив. все изменения храним в нём
 }
 
 int y;
 
 for(i=0;i<k;i++)
  for(j=0;j<Al;j++) //перебираем алфавит
  {
   if(buf[i]==s[j])
   {
    for(y=0;y<block;y++)
    {
      a[i][y]=cod[j][y];  //записываем код символа в переходный массив
      Form1->Memo4->Lines->Add(IntToStr(a[i][j]));  //
    }
  //  Memo4->Lines->Add(buf[i]);   
  //  Memo4->Text = IntToString(b);
   }
//   else
  // Memo4->Lines->Add("нету");
  }
/*
 for(i=0;i<k;i++)
 for(j=0;j<block;j++)
  Memo4->Text = a[i][j]; //[i]; */  //проверка
}
по факту, ни один из вариантов вывода в memo4 матрицы 'a' не работает в полной мере. максимум-вывод кода первого элемента, и то каждый элемент a[i][j] с новой строки.
помогите пожалуйста!!!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.11.2010, 19:05
Ответы с готовыми решениями:

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

Квадратная матрица в Memo
Здравствуйте, столкнулась с таким заданием, не получается даже заполнить матрицу, помогите, пожалуйста. Задание: Осуществить заполнение...

Memo как матрица чисел
Пытаюсь создать программу, производящую действия с матрицей чисел 5х5. Матрица должна задаваться через с помощью компонета Memo. Не...

4
Эксперт С++
 Аватар для MikeSoft
3956 / 1811 / 184
Регистрация: 21.11.2009
Сообщений: 2,540
25.11.2010, 19:17
IrishaIrinaChe, что же вы никак простой компонент Memo не осилите ... все темы о нём...

Код анализировать не стал, по названию темы постараюсь простым примером раскрыть суть выведения матрицы в текстовое поле:
C++
1
2
3
4
5
6
7
8
9
10
const int Size = 3;
int Mass[Size][Size] = { {1,2,3}, {4,5,6}, {7,8,9} };
 
Memo1->Clear();
for (int i = 0; i < Size; i++) {
  for (int j = 0; j < Size; j++) {
    Memo1->Text = (Memo1->Text + IntToStr(Mass[i][j]) + " ");
    if (j == Size - 1) Memo1->Text = Memo1->Text + "\r\n";
  }
}
Откомпилируйте, думаю суть занесения будет ясна...
2
 Аватар для IrishaIrinaChe
29 / 29 / 3
Регистрация: 23.09.2010
Сообщений: 203
25.11.2010, 20:11  [ТС]
MikeSoft, ура! я поняла!
если честно, то изучать Builder начала совсем недавно, а с компонентом memo вообще познакомилась вчера) информации у меня по нему очень мало, да и в интернете с маху так не найти)))
спасибо вам большое)))
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
25.11.2010, 20:15
IrishaIrinaChe, да что же ее искать, f1 откроет перед вами все возможности всех стандартных компонентов, и не только это
1
 Аватар для IrishaIrinaChe
29 / 29 / 3
Регистрация: 23.09.2010
Сообщений: 203
25.11.2010, 20:17  [ТС]
хо-хо, да вы правы, Lord_Voodoo!
спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.11.2010, 20:17
Помогаю со студенческими работами здесь

Не выводится из StringGrid ответ в Memo
Помогите!!! Не выводит из StringGrid ответ в Memo не могу понять где ошибка unit Unit1; interface uses Windows, Messages,...

Delphi 7: При нажатии кнопки Button3 результат не выводится в Memo
Помогите при нажатии кнопки Button3 результат не выводится в мемо procedur getKoef(var a,b,c:real); begin with Form1 do ...

Не выводится результат в поле Memo, при этом не вылазит никаких ошибок...
Не выводится результат в поле Memo, при этом не вылазит никаких ошибок. Сама задача: Для натурального числа k вывести фразу &quot;мы...

Вывод результата работы нескольких потоков в Memo - выводится данные только последнего
Всем привет. По нажатию кнопки я создаю определенное количество потоков. mythread := tmythread.create(false); в каждом потоке у...

Не выводится матрица
не выводится матрица и a не равно 1, то есть поток не работает #include &lt;process.h&gt; #include &lt;stdio.h&gt; #include...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru