HRyk
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Если я неправильно понял задачу, поправте меня, но почему в цикле поиска i начинается со 2, а не с 1-го элемента, если мы дожны пренебречь только 0-м и n-1 элементом? #include "stdafx.h" #include <conio.h> int _tmain(int argc, _TCHAR* argv[]) {int i,mas[20],n,suMax,iMax; //зануляем массив для натуральных чисел (если объявишь его как глобальную переменную, то занулять не нужно) for (i=0;i<20;i++) mas[i]=0; //Ввод данных (количества элементов в массиве и собственно самого массива printf("Vvedite n (n<20): "); scanf("%d", & n); for (i=0;i<n;i++) { printf("Vvedite %d element: ",i+1); scanf("%d", & mas[i]); } //Основной алгоритм поиска suMax=0; iMax=0; for (i=1;i<n-1;i++) { if (mas[i-1]+mas[i+1]>suMax) { suMax=mas[i-1]+mas[i+1]; iMax=i-1; } } //выводим максимальную сумму, и элементы массива (нумерация с 1 для наглядности), дающие эту максимальную сумму printf("suMax=%d, iMax's=%d,%d",suMax,iMax+1,iMax+3); getch(); return 0; } | Всего записей: 162 | Зарегистр. 04-11-2006 | Отправлено: 18:15 09-03-2007 | Исправлено: HRyk, 18:17 09-03-2007 |
|