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

Подсчитать количество перемен знака в последовательности целых чисел - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Создать массив указателей на объекты всех трех классов. Для каждого объекта показать работу метода Show и среднего http://www.cyberforum.ru/cpp-beginners/thread703708.html
доделать нужно # include <iostream> using namespace std; class Student { public: char name; int Group; };
C++ Не могу разобраться с map(STL) Недавно понадобилось использование ассоциативного массива map(STL), дабы сократить код программы. Но возникли сложности. В кратце в программе несколько структур, функции и операции с файлами. При использовании map в структурах и функциях получаются некорректные результаты. При этом аналогичный код написаный в main работает без ошибок. В чем может быть ошибка? Как заставить работать map в... http://www.cyberforum.ru/cpp-beginners/thread703700.html
Загрузка элементов списка из файла C++
Элементы списка (однонаправленный или двунаправленный) содержат два информационных поля: идентификатор (id) - целое число; наименование (name) - строка (не более 255 символов). Помогите сделать загрузку элементов списка из текстового файла, в каждой строке которого указаны число (идентификатор), и через пробел набор символов (наименование). Добавлено через 23 часа 16 минут Есть идеи..?
C++ Составить программу, которая выводит на экран все символы, расположенные после первого символа'':''
С клавиатуры вводится строка. Составить программу, которая выводит на экран все символы, расположенные после первого символа'':'', подсчитывает количество предложений, содержащих нечетное количество слов, удаляет из текста слова, которые расположены после запятых. Помогите пожалуйста!=)
C++ футбол http://www.cyberforum.ru/cpp-beginners/thread703688.html
Помогите пожалуйста! задана итоговая таблица чемпионата по футболу, в котором участвовало 8 команд. Элементы таблицы, принадлежащие главной диагонали, равны нулю, а все остальные элементы равны 0, 1 или 3 (т.е. числу очков, набранных в игре: 0 — поражение, 1 — ничья, 3 — победа). Определить и вывести на экран количество очков, набранных каждой командой, максимальное число очков, все команды,...
C++ Найти произведение двух наибольших отрицательных чисел массива Найти произведение двух наибольших отрицательных чисел массива help pls, вечно беда получается какая-то.. #include<iostream> using namespace std; void main(){ int i,k,c,x,p=1; cout<<"enter mass\n"; for(i=0;i<10;i++) cin>>x; for(k=0;k<10;k++) подробнее

Показать сообщение отдельно
Leonman
 Аватар для Leonman
15 / 15 / 0
Регистрация: 17.06.2012
Сообщений: 266
20.11.2012, 22:22     Подсчитать количество перемен знака в последовательности целых чисел
Всем доброго времени суток!
Написал программу которая подсчитывает количество перемен знака в последовательности целых чисел.
Вот код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
using namespace std;
 
int main()
{  
  int N, count = 0;  
   cout << "How many elements?" << endl;  
  cin >> N;
  int arr[N];
  cout << "Plese enter the elemets" << endl;
  for (int i = 0; i < N; i++)
   cin >> arr[i];
  for (int i = 0; i < N; i++)
   if (arr[i] < 0 && arr[i+1] >= 0 || arr[i] >= 0 && arr[i+1] < 0)
    count++;
   cout << count << endl;   
system("PAUSE >> null"); 
}
Считает во многих случаях правильно, кроме случая, когда у меня числа: -1, 1, -1.
На выходе должно быть 2, то есть знак поменялся 2 раза, а вместо этого на выходе 3, не понимаю почему?
Если числа 1, -1, 1, то считает всё верно, на выходе 2.
Надеюсь на вашу помощь.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru