Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.05.2012, 21:13   #1
АлександрМих
Пользователь
 
Аватар для АлександрМих
 
Регистрация: 10.04.2012
Сообщений: 12
По умолчанию Поиск максимального элемента

Ребята помогите пожалуйста составить цикл для поиска максимального элемента.
Задание: дана матрица вещественных чисел m на n, размерность которой задается пользователем. Распечатать матрицу на экране и определить максимальный элемент, находящийся в заштрихованной области.
Код:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

 main(){
  int m,n,i,j;
  double *ar,max;
   printf ("vvedite razmer matrix m, n: ");
   scanf ("%d%d", &m, &n);
  ar = (double*)malloc(m*n*sizeof(double));
   printf("vvedite elementu matrix:\n");
  for(i=0;i<m;i++){
  for(j=0;j<n;j++)
    scanf("%lf", &(a[i*n+j]));
Изображения
Тип файла: jpg max element.jpg (15.8 Кб, 84 просмотров)

Последний раз редактировалось АлександрМих; 21.05.2012 в 21:23.
АлександрМих вне форума Ответить с цитированием
Старый 22.05.2012, 08:38   #2
Last
В прострации
Форумчанин
 
Регистрация: 13.01.2009
Сообщений: 239
По умолчанию

Двумерный массив M x N в Си задаётся так:
Код:
int **a;
a = (int**)malloc(M * sizeof(int*));
for (i = 0; i < N; i++)
 a[i] = (int*)malloc(N * sizeof(int));
Пол-жизни сидючи, в монитор глядючи...
Last вне форума Ответить с цитированием
Старый 22.05.2012, 09:26   #3
Granus
С++
Форумчанин
 
Аватар для Granus
 
Регистрация: 22.09.2008
Сообщений: 791
По умолчанию

Цитата:
Двумерный массив M x N в Си задаётся так:
Ничто не мешает сделать и так, как в коде автора темы.

Найдите условие, которому удовлетворяют элементы заштрихованной области и перебирайте все элементы, удовлетворяющие условию, в поисках максимума.
Форматируйте код, будьте людьми.
Granus вне форума Ответить с цитированием
Старый 22.05.2012, 17:29   #4
АлександрМих
Пользователь
 
Аватар для АлександрМих
 
Регистрация: 10.04.2012
Сообщений: 12
По умолчанию

Можете пожалуйста кинуть сам цикл поиска в этой области исходя из моего исходника? Или там что-то не так?
АлександрМих вне форума Ответить с цитированием
Старый 23.05.2012, 17:29   #5
АлександрМих
Пользователь
 
Аватар для АлександрМих
 
Регистрация: 10.04.2012
Сообщений: 12
По умолчанию

Исправленная часть программы
Код:
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

 void main(){
  int m,n,i,j;
  double *ar,max;
   printf ("vvedite razmer matrix m: ");
   scanf ("%d", &m);
   n=m;
  ar = (double*)malloc(m*n*sizeof(double));
   printf("vvedite elementu matrix:\n");
  for(i=0;i<m;i++){
  for(j=0;j<n;j++){
  printf ("Vvedite element [%d, %d] \n",i,j);
    scanf("%lf", &(ar[i*n + j]));
	}}
	printf("matrix\n");
   for(i=0; i<m; i++){
   for(j=0; j<n; j++){
   printf("%lf ",(ar[i*n + j]));
   }
   printf("\n");
   
   }
АлександрМих вне форума Ответить с цитированием
Старый 23.05.2012, 18:17   #6
АлександрМих
Пользователь
 
Аватар для АлександрМих
 
Регистрация: 10.04.2012
Сообщений: 12
По умолчанию

помогите исправить здесь ошибки, плиз.
Код:
double *ar,c;
double max=ar[0][0];
........
c=(m-1)/2;   //центр матрицы
....
 for(i=0;i<m;i++){
 for(j=0;j<m;j++){
    if(j<=c){
	if((i>=j)&&(i<=n-1-j)&&(ar[i][j]>max))
	 max=ar[i][j];}
	 printf("max= %lf", ar[i][j]);
	 }}

Последний раз редактировалось АлександрМих; 23.05.2012 в 23:30.
АлександрМих вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Квадратная матрица. Поиск максимального элемента GUWK_Lammer Помощь студентам 0 17.05.2012 21:15
Поиск максимального элемента массива morskoy brat Помощь студентам 1 18.11.2011 13:11
поиск максимального элемента счастливая Помощь студентам 4 17.05.2010 21:31
Поиск максимального элемента в массиве Alexus999 Помощь студентам 8 08.06.2009 19:47
Поиск минимального (максимального) элемента массива Radamant Помощь студентам 10 24.12.2008 17:44