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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Strah6
0 / 0 / 0
Регистрация: 23.12.2013
Сообщений: 5
#1

Доделайте задачку с пузырьком - C++

23.12.2013, 23:56. Просмотров 183. Ответов 3
Метки нет (Все метки)

Всем привет, я этим делом недавно начал заниматься, и мне поручили задачку:
1 Найти номер мин. элемента массива (сделано)
2 Найти сумму элементов массива, между первым и вторым отрицательными числами (тож сделал)
3 Преобразовать массив таким образом, что бы вначале располагались все элементы, модуль которых не превышает 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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
#include <iostream>
#include<time.h>
#include<conio.h>
 
using namespace std;
 
int main()
{
    srand(time(NULL));
    
    int n;
    cout<<"n=";
    cin>>n;
 
cout<<"================================="<<endl;
    int*a= new int[n];
    for(int i = 0; i < n;i ++)
    {
        a[i]= rand()%201-100;
        cout<<a[i]<<" ";
    }
cout<<endl<<"================================="<<endl;
    int minimum=LONG_MAX;
    
    for (int i=0;i<n;i++)
    
        if (a[i]<minimum)
    minimum = a[i];
    cout << "1) Minimum is " << minimum << endl;
 
    cout<<"================================="<<endl;
 
    int k=1,s=0,i,max=0,min=0;
    
    k=a[0];
 
for(i=0; i<n; i++)
{
 if(a[i]<k)
 k=i+1;
}
 
for(i=0;i<n;i++)
 {
 if(a[i]<0)
  {
  min=i;break;
  }
 }
 
for(i=min+1;i<n;i++)
{
 if(a[i]<0)
 {
  max=i;break;
 }
}
 
 
   for(i=min+1;i<max;i++)
 {
 s=a[i]+s;
 }
 cout<<"2) Sum is "<<s<<endl;
 cout<<"================================="<<endl;
 
  //здесь должна быть 3ая часть задачи
 
 cout<<"================================="<<endl;
 
getch();    
return 0;
}
До этого пузырик не писал, и сразу такой, который в нэте не нашел (на этом форуме есть что-то подобное, но только на паскале, который мне не катит.) Помогите пожалуйста дописать, до нового года надо срочно сдать!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.12.2013, 23:56     Доделайте задачку с пузырьком
Посмотрите здесь:

Доделайте прогу (Змейка) - C++
Как на этой основе сделать полноценную змейку? #include &lt;conio.h&gt; #include &lt;windows.h&gt; HANDLE StdOutHandle; void putcxy(char...

Доделайте пожалуйста программу - C++
Выручайте, нужна вот это программа http://www.cyberforum.ru/cpp-beginners/thread545795.html, кому не сложно можно вас попросит скинуть уже...

Доделайте программу Исходник есть. Borland c++ (DOS) - C++
Я не знаю почему когда высвечевается меню после компеляции..выберая пункт она сразу закрывается..И плиз сделайте сортировку. по количеству...

Пожалуйста доделайте задачу (в массиве найти все числа,начинающихся с цифры выбранной пользователем) - C++
Помогите пожалуйста дописать программу, мне надо ее написать на Visual C++ 6.0 Вот задача В массиве целых чисел,расположенном в...

посоветуйте задачку ) - C++
Доброго времени суток!) Посоветуйте какую нить задачку на лето) желательно что то бы понять все плюсы использования ООП. и еще было...

Задайте задачку) - C++
Всем доброго времени суток! Я новичок в С++ Не могу найти простого задачника по С++ Читаю Шилдт &quot;Полный справочник по С++&quot;(там...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
MrGluck
Модератор
Эксперт CЭксперт С++
7184 / 4350 / 634
Регистрация: 29.11.2010
Сообщений: 11,843
24.12.2013, 01:43     Доделайте задачку с пузырьком #2
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
// Преобразовать массив таким образом, что бы вначале располагались все
// элементы, модуль которых не превышает 1, а потом - все остальные
#include <cmath>
#include <iostream>
 
int main()
{
    const int M = 10;
    int arr[M] = {1, 2, -3, 4, 5, -1, 4, -2, 27, 1};
 
    // модифицированная пузырьковая сортировка
    for (int i=0; i < M; i++)
        for (int j=M-1; j > i; j--)
            if (std::abs(arr[j]) < std::abs(arr[i])) // сравниваем модули
            {
                int tmp = arr[i];
                arr[i] = arr[j];
                arr[j] = tmp;
            }
 
    for (int i=0; i < M; i++)
        std::cout << arr[i] << " ";
    std::cout << std::endl;
}
Strah6
0 / 0 / 0
Регистрация: 23.12.2013
Сообщений: 5
24.12.2013, 02:21  [ТС]     Доделайте задачку с пузырьком #3
Цитата Сообщение от MrGluck Посмотреть сообщение
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
// Преобразовать массив таким образом, что бы вначале располагались все
// элементы, модуль которых не превышает 1, а потом - все остальные
#include <cmath>
#include <iostream>
 
int main()
{
    const int M = 10;
    int arr[M] = {1, 2, -3, 4, 5, -1, 4, -2, 27, 1};
 
    // модифицированная пузырьковая сортировка
    for (int i=0; i < M; i++)
        for (int j=M-1; j > i; j--)
            if (std::abs(arr[j]) < std::abs(arr[i])) // сравниваем модули
            {
                int tmp = arr[i];
                arr[i] = arr[j];
                arr[j] = tmp;
            }
 
    for (int i=0; i < M; i++)
        std::cout << arr[i] << " ";
    std::cout << std::endl;
}
не конечно спасибо, но у меня динамический массив в коде то)
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.12.2013, 02:27     Доделайте задачку с пузырьком
Еще ссылки по теме:

Взгляните на задачку С++ - C++
С клавиатуры последовательно вводятся числа типа short. Составить программу, которая выводит сначала положительные числа в порядке их...

Подправить задачку. - C++
Помогите, пожалуйста, у меня есть условие задачи: дана последовательность упорядоченных по возрастанию чисел а1...а15, и число n не...

Решить задачку - C++
Когда встречаю эпсилон возникают проблемы, не пойму что это и как мудрить , знаю что надо использовать float и int все ) Умножить, сложить...

Исправить задачку - C++
Здравствуйте, уважаемые пользователи! Пожалуйста подкорректируйте решение. Задача такова: &quot;Получить все шестизначные счастливые номера....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
MrGluck
Модератор
Эксперт CЭксперт С++
7184 / 4350 / 634
Регистрация: 29.11.2010
Сообщений: 11,843
24.12.2013, 02:27     Доделайте задачку с пузырьком #4
Цитата Сообщение от Strah6 Посмотреть сообщение
не конечно спасибо, но у меня динамический массив в коде то)
А Вы что за меня еще и есть будете?
намек понятен?)
Yandex
Объявления
24.12.2013, 02:27     Доделайте задачку с пузырьком
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru