![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 29.10.2011
Сообщений: 5
|
![]()
Создать функцию, определяющую в целочисленном прямоугольном массиве matrixnm сумму всех элементов, соприкасающихся углами с его максимальным элементом.
|
![]() |
![]() |
![]() |
#2 |
Регистрация: 29.10.2011
Сообщений: 5
|
![]()
Вот начала код писать, но не уверена, что правильно, а как сумму элементов вычислить вообще сообразить не могу
#include <stdio.h> #include <conio.h> #include <math.h> #include <stdlib.h> #define n 4 #define m 5 int Massiv_A[n][m] ; int main() { int j,i, max,maxI, nach, kon; srand(time(NULL)); printf("\n Vvedite granizi diapasona:"); printf("\n\n Nachalnoe znachenie= "); scanf("%d", &nach); printf("\n Konechnoe znachenie= "); scanf("%d", &kon); printf("\n Massiv A: \n"); // Формирование массива А for(i=0;i<n;i++) { for(j=0;j<m;j++) { Massiv_A[i][j] = nach + rand() %kon ; printf("%5d",Massiv_A[i][j]); } printf("\n"); } //----------------------- max_element(Massiv_A); getchar(); return 0; } int max_element(int Massiv_A[n][m]) { int max,maxI, maxJ, i, j; // Поиск максимального элемента max=Massiv_A[0][0]; maxI=0; maxJ=0; { for(i=0;i<n;i++) { for(j=0;j<m;j++) { if(max < Massiv_A[i][j]) { max = Massiv_A[i][j]; maxI=i; maxJ=j; printf("\nMax element massiva A: %d,",max); printf("\nindex stroki: %d",maxI); printf("\n index stolbca: %d",maxJ); getchar(); return 0; } } } } } Подскажите!!!! ![]() |
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 23.12.2010
Сообщений: 1,129
|
![]()
"Соприкасающихся углами" значит находящихся рядом с ним по диагонали?
Таких элементов максимум будет 4. Задача сводится к проверке четырех условий (есть ли еще элемент с каждой стороны), и добавлению этого элемента к общей сумме. Ничего сложного же ) Правда в условии ничего не сказано про случай, когда максимальных элементов несколько. |
![]() |
![]() |
![]() |
#4 |
Регистрация: 29.10.2011
Сообщений: 5
|
![]()
ничего вроде и нет, а сообразить не могу... И программа в основном ответ выдает с двумя-тремя максмальными
|
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 23.12.2010
Сообщений: 1,129
|
![]()
Ну вот есть у тебя элемент a[i,j].
Слева сверху у него будет соприкасающийся элемент, если i>0 и j>0. Сверху справа - если i>0 и j<(m-1) И два нижних элемента по аналогии. Проверяешь эти условия и прибавляешь элементы, если они есть. А с несколькими максимальными - или выбираешь только первый, или считаешь общую сумму для всех, задание можно трактовать и так и так ) |
![]() |
![]() |
![]() |
#6 |
Регистрация: 29.10.2011
Сообщений: 5
|
![]()
спасибо, буду дальше думать ))
|
![]() |
![]() |
![]() |
#7 |
Участник клуба
Регистрация: 23.12.2010
Сообщений: 1,129
|
![]()
Тут уже не нужно думать, осталосьь сесть и написать эти несчастные 6 строчек )
|
![]() |
![]() |
![]() |
#8 |
Регистрация: 29.10.2011
Сообщений: 5
|
![]()
так вот именно, сесть
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа с применением записей и программа с применение множеств | smert99 | Помощь студентам | 0 | 16.06.2011 23:14 |
Программа открыается если есть другая программа. | bookkc | Паскаль, Turbo Pascal, PascalABC.NET | 12 | 14.10.2009 20:09 |
[PASCAL]Программа создания файла, программа обработки файла | Виколяшка | Фриланс | 7 | 23.09.2009 17:38 |
Программа создания файла, программа обработки файла [PASCAL] | Виколяшка | Помощь студентам | 1 | 22.09.2009 22:56 |