Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.53/15: Рейтинг темы: голосов - 15, средняя оценка - 4.53
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9

упорядочен ли массив по неубыванию, по невозрастанию или не упорядочен вообще

05.11.2010, 21:02. Показов 3039. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Блин вест мозг себе уже вынес, никак не могу решить задачу(((. Помогите кто чем может.
Задача:Написать подпрограмму,которая проверяла бы, упорядочен ли массив по неубыванию (Xi<=Xi+1),по невозрастанию (Xi=>Xi+1) или не упорядочен вообще. привести пример использования подпрограммы.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.11.2010, 21:02
Ответы с готовыми решениями:

Проверить что массив упорядочен по невозрастанию
Ввести массив из целых чисел (из 10 элементов) и проверить что он упорядочен по невозрастанию

Упорядочен-ли массив по возрастанию?
Добрый вечер, господа. Взываю к вашей помощи, яко сам столкнулся с непреодолимой трудностью. Вот собсна задача: Написать программу,...

Проверить упорядочен ли массив
Здравствуйте! Нужна ваша помощь, помогите написать программу. Условие: Дано натуральное число N и одномерный массив A1, A2...A(N)...

9
 Аватар для egorikem
8 / 8 / 4
Регистрация: 05.10.2010
Сообщений: 137
05.11.2010, 22:02
Э... тоесть если по убыванию то пишет "по убыванию" , а по возрастанию пишет "по возрастанию" и т.д???
0
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
05.11.2010, 23:08  [ТС]
да именно так
0
Эксперт С++
 Аватар для Mr.X
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
06.11.2010, 07:03
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
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
/////////////////////////////////////////////////////////////////////////////////////
//Задача:Написать подпрограмму,которая проверяла бы, упорядочен ли массив 
//по неубыванию (Xi<=Xi+1),по невозрастанию (Xi=>Xi+1) или не упорядочен вообще. 
//Привести пример использования подпрограммы. 
/////////////////////////////////////////////////////////////////////////////////////
#include <algorithm>
#include <iostream>
#include <numeric>
#include <vector>
/////////////////////////////////////////////////////////////////////////////////////
typedef int                 T_num;
typedef std::vector<T_num>  T_nums;
/////////////////////////////////////////////////////////////////////////////////////
void  print_orderliness_type(const T_nums&  nums)
{
    T_nums  adj_diff(nums.size());
    std::adjacent_difference(nums.begin(), nums.end(), adj_diff.begin());
 
    T_num  min_diff = *std::min_element(adj_diff.begin() + 1, adj_diff.end());
    T_num  max_diff = *std::max_element(adj_diff.begin() + 1, adj_diff.end());
 
    //неубывающий    
    bool  is_nondecreasing  = min_diff >= 0;
 
    //невозрастающий    
    bool  is_nonincreasing  = max_diff <= 0;
 
    //возрастающий    
    bool  is_increasing     = min_diff > 0;
 
    //убывающий    
    bool  is_decreasing     = max_diff < 0;
 
    std::cout << "Массив";
              
    if(    !is_nondecreasing
        && !is_nonincreasing
      )
    {
        std::cout << " неупорядоченный";
    }
    else
    {
        if(is_nondecreasing)
        {
            std::cout << " неубывающий";                      
        }
 
        if(is_nonincreasing)
        {
            std::cout << " невозрастающий";                      
        } 
 
        if(is_increasing)
        {
            std::cout << " возрастающий";                      
        }
 
        if(is_decreasing)
        {
            std::cout << " убывающий";                      
        }   
    }
}
/////////////////////////////////////////////////////////////////////////////////////
int main()
{
    std::locale::global(std::locale(""));
    for(;;)
    {
        std::cout << std::endl
                  << std::endl
                  << std::endl
                  << std::endl
                  << "Введите размер массива: ";
        int n;
        std::cin >> n;
        if(n == 0)
        {
            break;
        }
        std::cout << "Введите "
                  << n
                  << " элементов массива:"
                  << std::endl;
 
        T_nums  nums(n);
        for(int i = 0; i < n; ++i)
        {
            std::cout << "a["
                      << i + 1
                      << "] = ";
 
            std::cin >> nums[i];
        }
 
        print_orderliness_type(nums);    
    }
}
1
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
06.11.2010, 10:18  [ТС]
а можно тоже самое написать,только с использованием scanf и printf
0
go
Эксперт С++
3646 / 1378 / 243
Регистрация: 16.04.2009
Сообщений: 4,526
06.11.2010, 13:39
Цитата Сообщение от lokomot Посмотреть сообщение
а можно тоже самое написать,только с использованием scanf и printf
ты имеешь ввиду на языке С (а не С++)???
0
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
06.11.2010, 13:45  [ТС]
да )))
0
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
08.11.2010, 08:42  [ТС]
Народ пожалуйста помогите,время поджимает,напишите код на Си
0
11 / 11 / 3
Регистрация: 18.03.2010
Сообщений: 45
08.11.2010, 16:23
Мой первый код на Си. Написан под GCC, за отсутствие русского извнияюсь.
Если кто-то что-нибудь исправит или посоветует буду благодарен.

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
#include <stdio.h>
#include <malloc.h>
#include <stdlib.h>
 
 
void outarray(int l, int *la)
{
int j;
int nevozr,neub,vozr,ub;
nevozr=neub=vozr=ub=1;
for(j=0;j<l;j++)
printf("prt[%d]: %d\n",j,la[j]);
 
for(j=0;j<l-1;j++)
{
    if(la[j]>la[j+1])
        {vozr=0; neub=0;}
    else
    {
    if(la[j]<la[j+1])
    {ub=0;nevozr=0;}
    else
    {vozr=0;ub=0;}
    }
}
 
if(ub) printf("Ubivayshii ");
if(vozr) printf("Vozrastayshii ");
if(neub) printf("neubibaushii ");
if(nevozr) printf("nevozrastaushii ");
if(!ub&&!vozr&&!neub&&!nevozr) printf("Neuporadochennii");
 
}
 
 
int main(void) {
 
int i,m,k;
int *ptr;
 
printf("Put lenght of array\n");
scanf("%d",&i);
printf("\nlengt is %d\n",i);
 
ptr=(int*)malloc(i*sizeof(int));
 
for(k=0;k<i;k++)
{
    printf("Enter ptr[%d]:",k);
    scanf("%d",&(ptr[k]));
}
printf("\n");
 
outarray(i,ptr);
 
free(ptr);
return 0;
 
}
1
0 / 0 / 0
Регистрация: 05.11.2010
Сообщений: 9
12.11.2010, 20:02  [ТС]
Народ,а может у кого есть другой вариант решения,а то у меня че то она не пашит(((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.11.2010, 20:02
Помогаю со студенческими работами здесь

Рекурсивная функция, логически проверяющая, что массив упорядочен по возрастанию
Здравствуйте) Помогите, пожалуйста) Написать рекурсивную логическую функцию, которая проверяет что массив который передается в функцию...

Сформировать массив, который упорядочен по возрастанию и представляет операцию разности с элементами массивов
Даны два целочисленных одномерных массива. Сформировать третий одномерный массив на основе данных, который упорядочен по возрастанию и...

Удалить из массива минимальное количество элементов, чтобы массив стал упорядочен по возрастанию
Всем добрый день Задача Дан массив чисел, необходимо удалить из данного массива минимальное количество элементов, чтобы массив стал...

Оставить массив без изменения, если он упорядочен по невозрастанию или по неубыванию
Дан целочисленный массив Н(30). Оставить его без изменения, если он упорядочен по невозрастанию или по неубыванию; в противном случае...

Массив L[N] – упорядочен по возрастанию, массив Y[N]- упорядочен по убыванию. Сформировать массив Z из элементов массива
Массив L – упорядочен по возрастанию, массив Y- упорядочен по убыванию. Сформировать массив Z из элементов массива L и Y, упорядочив их по...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru