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

Выяснить образуют ли элементы массива убывающую последовательность - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.78
qretik
1 / 1 / 0
Регистрация: 24.10.2012
Сообщений: 132
07.12.2012, 21:07     Выяснить образуют ли элементы массива убывающую последовательность #1
Дан массив целых чисел Y[N]. Выяснить образуют ли элементы массива убывающую последовательность.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2012, 21:07     Выяснить образуют ли элементы массива убывающую последовательность
Посмотрите здесь:

Сортировка, или нет? (Вывести индексы массива в том порядке, в котором соответствующие им элементы образуют убывающую последовательность) C++
Visual Studio: Вывести номера столбцов матрицы, элементы которых образуют монотонно убывающую или монотонно возрастающую последовательность C++
C++ Проверить, образуют ли характеристики столбцов строго убывающую последовательность.
Определить, представляют ли элементы введенного с клавиатуры массива убывающую последовательность C++
Проверить, образуют ли элементы ненулевого массива знакочередующуюся последовательность C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Krugera
23 / 23 / 1
Регистрация: 14.11.2011
Сообщений: 112
07.12.2012, 22:46     Выяснить образуют ли элементы массива убывающую последовательность #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
25
26
#include "stdafx.h"
#include <iostream.h>
int main(int argc, char* argv[])
{
    int n;
    int mas=0;
    cout<<"vvedite kolicshestvo elementov";
    cin>>n;
    int *arr=new int [n];
    for(int i=0;i<n;i++){
        cin>>arr[i];
    }
    mas=arr[0];
    for(i=0;i<n;i++){
        if(mas>arr[i]){
        mas=arr[i];
        }
        if(mas<arr[i]){
        cout<<"ne ubivaushz pocsledovatelnost";
        break;
        }
    }
    if(mas>arr[i])
cout<<"ubivausha9 posledovatelnost"<<endl;
        return 0;
}
I.M.
 Аватар для I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
07.12.2012, 22:53     Выяснить образуют ли элементы массива убывающую последовательность #3
Krugera, не скомпилится. В 14 и 23 строках необъявленная переменная i
Krugera
23 / 23 / 1
Регистрация: 14.11.2011
Сообщений: 112
07.12.2012, 22:56     Выяснить образуют ли элементы массива убывающую последовательность #4
В 14 строке переменная уже объявлялась в строке 10, а та что в 23- объявлялась в 6. Разве нет?
I.M.
 Аватар для I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
07.12.2012, 22:57     Выяснить образуют ли элементы массива убывающую последовательность #5
Krugera, нет. Область видимости переменной из 10 строки заканчивается на 12.
На 23 строке тоже i
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
07.12.2012, 22:58     Выяснить образуют ли элементы массива убывающую последовательность #6
Krugera, та, что объявлена в 14 строке, действует только в области видимости блока цикла, т.е. ее нельзя использовать где-то вне цикла.
Krugera
23 / 23 / 1
Регистрация: 14.11.2011
Сообщений: 112
07.12.2012, 22:58     Выяснить образуют ли элементы массива убывающую последовательность #7
Странно, потому как у меня программа запускается, но раз вы говорите, я изменю.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11836 / 6815 / 770
Регистрация: 27.09.2012
Сообщений: 16,898
Записей в блоге: 2
Завершенные тесты: 1
07.12.2012, 23:00     Выяснить образуют ли элементы массива убывающую последовательность #8
Цитата Сообщение от Krugera Посмотреть сообщение
В 14 строке переменная уже объявлялась в строке 10
область видимости первой переменной i ограничена циклом for

Добавлено через 40 секунд
Цитата Сообщение от Krugera Посмотреть сообщение
Странно, потому как у меня программа запускается, но раз вы говорите, я изменю.
У Вас старый компилятор, поэтому и запускается
Krugera
23 / 23 / 1
Регистрация: 14.11.2011
Сообщений: 112
07.12.2012, 23:16     Выяснить образуют ли элементы массива убывающую последовательность #9
Стараюсь переписать программу,но теперь возникает проблема в строке 23.
При написании вместо 23 строки
C++
1
2
3
if(mas>arr[n]){
cout<<"ubivausha9 posledovatelnost"<<endl;
    }
при подсчете не убывающей последовательности элементов выдает и что они убывают и что не убывают.При подсчете убывающих все нормально, как правильно исправить?
Про ошибку не видимости переменной после цикла спасибо - не знал . Только учусь.
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
07.12.2012, 23:21     Выяснить образуют ли элементы массива убывающую последовательность #10
я последовательность строго убывающей должна быть, или нет?
Krugera
23 / 23 / 1
Регистрация: 14.11.2011
Сообщений: 112
07.12.2012, 23:23     Выяснить образуют ли элементы массива убывающую последовательность #11
Переписал код, сейчас наверное должно на всех компиляторах работать верно:
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
#include "stdafx.h"
#include <iostream.h>
int main(int argc, char* argv[])
{
    int n;
    int mas=0;
    cout<<"vvedite kolicshestvo elementov";
    cin>>n;
    int *arr=new int [n];
    for(int i=0;i<n;i++){
        cin>>arr[i];
    }
    mas=arr[0];
    for(int j=0;j<n;j++){
        if(mas>arr[j]){
        mas=arr[j];
        }
        if(mas<arr[j]){
        cout<<"ne ubivaushz pocsledovatelnost"<<endl;
        break;
        }
    }
    if(mas==arr[n-1]){
cout<<"ubivausha9 posledovatelnost"<<endl;
    }
        return 0;
}
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
07.12.2012, 23:27     Выяснить образуют ли элементы массива убывающую последовательность #12
Я тоже код написал, только для случая, если последовательность не строго убывающая:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <algorithm>
#include <functional>
 
int main()
{
    int a[100], b[100], n;
    std::cin >> n;
     for (int i=0; i<n; ++i)
     {
         std::cin >> a[i];
         b[i] = a[i];
     }
 
    std::sort (b, b+n, std::greater<int> ());
    std::cout << (std::equal (a, a+n, b) ? "YES" : "NO");
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.12.2012, 23:44     Выяснить образуют ли элементы массива убывающую последовательность
Еще ссылки по теме:

C++ Проверить, образуют ли элементы массива знакочередующуюся последовательность
Образуют ли элементы ненулевого массива знакочередующуюся последовательность C++
C++ Добавить вектор-столбец после всех столбцов, элементы которых образуют убывающую последовательность

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

Или воспользуйтесь поиском по форуму:
qretik
1 / 1 / 0
Регистрация: 24.10.2012
Сообщений: 132
07.12.2012, 23:44  [ТС]     Выяснить образуют ли элементы массива убывающую последовательность #13
Фух, спасибо вам, завтра кр, учу коды.
Yandex
Объявления
07.12.2012, 23:44     Выяснить образуют ли элементы массива убывающую последовательность
Ответ Создать тему
Опции темы

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