Форум программистов, компьютерный форум CyberForum.ru

Поменять местами первую и вторую половину массива. - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Удалить из массива все элементы встречающиеся менее 3-х раз и вывести размер полученного массива и его содержимое. http://www.cyberforum.ru/cpp-beginners/thread102352.html
Помогите пожалуйста решить задачу!!!!!! Дан целочисленный массив размера n. Удалить из массива все элементы встречающиеся менее 3-х раз и вывести размер полученного массива и его содержимое.
C++ Лифт В небоскребе N этажей и всего один подъезд; на каждом этаже по три квартиры; лифт может останавливаться только на нечетных этажах. Человек садится в лифт и набирает номер нужной ему квартиры М. На какой этаж должен доставить лифт пассажира? http://www.cyberforum.ru/cpp-beginners/thread102351.html
Подсчитать количество отрицательных чисел среди чисел m, n, p. C++
Подсчитать количество отрицательных чисел среди чисел m, n, p в си++ Тема лабы-Разветвляющие алгоритмы
C++ писать прогу без компилятора?
как сделать?с помощью нотпада
C++ Указатель на потомка в базовом классе. http://www.cyberforum.ru/cpp-beginners/thread102286.html
Мне нужно создать в базовом классе массив указателей на потомки этого класса. Помогите - как это сделать?
C++ Вычисление суммы двух векторов Помогите с задачей: Заданы k векторов X1, X2,…, Xk. Найти их сумму X1+ X2+… + Xk. Функция: вычисление суммы двух векторов. подробнее

Показать сообщение отдельно
Day
 Аватар для Day
1149 / 954 / 57
Регистрация: 29.10.2009
Сообщений: 1,384
08.03.2010, 17:36     Поменять местами первую и вторую половину массива.
1.
Код
  for(i=0; i<n/2;i++) {
     t = a[i];
     a[i] = a[n-1-i];
     a[n-1-i] = t;
  }
Т.к. тип массива мне неизвестен, декларации сделаешь сама
2.Если я правильно понял - локальный минимум - это когда меньше всех окружающих?
Код
   k = 0;
   for(i=0; i<n; i++) {
     for(j=0; j<m; j++) {
        for(ii=i-1; ii<=i+1; ii++) {
            if (ii<0 || ii>=n) continue;  // Не рассматриваем клетки, вылезающие за край
            for(jj=j-1; jj<=j+1; jj++) {
               if (jj<0 || jj>=m) continue;
               if (a[i][j] >= a[ii][jj]) break; // Не минимум
            }
             if (jj<j+1) break;
        }
         if (i<ii+1) continue; // т.к. из цикла вылетели раньше - a[i][j] - не минимум
         cout "Loc.Min = " << a[i][j] << "i=" << i << "j=" << j << endl;
         k++;
     }
   }
   if (k==0) cout << "Not Loc.Min" << endl;
С праздником!
 
Текущее время: 16:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru