Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
gracia46
0 / 0 / 0
Регистрация: 10.09.2014
Сообщений: 11
1

Программа сразу после ввода закрывается

20.09.2014, 18:29. Просмотров 1202. Ответов 15
Метки нет (Все метки)

Ввела код
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
{
    int buf;
    
int a[10];
    int n,i;
    cin >> n;
    for (int i=0; i<n; i++)
        {
            cout<<"["<<i+1<<"]"<<":";
            cin>>a[i];
    }
    for (int i=0; i<n; ++i)  
        cout<<a[i];
 
for(int i=n-1;i>=0;i--)
 
if (a[i]<0)
{
buf=a[i];
for(int j=i;j>0;j--)
a[i]=a[i-1];
a[0]=buf;
}
 
for(int i=0;i<n;i++)
cout<<a[i]<<' ';
 
    return 0;
}
Ошибок не показывает,но экран после ввода массива результат не держит,консоль закрывается.
Не успеваю увидеть.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.09.2014, 18:29
Ответы с готовыми решениями:

Программа закрывается сразу после отработки
программа готова. Запускаю компилятор. Программа выполнена правильно, но окно...

После выполнения программа сразу закрывается и не даёт увидеть результат
После выполнения программа сразу закрывается и не даёт увидеть результат если...

После выполнения алгоритма программа сразу закрывается - как исправить?
дела такое: (циклический алгоритм, задача с матрицами) программа запускается в...

Программа закрывается после ввода массива
Доброго времени суток, помогите, пожалуйста, поправить код. Опыт...

Почему после ввода переменной программа закрывается?
#include&lt;iostream&gt; using namespace std; int main() { int n,...

15
GetHelp
60 / 61 / 11
Регистрация: 27.02.2013
Сообщений: 1,112
20.09.2014, 18:31 2
Лучший ответ Сообщение было отмечено gracia46 как решение

Решение

во 1 код оформлять тегами надо, во 2 cin.get() перед return добавь
1
inst_mefi
22 / 25 / 11
Регистрация: 10.10.2013
Сообщений: 165
20.09.2014, 19:14 3
gracia46, либо перед return добавляй функцию ввода, либо system("pause");
1
gracia46
0 / 0 / 0
Регистрация: 10.09.2014
Сообщений: 11
20.09.2014, 19:19  [ТС] 4
Что значит тэгами?
Добавить так
C++
1
2
3
4
5
6
......... 
for(int i=0;i<n;i++)
    cout<<a[i]<<' ';
    cin.get();
    return 0;
}
0
inst_mefi
22 / 25 / 11
Регистрация: 10.10.2013
Сообщений: 165
20.09.2014, 19:21 5
Цитата Сообщение от gracia46 Посмотреть сообщение
Что значит тэгами?
так
C++
1
2
3
4
for(int i=0;i<n;i++)
cout<<a[i]<<' ';
cin.get();
return 0;
0
ValeryS
Модератор
7314 / 5557 / 704
Регистрация: 14.02.2011
Сообщений: 18,837
20.09.2014, 19:21 6
Цитата Сообщение от gracia46 Посмотреть сообщение
Что значит тэгами?
это значит
выделить текст своей программы
и нажать кнопочку(сверху) С++ (С)
и получится вот что
C++
1
2
3
4
5
for(int i=0;i<n;i++)
 cout<<a[i]<<' ';
 cin.get();
 return 0;
 }
0
gracia46
0 / 0 / 0
Регистрация: 10.09.2014
Сообщений: 11
20.09.2014, 19:35  [ТС] 7
Спасибо за помощь.Но сейчас он выводит один массив вводимый,сразу новый массив и еще раз только порядок отрицательных элементов меняет местами.Почему?

