Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > C/C++/С#


Ответ
 
Опции темы Опции просмотра
Старый 11.10.2012, 20:50   #1 (permalink)
pave
Новичок
 
Регистрация: 11.10.2012
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помогите, пожалуйста, написать программу на С++

Помогите пожалуйста написать программу на С++ для нахождения в матрице 3х3 трех наибольших элементов и вывод их на экран в окошки Edit. Вот начал, а как дальше не знаю

float M[4][4];
int Max,i,j;
Max=M[1][1];
M[1][1]=StrToFloat(Edit1->Text);
M[1][2]=StrToFloat(Edit2->Text);
M[1][3]=StrToFloat(Edit3->Text);
M[2][1]=StrToFloat(Edit4->Text);
M[2][2]=StrToFloat(Edit5->Text);
M[2][3]=StrToFloat(Edit6->Text);
M[3][1]=StrToFloat(Edit7->Text);
M[3][2]=StrToFloat(Edit8->Text);
M[3][3]=StrToFloat(Edit9->Text);
for(i=1;i<=3;i++)
{for(j=1;j<=3;j++)
pave вне форума   Ответить с цитированием

Старый 11.10.2012, 20:50
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Дам вам ссылки на темы, которые имеют что то общее с вашей темой

Пожалуйста, помогите написать программу в Паскале.
Пожалуйста, помогите написать программу на Паскале
Помогите пожалуйста написать программу в С++

Старый 12.10.2012, 07:47   #2 (permalink)
Fenix
404
 
Аватар для Fenix
 
Регистрация: 10.01.2010
Сообщений: 1,749
Записей в дневнике: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 3868
По умолчанию

Двумерный массив в C++ - посмотрите мой код. Там есть нахождение максимальных в двумерном массиве, думаю переделать не составит труда.
Если не получится, выложите свой вариант. Вечерком гляну.
Fenix вне форума   Ответить с цитированием
Старый 12.10.2012, 17:46   #3 (permalink)
pave
Новичок
 
Регистрация: 11.10.2012
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Я прошу написать продолжение того что я начал. Я только начал изучать язык и поэтому мне многое не понятно, как можно проще допишите ее
pave вне форума   Ответить с цитированием
Старый 12.10.2012, 21:03   #4 (permalink)
pave
Новичок
 
Регистрация: 11.10.2012
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

void __fastcall TForm1::Button1Click(TObject *Sender)
{
float M[4][4];
int Max,i,j;
Max=M[1][1];
M[1][1]=StrToFloat(Edit1->Text);
M[1][2]=StrToFloat(Edit2->Text);
M[1][3]=StrToFloat(Edit3->Text);
M[2][1]=StrToFloat(Edit4->Text);
M[2][2]=StrToFloat(Edit5->Text);
M[2][3]=StrToFloat(Edit6->Text);
M[3][1]=StrToFloat(Edit7->Text);
M[3][2]=StrToFloat(Edit8->Text);
M[3][3]=StrToFloat(Edit9->Text);
for(int i=1;i<4;i++)
{for(int j=1;j<4;j++)
{ if(Max<M[4][4]) Max=M[4][4];
}
}
Edit10->Text=FloatToStr(Max);
}



Вот так написал не работает((((
pave вне форума   Ответить с цитированием
Старый 12.10.2012, 21:41   #5 (permalink)
Fenix
404
 
Аватар для Fenix
 
Регистрация: 10.01.2010
Сообщений: 1,749
Записей в дневнике: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 3868
По умолчанию

Код:
void __fastcall TForm1::Button1Click(TObject *Sender)
{
float M[4][4];
int Max,i,j;
Max=M[1][1];
M[1][1]=StrToFloat(Edit1->Text);
M[1][2]=StrToFloat(Edit2->Text);
M[1][3]=StrToFloat(Edit3->Text);
M[2][1]=StrToFloat(Edit4->Text);
M[2][2]=StrToFloat(Edit5->Text);
M[2][3]=StrToFloat(Edit6->Text);
M[3][1]=StrToFloat(Edit7->Text);
M[3][2]=StrToFloat(Edit8->Text);
M[3][3]=StrToFloat(Edit9->Text);
for(int i=1;i<4;i++)
{for(int j=1;j<4;j++)
{ if(Max<M[i][j]) Max=M[i][j];
}
}
Edit10->Text=FloatToStr(Max);
}
И почему Вы начинаете счетчики с 1? В Си принято от нуля. Следовательно, M[4][4] - создается матрица 4*4 и у Вас 7 ячеек типа int не используются. Вам надо было объявлять M[3][3] и счетчики делать от нуля до 3х.
И да, этот код выведет только максимальный элемент.
Fenix вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 12.10.2012, 21:57   #6 (permalink)
pave
Новичок
 
Регистрация: 11.10.2012
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

да я зная,я упростил себе задачу)))


void __fastcall TForm1::Button1Click(TObject *Sender)
{
float M[3][3];
int Max,i,j;
Max=M[1][1];
M[1][1]=StrToFloat(Edit1->Text);
M[1][2]=StrToFloat(Edit2->Text);
M[1][3]=StrToFloat(Edit3->Text);
M[2][1]=StrToFloat(Edit4->Text);
M[2][2]=StrToFloat(Edit5->Text);
M[2][3]=StrToFloat(Edit6->Text);
M[3][1]=StrToFloat(Edit7->Text);
M[3][2]=StrToFloat(Edit8->Text);
M[3][3]=StrToFloat(Edit9->Text);
for(int i=1;i<=3;i++)
{for(int j=1;j<=3;j++)
{ if(Max<M[3][3]) Max=M[3][3];
}
}
Edit10->Text=FloatToStr(Max);
}


Но все равно не то((( выдает число два, подскажите как сделать
pave вне форума   Ответить с цитированием
Старый 12.10.2012, 22:17   #7 (permalink)
Fenix
404
 
Аватар для Fenix
 
Регистрация: 10.01.2010
Сообщений: 1,749
Записей в дневнике: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 3868
По умолчанию

Цитата:
Сообщение от pave Посмотреть сообщение
Но все равно не то((( выдает число два, подскажите как сделать
Скрины можно увидеть?
Цитата:
Сообщение от pave Посмотреть сообщение
да я зная,я упростил себе задачу)))
Отучайтесь от этого. Нерациональное использование памяти это очень плохо.
Fenix вне форума   Ответить с цитированием
Старый 12.10.2012, 22:34   #8 (permalink)
pave
Новичок
 
Регистрация: 11.10.2012
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

вот или вам что то другое надо
Изображения
Тип файла: bmp Новый рисунок (2).bmp (208.6 Кб, 142 просмотров)
pave вне форума   Ответить с цитированием
Старый 13.10.2012, 06:38   #9 (permalink)
Fenix
404
 
Аватар для Fenix
 
Регистрация: 10.01.2010
Сообщений: 1,749
Записей в дневнике: 5
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 3868
По умолчанию

Как вставить картинки?. Можно только в нормальном качестве? а то тут ничего не видно.
Fenix вне форума   Ответить с цитированием
Старый 13.10.2012, 14:03   #10 (permalink)
pave
Новичок
 
Регистрация: 11.10.2012
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

а так более понятно
Миниатюры
iiaue-dhenoiie-3-.jpg  
pave вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Метки
с++

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 09:24.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.