Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
kaiwa
0 / 0 / 3
Регистрация: 01.07.2013
Сообщений: 40
#1

Если последовательность отсортирована по возрастанию, оставить ее без изменения. Иначе получить иную последовательность - C++

18.04.2014, 09:37. Просмотров 415. Ответов 1
Метки нет (Все метки)

Дана последовательность действительных чисел X1,X2,X3,…,Xn (n>2, заранее неизвестно). Если последовательность отсортирована по возрастанию, то оставить ее без изменения. Иначе. Получить последовательность Xn,Xn−1,Xn−2,…,X1.
У меня есть обычный список, как запихнуть туда сортировку как в задании?

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
#include <iostream>
#include <ctime>
#include <iomanip>
#include <stdlib.h>
using namespace std;
 
const int N=16 ;  
 
 
typedef struct Pnode Tnode;
 
struct Pnode
{
    int Item;
    Tnode * Next;
};
 
void AddList( Tnode * List, int newElem){   // Добавить элемент в список
    Tnode * newNode;
    newNode = new Tnode;
    newNode -> Item = newElem;
    newNode -> Next = NULL;
    while (List -> Next != NULL) 
        List = List -> Next;
    List -> Next = newNode;
}
 
void PrintList( Tnode * List){ // Распечатать список
    while (List != NULL){
        cout << setw(3) << List -> Item << ' ';
        List = List -> Next;
    }
    cout << endl;
}
 
 
int main()
{
    srand(time(0));
 
    Tnode * A; // определяем список A
    A = new Tnode;  
    A -> Item = rand() % 9 + 1;  // Вносим первый элемент
    A -> Next = NULL;
    for (int i = 1; i < N; i++ ) //  заносим еще N-1 элемент
        AddList( A, rand() % 9 +1);
    PrintList( A);   
 
    Tnode * Last = A;  // находим последний элемент списка
    while (Last -> Next != NULL) 
        Last = Last -> Next; 
 
    Tnode * X = A;    // печатаем список, вычитая значение Item последнего элемента
    while ( X != NULL)
    {
        cout << setw(3) << X -> Item - Last -> Item << ' ';
        X = X -> Next;
    }
    cout << endl;
    system("pause");
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.04.2014, 09:37
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Если последовательность отсортирована по возрастанию, оставить ее без изменения. Иначе получить иную последовательность (C++):

Оставить без изменения последовательность, если она упорядочена
Даны целые числа а1...аn, где n - целое положительное число (n&lt;=100). Оставить...

Если введенный список упорядочен по возрастанию, то оставить его без изменения
Построить линейный список из нескольких динамических переменных, содержащих...

Даны действительные числа a1.an , где n – натуральное число. Оставить без изменения последовательность a1
Даны действительные числа a1...an , где n – натуральное число. Оставить без...

Если в тексте нет символа +, то оставить текст без изменения, иначе каждую из цифр, предшествующую первому вхождению символа +, заменить символом -
Дан текст. Если в тексте нет символа +, то оставить текст без изменения, иначе...

Если в строке нет символа +, то оставить строку без изменений, иначе каждую из цифр перед символом + заменять на *
Ввести символьный массив из 12 символов. Если в тексте нет символа +, то...

Если эти числа равны, заменить их на 0, если нет - меньшое заменить большим, а большое оставить без изменения
Дано 2 целых числа, каждое из низ не больше 2*10^9 по модулю. Если эти числа...

1
nmcf
6242 / 5554 / 2526
Регистрация: 14.04.2014
Сообщений: 23,351
18.04.2014, 09:41 #2
А где там сказано про сортировку? Это же обратная последовательность.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.04.2014, 09:41
Привет! Вот еще темы с решениями:

Превратите последовательность b1,..., b25 по правилу, согласно которому если ai <0, то bi увеличивается в 10 раз, иначе bi заменяется нулем
Пусть данные целые числа а1,..., a25, b1,..., b25. Превратите...

Построить последовательность из 0 и 1, в которой Bi=1 если элементы i-го столбца образуют убывающую последовательность
Дана действительная квадратная матрица порядка n. Построить последовательность...

Получить сумму членов исходной последовательности если преобразованная последовательность неубывающая
Помогите!!! Дана последовательность действительных чисел A(n). Если в...

Если длина строки больше 10 - оставить первые 6 символов, иначе дополнить строку символами 'о'
Дана строка.Если ее длина больше 10,то оставить в строке только первые 6...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

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