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

закрытие консоли

22.09.2012, 20:14. Просмотров 1232. Ответов 3
Метки нет (Все метки)

в чем допущена оплошность:требуется ввести размер матрицы,вводим допустим 5,происходит вывод на экран,далее следует выбор: удалить одну строку(выбираем 1) либо удалить несколько( выбираем 2).допустим вводим 1.Следует вопрос "какую строку удалить".вводим к примеру 3....происходит выполнение ,но за доли секунды консоль закрывается,хоть есть "торможение" и system("PAUSE") было и getc(stdin) и тд.
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
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#pragma laba
#include <iostream>
#include <time.h>
#include <cstdlib>
 
using namespace std;
 
void delete_array(int** array, int size, int line1, int line2);
void delete_array(int** array, int size, int line_n);
void print_array(int** array, int size);
int** create_array(int size);
#pragma lr
int main()
{
            srand(time(NULL));
            int act,size,n;
            //cout <<     ("Введите размер матрицы - ");
            cin >> size;
            cout << endl;
            int** array = create_array(size);
            print_array(array,size);
     
            int line_n, line1, line2;
          //cout << ("Выберите действие: \n1 - Удалить одну строку.\n2 - Удалить несколько строк.");
            cin >> act;
            switch (act)
            {
                    case 1:// cout << ("Какую удалить строку? ");
                            cin >> line_n;
                            delete_array(array, size, line_n);
                            print_array(array, size); break;
                    case 2:// cout << rus("С какой строки удалять? ");
                            cin >> line1;
                            //cout << rus("До какой строки удалять? ");
                            cin >> line2;
                            delete_array(array, size, line1, line2);
                            print_array(array, size); break;
                    default: cout << "TP";// cout << rus("Нет такого действия!");getch();return 0;
            }
     
     
 
            return 0;
    }
    int** create_array(int size)
    {
            int **array = new int* [size];
            for (int i = 0; i < size; i++)
            {
                    array[i] = new int[size];
                    for (int j = 0; j < size; j++)
                    {
                            array[i][j] = rand()%100;
                    }
            }
       return array;
    }
    void print_array(int** array, int size)
    {
            for (int i = 0; i < size; i++)
            {
                    for (int j = 0; j < size; j++)
                            cout << array[i][j] << "\t";
            cout << endl << endl;
            }
         cout <<"________________________________________________\n";
    }
    void delete_array(int** array, int size, int line_n)
    {
            for (int i = line_n; i < size; i++)
            {
                    for (int j = 0; j < size; j++)
                    {
                            array[i-1][j]=array[i][j];
                    }
            }
     
            for (int i = 0; i < size; i++)
            {
                    array[size-1][i]=0;
            }
    }
    void delete_array(int** array, int size, int line1, int line2)
    {
     
       
        int d = line2 - line1+1;
        for(int i = line1; i<=line2; i++)
        {
            for(int j=0; j<size; j++)
                array[i][j] = array[i+d][j];
        }
     
        for(int i = line2+1; i<size; i++)
        {
            for(int j =0; j<size; j++)
            {
                array[i][j] = 0;
                        }
        }
     
       std::cin.get();
            //cin.get();
 
    }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.09.2012, 20:14
Ответы с готовыми решениями:

закрытие консоли
задание:Создать класс матрица Данный класс содержит указатель на float, размер...

Закрытие консоли
Дана непустая последовательность вещественных чисел оканчивающаяся числом...

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

Как запретить закрытие консоли?
Как запретить закрытие консоли? Подсказали, что для этого нужно использовать...

Остановить закрытие консоли по завершению работы программы
Работая на вижуал студие.Проблемы с getch менял на system pause,ничерта......

3
Nixy
ComfyMobile
400 / 281 / 34
Регистрация: 24.07.2012
Сообщений: 916
22.09.2012, 20:19 2
не там ты поставил функцию паузы
поставь на 42 строку
1
Alexandra777
0 / 0 / 0
Регистрация: 03.10.2011
Сообщений: 34
22.09.2012, 20:33  [ТС] 3
Цитата Сообщение от Nixy Посмотреть сообщение
не там ты поставил функцию паузы
поставь на 42 строку
как ни странно,но исход тот же
0
Nixy
ComfyMobile
400 / 281 / 34
Регистрация: 24.07.2012
Сообщений: 916
22.09.2012, 20:43 4
C++
1
    system("pause");
на 42 строке и все будет ок
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.09.2012, 20:43

Задержать закрытие окна консоли после выполнения программы
Какой командой задержать экран C++ после выполнения программы, а то он сразу...

Как убрать управляющие клавиши(закрытие, сворачивание, разворачивание) в консоли?
Очень важная тема

Клавиши F1-F12 в консоли, и работа с мышкой в консоли
Я искал на сайте, но не нашел упоминания о том как обрабатывать и или узнавать...


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

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

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