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

меняется знак - C++

Восстановить пароль Регистрация
 
tohir_91
0 / 0 / 0
Регистрация: 06.06.2012
Сообщений: 52
17.12.2012, 13:15     меняется знак #1
дано последовательность ненулевых целых чисел, оканчивиющая нулем. Определить, скоклко раз в этой после.ности меняет знак.
10, -4, 12, 2, -3, 0. Знак меняется 3 раза
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
17.12.2012, 13:15     меняется знак
Посмотрите здесь:

Определить сколько раз меняется знак в последовательности C++
C++ имеется последовательность чисел содержащая n элементов, определить сколько раз в ней меняется знак
Разработать программу,которая определяет сколько раз меняется знак заданной целочисленной последовательности C++
C++ Определить, сколько раз в последовательности меняется знак.
Определить, сколько раз в последовательности меняется знак числа C++
Определить, сколько раз во введенной последовательности меняется знак при переходе к следующему элементу C++
C++ Определить, сколько раз меняется знак в последовательности чисел, введенных с клавиатуры, применив массив
Определить сколько раз меняется знак в последовательности чисел C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
haskile
 Аватар для haskile
0 / 0 / 0
Регистрация: 17.12.2012
Сообщений: 17
17.12.2012, 13:28     меняется знак #2
Понятно, что происходит? Или объяснять?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
 
int main()
{
    int prev, curr;
    int ans = 0;
    
    std::cin >> prev >> curr;
    while (curr != 0)
    {
        if (prev*curr < 0) // если у них разный знак
            ans++;
        prev = curr;
        std::cin >> curr;
    }
    std::cout << ans;
    return 0;
}
Пaтрик
 Аватар для Пaтрик
394 / 387 / 38
Регистрация: 21.01.2012
Сообщений: 972
Завершенные тесты: 1
17.12.2012, 13:34     меняется знак #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
 
template < typename T >
int func(T *first, T *last)
{
    int ret_val = 0;
    T *next = first + 1;
    while (next < last)
    {
        if ((*first > 0 && *next < 0) || (*first < 0 && *next > 0))
            ret_val++;
        ++next;
        ++first;
    }   
    return ret_val;
}
 
int main()
{
    const size_t size = 6;
    int array[size] = { 10, -4, 12, 2, -3, 0 };
    std::cout << func<int>(array, array + size) << std::endl;
}
Yandex
Объявления
17.12.2012, 13:34     меняется знак
Ответ Создать тему
Опции темы

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