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

С++ в чем ошибка (действия с последовательностью по условию) - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Необходимо переделать функцию http://www.cyberforum.ru/cpp-beginners/thread717954.html
Подскажите, пожалуйста, весь инет обгуглил, подобного не нашёл. Есть такой код - #include <iostream> #include <cstdlib> using namespace std; double &f(void) {
C++ про ссылки, нигде не нашёл Подскажите, пожалуйста, весь инет обгуглил, подобного не нашёл. Есть такой код - #include <iostream> #include <cstdlib> using namespace std; double &f(void) { http://www.cyberforum.ru/cpp-beginners/thread717943.html
C++ Сформировать класс (посылки),отвечающий предложенным требованиям и продемонстрировать его использование
Пожалуйста пожалуйста пожалуйста помогите девушке с заданием :gcray: Сформировать класс ,отвечающий предложенным требованиям и продемонстрировать его использование(данные могут вводится и с клавиатуры и с из файла).Показать ситуации в которых необходимо использование ключевого слова this. Переменные экземпляра ,класса,константы и переменные readonly: номер посылки; вес посылки;
Найти минимум функции на отрезке [a, b] C++
В общем, я имею такое задание: На интервале с точностью e(e>0) определить значение одного корня уравнения cos(2/x)*sin(x)+1=0 Определить минимальное значение функции на интервале . Реализовать диалог. Поиск корня уравнения осуществлять с помощью метода касательных. Часть кода по поиску x реализовал, но вот как найти минимум не знаю. Как вариант, можно использовать проверку функции на...
C++ задача по РГР (Подсчитать длину самой длинной последовательности чисел одного знака) http://www.cyberforum.ru/cpp-beginners/thread717896.html
Считать из файла целочисленный массив А. Подсчитать длину самой длинной последовательности чисел одного знака. Например, для массива 1, 4, 6, -3, -11,-6, -32, -4, 1, 90, -44, 7 искомая длина равна 5 (в примере эта последовательность выделена жирным шрифтом). Нужно выделить цветом эту последовательность. Долго мучался с условием, счет из файла не нужен, только та часть кода, которая делает...
C++ Составить класс для работы с целочисленной матрицей размера 3х3. Составить класс для работы с целочисленной матрицей размера 3х3. Включить саму матрицу во внутреннюю часть класса. Во внешней части задать и реализовать следующие функции: -функцию заполнения матрицы случайными числами в диапазоне 0-100; -функцию вычисления и выдачи суммы всех элементов матрицы; -функцию выдачи элемента матрицы, который определяется передаваемыми аргументами-индексами. В... подробнее

Показать сообщение отдельно
Akbash
0 / 0 / 0
Регистрация: 30.07.2012
Сообщений: 38
03.12.2012, 20:49  [ТС]     С++ в чем ошибка (действия с последовательностью по условию)
Цитата Сообщение от Kuzia domovenok Посмотреть сообщение
Если k один раз установилась в false её нельзя больше ни при каких условиях устонавливать в тру, даже если оставшаяся часть последовательности упорядочена, а значит переписать надо так

C++
1
2
3
4
5
6
7
8
k=e=true;
for(i=0; (i<=n-1)&&(k||e); ++i)//цикл пока i<n и пока не найдено нарушение монотонности
{
  if (k)                               //только если нарушения невозрастания ещё небыло обнаружено
     if (a[i]>a[i+1]) k=false;   //проверяем очередную пару
  if (e)
    if (a[i]<a[i+1]) e=false;
}
не работает все равно (

Добавлено через 17 минут
подправил немного код по совету Kuzia domovenok:
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
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#define n 5
 
int main()
{int i,a[n],ar[n],t,l;
bool k,e;
cout<<"vvedite el-ti"<<endl<<endl;
for (i=0; i<=n-1;i++)
  {cout<<"a["<<i<<"]= ";
   cin>>a[i];
  }
 
k=e=true;
for(i=0; (i<=n-1)&&(k||e); ++i)//öèêë ïîêГ* i<n ГЁ ïîêГ* Г*ГҐ Г*Г*éäåГ*Г® Г*Г*ðóøåГ*ГЁГҐ ìîГ*îòîГ*Г*îñòè
   {if (a[i]<a[i+1])
       k=false;
    if (a[i]>a[i+1])
       e=false;
   }
 
cout<<endl<<"K = "<<k<<endl<<endl;
cout<<endl<<"E = "<<e<<endl<<endl;
if (k) {
   cout<<endl<<"po vozrastaniyu: "<<endl<<endl;
   for (i=0; i<=n-1;i++)
       cout<<a[i]<<" ";
       } 
if (e) {
   cout<<endl<<"po ubivaniyu: "<<endl<<endl;
       for (i=0; i<=n-1;i++)
       cout<<a[i]<<" ";
       }
 
/*if(!k && !e) {
for (int i=0; i<=n-1; i++)
        {
          if (a[i]%4!= 0)
           {
            ar[t]=a[i];
            t++;
            }
        }
l=t;
cout << endl << "Novaya posled-nost': " << endl;
    for (int i=0; i<l-1; i++)
        cout << ar[i] << " ";
    cout << endl; }*/
getch();
}
вторую часть кода пока вырубил.
что получаю:
ввожу 1 2 3 4 5
выводит к=0 Е=1
1 2 3 4 5 хотя должен вывести К=1 Е=0, если ввести 5 4 3 2 1 то все наоборот, но если при всем при этом, подключить оставшуюся часть проги, то все данные опять выводятся не правильно!!
 
Текущее время: 18:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru