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

Обьясните что происходит в данной функцие - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ BigInt, взятие степени http://www.cyberforum.ru/cpp-beginners/thread1086543.html
Добрый день столкнулся с такой задачей: необходимо получать значения чисел при возведении их к большим степеням ( например 2 ^ 100000 ). Для этих целей я нашел исходники класса BigInt. Он отлично и быстро возносит в степень (...
C++ Простейшая программа, вывод на экран суммы, разности двух чисел. Ошибка Пишу свою вторую программу на C++, Программа просит пользователя ввести два числа, получает числа от пользователя и затем печатает сумму, произведение, разность и частное этих чисел. Проблема: При компилировании ошибок не найдено, но в командной строке вывод на экран не производится либо производится, но окно скрывается. Соответствующий раздел на форуме читал, не вижу собственной ошибки.... http://www.cyberforum.ru/cpp-beginners/thread1086541.html
Даны действительные числа a1, ., a15. Все члены данной последовательности, начиная с первого положительного, уменьшить на 1 C++
Даны действительные числа a1, ..., a15. Все члены данной последовательности, начиная с первого положительного, уменьшить на 1.
Вывести сумму номеров двух крупнейших элементов, а в массиве соответствующие элементы заменить 0 C++
Вывести сумму номеров двух крупнейших элементов, а в массиве соответствующие элементы заменить 0
C++ Напишите функцию, циклически сдвигающую значения элементов массива http://www.cyberforum.ru/cpp-beginners/thread1086535.html
Напишите функцию, циклически сдвигающую значения элементов массива данных типа float в направлении конца. Количество элементов массива передаётся в функцию как параметр. Есть программа: #include <iostream> #include <string> using namespace std; void watch(float arr, int size); void func(float arr, int size); int main(){ const int S = 10; float arr = {0,1,2,3,4,5,6,7,8,9};
C++ Сократить код. Задача про туриста всем привет есть задача Турист (Время: 1 сек. Память: 16 Мб Сложность: 22%) Гена собирается на туристический слет учеников своей школы. В своем классе он был назначен ответственным за палатки. У себя дома он нашел 3 палатки: первая из них весит a1 килограмм и вмещает b1 человек, вторая весит a2 килограмм и вмещает b2 человек, третья весит a3 килограмм и вмещает b3 человек. В классе Гены... подробнее

Показать сообщение отдельно
Outmee
 Аватар для Outmee
2 / 2 / 0
Регистрация: 26.01.2014
Сообщений: 56
31.01.2014, 21:24  [ТС]     Обьясните что происходит в данной функцие
Цитата Сообщение от Catstail Посмотреть сообщение
- не всегда... Умножение может вызвать переполнение. Лучше использовать signum

Добавлено через 1 минуту
Outmee, анализ кода правильный (подсчет числа смены знаков), но сам код плохой - переменная temp на первом витке цикла не инициализирована.
Да, я учёл все это.
Кому интересно вот что вышло

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
#include <iostream>
 
using namespace std;
 
int main()
{
    setlocale(LC_ALL, "Russian");
 
    int count = 0;
    int num;
    int tempnum = 0;
    int shag=0;
 
    do
    {
        cout << "Введите число " << endl;
        cin >> num;
        if ((tempnum > 0 && num < 0) || (tempnum < 0 && num > 0))
            count++;
        
        tempnum = num ;
            
        shag++;
        
    } 
    while (shag < 6);
    
    cout << "Знак поменялся " << count << " раз" << endl;
    system("pause");
    return 0;
}
Спасибо господа.
 
Текущее время: 13:56. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru