Вернуться   Компьютерный форум > Компьютеры > Программы > Программирование
 
 
Опции темы
Старый 11.10.2012, 20:33   #1 (ссылка)
Новичок
 
Регистрация: 11.10.2012
Сообщений: 2
Репутация: 0
По умолчанию Помогите пожалуйста написать программу на С++

Помогите пожалуйста написать программу на С++ для нахождения в матрице 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++)
pavel1994 вне форума  
Старый 12.10.2012, 19:15   #2 (ссылка)
Новичок
 
Аватар для Skyll
 
Регистрация: 25.08.2011
Сообщений: 21
Репутация: 1
Профиль ВКонтакте
По умолчанию

Начнем с того, что нумерация начинается с нуля. Да и зачем много Эдитов создавать, если проще StringGrid кинуть на форму?
Skyll вне форума  
Старый 12.10.2012, 23:07   #3 (ссылка)
Новичок
 
Регистрация: 11.10.2012
Сообщений: 2
Репутация: 0
По умолчанию

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);
}



Я только начал изучать язык))) только это знаю
pavel1994 вне форума  
Старый 16.10.2012, 21:12   #4 (ссылка)
Новичок
 
Регистрация: 21.11.2009
Сообщений: 486
Репутация: 47
По умолчанию

pavel1994,
Код:
#include<iostream>
const int N = 3;
 
void Max(int *a, int n, int &max1, int &max2, int &max3)
{
   int i, min;
   for(i = 1, min = a[0]; i < n; i++)
      if (a[i] < min)
         min = a[i];
   max1 = max2 = max3 = min;
   for(i = 0; i < n; i++)
      if (a[i] >= max1)
      {
          max3 = max2;
          max2 = max1;
          max1 = a[i];
      }
      else if (a[i] < max1 && a[i] >= max2)
      {
          max3 = max2;
          max2 = a[i];
      }
      else if (a[i] < max2 && a[i] > max3)
         max3 = a[i];
 
}
 
int main()
{
   int max1, max2, max3, a[N][N] = {{1,2,3}, {4,5,6}, {1,4,5}};
   Max(*a, N*N, max1, max2, max3);
   std::cout << max3 << "\n";
   std::cout << max2 << "\n";
   std::cout << max1 << "\n";
   return 0;
}
sheff-09 вне форума  
Ads
 


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите,пожалуйста,написать программу dilja Программы 0 28.09.2011 19:25
Помогите написать программу на Паскаль Эмилюшка Программирование 1 22.06.2011 14:48
Помогите написать программу на Qbasic Smail58 Программирование 1 20.06.2011 14:50
Помогите написать программу в Qbasic DAmir13 Программирование 15 28.05.2011 21:03
помогите пожалуйста написать программу , в паскале mitya Программирование 1 19.05.2011 20:57


Текущее время: 13:01. Часовой пояс GMT +4. Powered by vBulletin® Version 5.8.9
Copyright ©2000 - 2016, Jelsoft Enterprises Ltd.