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

Почему не работает программа при некоторых входных данных - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ hello world 10 раз http://www.cyberforum.ru/cpp-beginners/thread627681.html
нужен вывести hello world 10 раз через for и while.как это сделать я не знаю. printf 10 раз не подходит
C++ Выполнение консольных команд в программе Приветствую! Заранее сори за абстракцию вопроса. Есть интерпретатор int.exe через консоль с ним можно взаимодействовать следующим образом: int.exe Теперь стала задача использовать его в программе на c++, т.е. надо решить каким образом его вобще подключать. Результат выполнения как я понял можно просто в буфер закинуть. Но как корректно подключить этот .exe и обращаться к нему из... http://www.cyberforum.ru/cpp-beginners/thread627668.html
C++ Написать алгоритм по блок-схеме
Добрый день! Начал ходить на компьютерные курсы ,заболел и пропустил 2 недели. Препод задал дом. задание и у меня вопрос. Как на языке С++ отобразить когда да . а когда нет файлик примера вложил Помогите пожалуйста)
Преобразование символьной переменной в целочисленную C++
char slovo="chislo"; int chislo=12345; Как сделать, чтобы символы "chislo" воспринималось как переменная chislo.
C++ Определение введенного типа http://www.cyberforum.ru/cpp-beginners/thread627587.html
Задался вопросом как сделать так чтоб программа определила вводимый тип. Тоесть программа требует чтоб пользователь ввел число - а после выводит на экран тип этого числа. Можно конечно было б сделать с использованием if, но как то это не кошерно :). Поэтому я решил использовать перезагрузку функций. Но вот что передать функции я не знаю :(. Пожалуйста помогите. Заранее спасибо. #include...
C++ Как вызвать функцию из функции main? работаю в деве. предположим я создал проект, изначально в нем находится файл main.cpp. предположим я создал в нем еще один файл с именем func.cpp и описал там функцию int xxx(int), а как теперь мне вызвать эту функцию из main.cpp? подробнее

Показать сообщение отдельно
Endiff
 Аватар для Endiff
30 / 30 / 1
Регистрация: 19.05.2012
Сообщений: 67
23.07.2012, 18:39     Почему не работает программа при некоторых входных данных
Была ошибочка в цикле с *max, ты сбавлял адрес у min. И еще проверочки не было на выход за пределы.
Насчет ошибки в цикле - из-за неё вся проблема. Представь что первое неотрицательное число - первое значение. А последнее неотрицательное - не последнее число. В цикле ты сбавлял адрес минимального, а оно уже выходило за пределы массива. И хрен знает, что оно там проверяло.
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
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
 
int main()
{
    const int size = 10;
    int arr[size];
    int n, a, z;
    int *max, *min;
    
    a = 0;
    z = size - 1;
    
    min = arr;
    max = &arr[z];
    
    srand((unsigned)time(NULL)); rand(); rand();
    
for (n = 0; n < size; n++) {
        arr[n] = rand() % 10 - 5;
        cout << arr[n] << ", ";
    }
 
    cout << endl << endl;
 
    while (*min < 0) {
        if(a >= size) break;
        min++;
        a++;
    }
    
    while (*max < 0) {
        if(z == 0) break;
        max--;
        z--;
    }
    
    cout << a + 1 << " " << z + 1 << "\n";
    
    return 0;
}
 
Текущее время: 17:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru