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

Элементы массива с нечетных позиций необходимо отсортировать по возрастанию, с четных - по убыванию - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Обращение к элементам массива через биты некоторого числа http://www.cyberforum.ru/cpp-beginners/thread1206459.html
Пусть есть массив Mass из 10 элементов и число А = 510 = 0...0 01012. Мне надо обратиться к 0 и 2 элементам (или к 7 и 9 - это как посмотреть) массива Mass. Можно ли как-нибудь через биты числа А получить доступ к элементам массива Mass?
C++ Подсчитать количество тех элементов последовательности B, для которых нет равных среди элементов A Даны натуральные числа m и n и действительные числа a1,...,am (a1>a2>...>am), b1,...,bn. Составить программу подсчета количества тех bi, 1<=i<=n, для которых нет равных среди a1,...,am. http://www.cyberforum.ru/cpp-beginners/thread1206442.html
Удалить нечётные строки двумерного массива (динамический массив) C++
Требуется написать программу: 1. Удалить все нечётные строки двумерного массива. 2. После той строки, которая содержит наибольший элемент, добавить новую строку (с любыми числами). Оба пункта реализовать в одной задаче. Вот текст программы, помогите пожалуйста переделать, чтобы использовался динамический массив: #include <iostream> #include <ctime> using namespace std;
код из pascal в c++ C++
Помогите перевести пожалуйста uses crt; const nmax=15; type mas=array of real; mtr=array of mas; {сортировка по возрастанию строки матрицы} procedure Sort(var a:mas;n:integer); var i,j:integer; x:real; begin
C++ Std::min http://www.cyberforum.ru/cpp-beginners/thread1206431.html
Подскажите, пожалуйста, как расписать эту функцию M = std::min(M, sin(m)); Не из потока std, а в виде обычной функции. Вот весь код: #include <iostream> #include <math.h> #include <vector> void main() { std::vector<float> m; // enter
C++ Нахождение суммы значений функции у=х*х на отрезке 1,5 с шагом 1 помогите с задачей написать программу нахождения суммы значений функции у=х*х на отрезке 1,5 с шагом 1. срочно надо !! подробнее

Показать сообщение отдельно
Компутерщик
0 / 0 / 0
Регистрация: 10.05.2014
Сообщений: 16
12.06.2014, 18:09     Элементы массива с нечетных позиций необходимо отсортировать по возрастанию, с четных - по убыванию
Значит есть одномерный массив из 10 чисел. Заполнен случайными значениями.
Числа расположенные на нечетных позициях необходимо отсортировать по возрастанию.
Числа расположенные на четных позициях необходимо отсортировать по убыванию.
Сортировка вроде работает правильно, а вот диапазон чисел како-то не правильный берется
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
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <iomanip>
using namespace std;
int main ()
{
    setlocale(LC_ALL, "");
    srand(time(NULL));
    const int size= 10;
    int temp, j;
    int a[size];
    for (int i = 0; i < size; i++)
    {
        a[i]=rand()%50;
        cout<<setw(2)<<a[i] <<" "; //начальный массив
    }
        cout<<endl;
    //для чисел которые стоят в массиве на нечетных местах + сортировка по возрастанию
    for(int i = 0 ; i < size ; i++) 
       for(j = 0 ; j < size - i - 1 ; j++)  
           if(a[j] > a[j+1]) 
           { 
              temp = a[j]; 
              a[j] = a[j+1] ; 
              a[j+1] = temp; 
           }
           cout<<"Массив отсортированный по возрастанию: ";
    for(int i = 0 ; i < size; i++)
        if (i%2!=0)
        cout<<setw(2)<<a[i]<<" ";
    //для чисел которые стоят в массиве на четных местах + сортировка по убыванию
    for(int i = 0 ; i < size ; i++) 
       for(j = 0 ; j < size - i - 1 ; j++)  
           if(a[j] < a[j+1]) 
           { 
              temp = a[j]; 
              a[j] = a[j+1]; 
              a[j+1] = temp; 
           }
           cout<<"\nМассив отсортированный по убыванию: ";
    for(int i = 0 ; i < size; i++)
        if (i%2==0)
        cout<<setw(2)<<a[i]<<" ";
    cout<<endl;
    return 0;
}
Как вы думаете что не правильно ? Может ифы и не стоило использовать при выводе чисел, а попробоват поизменять шаг циклам (например +2).
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 06:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru