Форум С++

 

Ответить на сообщение

Вернуться к теме

Вы отвечаете на сообщение:

Автор: vikaz   (13.03.2010 в 13:26)

/---------------------------------------------------------------------------
//                                ЗАДАНИЕ
//---------------------------------------------------------------------------
//С консоли ввести целочисленный массив из 10 элементов.
//Поменять чётные и нечётные индексы массива(1 и 2, 3 и 4, и т. д.)
//Найти максимальные и минимальные значения чётных и нечётных элементов массива.
//поменять местами максимальные и минимальные элементы.
//---------------------------------------------------------------------------

#pragma hdrstop
#include <tchar.h>
#include <iostream>
#include <stdlib.h>
#include <conio.h>
#define SIZE 10
//---------------------------------------------------------------------------
#pragma argsused
using namespace std;
void main()
{
 system ("chcp 1251->text");
 int Array [SIZE];
 for (int i = 0; i < 10; i++)
 {
  cout << "Введите " << i+1 << " значение массива= ";
  cin >> Array[i];
 }

 cout << "\nВведен массив:";

 for (int i = 0; i < 10; i++)
  cout << Array[i] << " ";


 cout << "\nМеняем местами четные и нечетные индексы:";
 for (int i = 0; i < 10; i=i+2)
 {
  int temp = Array[i];
  Array[i] = Array[i+1];
  Array[i+1] = temp;
  cout << Array[i] << " ";
  cout << Array[i+1] << " ";
 }

 cout << "\nНаходим максимальные и минимальные значения четных и нечетных элементов массива.";

 int *Buf_0 = Array; //Максимальный элемент (четный)
 int *Buf_1 = Array; //Минимальный элемент  (Четный)
 int *Buf_2 = Array + 1; //Максимальный элемент (нечетный)
 int *Buf_3 = Array + 1; //Минимальный элемент  (нечетный)

 for (int i = 0, j=1; i < 10 && j<10; i=i+2, j=j+2)
 {
  if (Buf_0 < Array + i) Buf_0 = Array + i;
  if (Buf_1 > Array + i) Buf_1 = Array + i;
  if (Buf_2 < Array + j) Buf_2 = Array + j;
  if (Buf_3 > Array + j) Buf_3 = Array + j;
 }
 cout << endl;
 cout << "\nМаксимальное значение четных элементов = " << *Buf_0;
 cout << "\nМинимальное значение четных элементов = " << *Buf_1;
 cout << "\nМаксимальное значение нечетных элементов = " << *Buf_2;
 cout << "\nМинимальное значение нечетных элементов = " << *Buf_3;

 cout << endl;
 cout << "\n Меняем местами максимальные и минимальные значения четных и нечетных элементов.";

 int temp = *Buf_0;
 *Buf_0 = *Buf_1;
 *Buf_1 = temp;

 temp = *Buf_2;
 *Buf_2 = *Buf_3;
 *Buf_3 = temp;

 cout << "\n Получившиеся массив:";
 for (int i = 0; i < 10; i++) cout << Array[i] << " ";

 getch ();
 return;
}
//---------------------------------------------------------------------------


Ваше имя:

Пароль:

Цитировать

Используйте тэги для выделения текста:
Код: [code][/code]
Жирный: [b][/b]
Наклонный: [i][/i]
URL: [url][/url]

Сообщение:

Прикрепить: