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

недоделанный массив - C++

Восстановить пароль Регистрация
 
c++\noob
 Аватар для c++\noob
-2 / 2 / 0
Регистрация: 13.11.2010
Сообщений: 52
20.11.2010, 20:58     недоделанный массив #1
Кто может доделайте(исходник ниже) массивы обьявил, а дальше не вникаю чё делать.
Допишите кто знает. Буду очень благодарен.


Заменить все возможные элементы, находящиеся справа от максимального элемента, на все возможные элементы, находящиеся слева от минимального элемента, в случае если минимальный элемент стоит левее максимального, и наоборот, в противном случае.
Например, 1 8 3 4 0 6 – 6 8 3 4 0 1



C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <cstdlib>
#include <iostream>
#include <time.h>
using namespace std;
 
int main(int argc, char *argv[])
{
    srand((unsigned)time(NULL));
    const int N=20;
    int mass[N];
    int n=rand()%(20)+1;
    for (int i=0;i<n;i++)
    {
     mass[i]=rand()%(201)-100;
     printf("%d " ,mass[i]);
    }
    printf("\n");
    int i,min,max=mass[0];
    for (int i=0;i<n;i++)
    {
    if (min>mass[i]) min=mass[i]  ;
    if (max<mass[i]) max=mass[i]  ;
    }
    printf("min=%d\n", min);
    printf("max=%d\n", max); 
    {           
    for(i=0;i<n;i++)
    printf("%d " ,mass[i]);
    }           
    printf("\n");
    system("PAUSE");
    return EXIT_SUCCESS;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2010, 20:58     недоделанный массив
Посмотрите здесь:

C++ Задать массив вещественных чисел и вставить в исходный массив число
C++ Массив: Сформируйте массив C[n+m], состоящий из элементов массивов А и В, упорядоченный по возрастанию.
C++ Задан вектор X[20]. Положительные числа переписать в массив Y, а отрицательные в массив W
C++ задача записать в массив отрицательные элементы матрицы в массив и вывести их
Массив: Составить массив из двух исходных по заданному принципу заполнения C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
20.11.2010, 23:31     недоделанный массив #2
c++\noob, У Вас пример идеальный, а если на входе: 1 8 3 0 4 6 ?
c++\noob
 Аватар для c++\noob
-2 / 2 / 0
Регистрация: 13.11.2010
Сообщений: 52
21.11.2010, 01:14  [ТС]     недоделанный массив #3
Короче,этот пример был в самом задании. А как довести это прогу до конца вы мне скажете?.
valeriikozlov
Эксперт C++
 Аватар для valeriikozlov
4660 / 2486 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
21.11.2010, 02:20     недоделанный массив #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <cstdlib>
#include <iostream>
#include <time.h>
using namespace std;
 
int main(int argc, char *argv[])
{
srand((unsigned)time(NULL));
const int N=20;
int mass[N], i;
int n=rand()%(20)+1;
for (i=0;i<n;i++)
{
mass[i]=rand()%(201)-100;
printf("%d " ,mass[i]);
}
printf("\n");
int min_i=0, max_i=0;
for (i=0;i<n;i++)
{
if (mass[min_i]>mass[i]) min_i=i ;
if (mass[max_i]<mass[i]) max_i=i ;
}
printf("min=%d\n", mass[min_i]);
printf("max=%d\n", mass[max_i]);
int min=0, max=n-1, temp;
if(min_i>max_i)
{
    temp=min_i; min_i=max_i; max_i=temp;
}
while (min<min_i && max>max_i)
{ 
    temp=mass[min]; mass[min]=mass[max]; mass[max]=temp;
    min++; max--;
}
 
for(i=0;i<n;i++)
printf("%d " ,mass[i]);
 
printf("\n");
system("PAUSE");
return EXIT_SUCCESS;
}
Yandex
Объявления
21.11.2010, 02:20     недоделанный массив
Ответ Создать тему
Опции темы

Текущее время: 09:01. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru