Инструменты пользователя

Инструменты сайта


reshenie_zadachi_8

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

reshenie_zadachi_8 [2012/06/06 13:51] (текущий)
Строка 1: Строка 1:
 +====== Задача 8 ======
  
 +Задача 8. Дан одномерный массив размера 10. Переставить в обратном порядке элементы массива,​ расположенные между его минимальным и максимальным элементами.
 +<​file>​
 +#include <​iostream>​
 +#​include<​stdlib.h>​
 +
 +using std::cout;
 +using std::endl;
 +/* 
 +Дан одномерный массив размера 10.
 +Переставить в обратном порядке элементы массива,​
 +расположенные между его минимальным и максимальным элементами.
 +*/
 +
 +int main(){
 + int SIZE=10;
 + int *parr= new int [SIZE];
 + int i,​minind=0,​maxind=0,​j;​
 + int min, max;
 + for(i=0;​i<​SIZE;​i++)parr[i]=rand()%100+1;//​заполнили
 + for(i=0;​i<​SIZE;​i++)cout<<​parr[i]<<"​ ";//​вывели массив
 +
 + min=parr[0];​
 + for (i=1;​i<​SIZE;​i++){//​находим минимальный
 + if(min>​parr[i]){
 + min=parr[i];​
 + minind=i;​
 + }
 +}
 + cout<<"​\n"<<"​min:​ "<<​min<<"​ minind: "<<​minind<<"​\n";​
 +max=parr[0];​
 + for (i=1;​i<​SIZE;​i++){//​находим максимальный
 + if(max<​parr[i]){
 + max=parr[i];​
 + maxind=i;​
 + }
 +}
 + cout<<"​\n"<<"​max:​ "<<​max<<"​ maxind: "<<​maxind<<"​\n";​
 + int *parrnew= new int [SIZE];
 + for(i=0;​i<​minind;​i++){//​заносим до минмального
 + parrnew[i]=parr[i];​
 + }
 + for(i=maxind;​i<​SIZE;​i++){//​заносим заносим после максимального
 + parrnew[i]=parr[i];​
 + }
 + //​for(i=maxind;​i>​minind;​i--){//​заносим в обратном порядке
 + for(i=maxind,​j=minind;​i>​minind-1;​i--,​j++){
 + cout<<​parr[i]<<"​\n";​
 + parrnew[j]=parr[i];​
 + }
 +cout<<"​\n";​
 +for(i=0;​i<​SIZE;​i++)cout<<​parrnew[i]<<"​ ";//​вывели новый масив
 + delete [] parrnew;
 + delete [] parr;
 +cout<<"​\n";​
 +
 + return 0;
 +}
 +</​file>​
загрузка...
reshenie_zadachi_8.txt · Последние изменения: 2012/06/06 13:51 (внешнее изменение)