Добавлено через 4 минуты
у меня нет такой кнопочки или я не знаю где ее искать.
0
inst_mefi
22 / 25 / 11
Регистрация: 10.10.2013
Сообщений: 165
20.09.2014, 19:36 8
gracia46, потому что вы так написали в программе(очевидный ответ). Компьютер тупой, он делает то, что написано в программе, а не домысливает за вас. В чем проблема?
0
inst_mefi
22 / 25 / 11
Регистрация: 10.10.2013
Сообщений: 165
20.09.2014, 19:38 9
Вот, посмотрите.
0
Миниатюры
Программа сразу после ввода закрывается  
gracia46
0 / 0 / 0
Регистрация: 10.09.2014
Сообщений: 11
20.09.2014, 19:48  [ТС] 10
Что-то и код работает неправильно
0
ValeryS
Модератор
7314 / 5557 / 704
Регистрация: 14.02.2011
Сообщений: 18,837
20.09.2014, 19:53 11
Цитата Сообщение от gracia46 Посмотреть сообщение
Что-то и код работает неправильно
а что нужно то?
Цитата Сообщение от gracia46 Посмотреть сообщение
C++
1
2
for(int j=i;j>0;j--)
a[i]=a[i-1];
зачем здесь цикл по j?
0
gracia46
0 / 0 / 0
Регистрация: 10.09.2014
Сообщений: 11
20.09.2014, 19:53  [ТС] 12
Вот так? эту кнопку нашла,спасибо.
Ошибки в программе ищу.
Отрицательные элементы должны переместиться в начало,а выходит два массива и не все элементы перемещаются.

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
#include "stdafx.h"
#include "iostream"
using namespace std;
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    int buf;
    int a[10];
    int n,i;
    cin >> n;
    for (int i=0; i<n; i++)
        {
            cout<<"["<<i+1<<"]"<<":";
            cin>>a[i];
    }
    for (int i=0; i<n; ++i)
        cout<<a[i];
    cout<<"    "<<"  ";
    
    for(int i=n-1;i>=0;i--)
        if (a[i]<0)
{       
    buf=a[i];
    for(int j=i;j>0;j--)
    {
    a[i]=a[i-1];
    a[0]=buf;
    }
    for(int i=0;i<n;i++)
    cout<<a[i]<<' ';
    cin.get();
}           
    return 0;
}
0
ValeryS
Модератор
7314 / 5557 / 704
Регистрация: 14.02.2011
Сообщений: 18,837
20.09.2014, 19:54 13
Цитата Сообщение от gracia46 Посмотреть сообщение
Отрицательные элементы должны переместиться в начало,а выходит два массива и не все элементы перемещаются.
может тебе сортировку сделать?
0
gracia46
0 / 0 / 0
Регистрация: 10.09.2014
Сообщений: 11
20.09.2014, 20:07  [ТС] 14
Да..при копировании видимо осталась.
Но как расставить фигурные скобки..экран опять исчезает.

Добавлено через 2 минуты
Да...что-то неправильно...происходит выборочная замена.
Я не знаю как сортировку делать...
0
inst_mefi
22 / 25 / 11
Регистрация: 10.10.2013
Сообщений: 165
20.09.2014, 20:34 15
Лучший ответ Сообщение было отмечено gracia46 как решение

Решение

gracia46, если без сортировки
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int j=0;
for(auto i=0; i<N;i++)//N - размер массива
if(a[i]<0) //a - исходный массив b - второй массив
{
b[j]=a[i];
j++;
}
for(int i; i<N;i++)
if(a[i]>=0)
{
b[j]=a[i];
j++;
}
1
gracia46
0 / 0 / 0
Регистрация: 10.09.2014
Сообщений: 11
20.09.2014, 21:13  [ТС] 16
Огромное всем спасибо! получилось!
0
20.09.2014, 21:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.09.2014, 21:13

Программа компилируется, но после ввода данных просто закрывается
Программа компилируется,но после ввода номера дня она просто закрывается....

После ввода первой строки программа дает ошибку и закрывается
#include&lt;iostream&gt; #include&lt;cstring&gt; #include&quot;stdio.h&quot; using namespace std;...

После ввода данных программа закрывается, не показав ответ (Dev C++)
Ребят помогите!!!! работаю в dev c++, после ввода суммы просто закрывает...


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru